| Literature DB >> 30841592 |
Lorenzo Fernández Maimó1, Alberto Huertas Celdrán2, Ángel L Perales Gómez3, Félix J García Clemente4, James Weimer5, Insup Lee6.
Abstract
Medical Cyber-Physical Systems (MCPS) hold the promise of reducing human errors and optimizing healthcare by delivering new ways to monitor, diagnose and treat patients through integrated clinical environments (ICE). Despite the benefits provided by MCPS, many of the ICE medical devices have not been designed to satisfy cybersecurity requirements and, consequently, are vulnerable to recent attacks. Nowadays, ransomware attacks account for 85% of all malware in healthcare, and more than 70% of attacks confirmed data disclosure. With the goal of improving this situation, the main contribution of this paper is an automatic, intelligent and real-time system to detect, classify, and mitigate ransomware in ICE. The proposed solution is fully integrated with the ICE++ architecture, our previous work, and makes use of Machine Learning (ML) techniques to detect and classify the spreading phase of ransomware attacks affecting ICE. Additionally, Network Function Virtualization (NFV) and Software Defined Networking (SDN)paradigms are considered to mitigate the ransomware spreading by isolating and replacing infected devices. Different experiments returned a precision/recall of 92.32%/99.97% in anomaly detection, an accuracy of 99.99% in ransomware classification, and promising detection and mitigation times. Finally, different labelled ransomware datasets in ICE have been created and made publicly available.Entities:
Keywords: anomaly detection; cybersecurity; integrated clinical environments; medical cyber-physical systems; network function virtualization; ransomware classification; software-defined networking
Year: 2019 PMID: 30841592 PMCID: PMC6427746 DOI: 10.3390/s19051114
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Comparison of our work with other relevant proposals.
| Reference | Target | Context | Input | Technique | Traffic | Mitigation |
|---|---|---|---|---|---|---|
| [ | Ransomware | C&C Connections | IP Header | Blacklist | Cypher | SDN |
| [ | Ransomware | C&C Connections | HTTP length | Classifier | Plain | SDN |
| [ | Ransomware | C&C Connections | Netflows | Classifier | Cypher | – |
| [ | Malware | Mobile | HTTP & Netflows | Classifier | Plain | – |
| [ | Malware | Network | Netflows | Classifier | Cypher | – |
| [ | Ransomware | App execution | Syscalls | Classifier | Cypher | – |
| [ | Ransomware | Network | Netflows | Classifier | Cypher | – |
| Our solution | Ransomware | Integrated Clinic Environment | Netflows | Anomaly & Classifier | Cypher | SDN/NFV |
C&C: Command and Control; SDN: Software Defined Networking; NFV: Network Function Virtualization.
Figure 1Elements composing the integrated clinical environment (ICE) framework.
Figure 2Design of the proposed solution to detect, classify and mitigate ransomware in ICE.
Flow record fields obtained from the traffic captured.
|
Start time Flow duration (s) Protocol (UDP/TCP/ARP) Source IP Destination IP Source port Destination port Direction State |
Total packets Source packets Total bytes Source bytes Total load (bits/s) Source load (bits/s) Source inter-packet arrival time (msec) Destination inter-packet arrival time (msec) |
Figure 3Feature computation. Every time a new flow arrives, the flows received during the last 10 s are used to compute the aggregated features. The feature vector is created by assembling these aggregated features plus some additional ones obtained from this last flow. The feature is labelled as anomalous only if the last flow is anomalous.
TCP/UDP features computed from the network flows.
| Total Features | ARP | Last Flow 1 | TCP/UDP × | TCP/UDP × | Features |
|---|---|---|---|---|---|
| 11 | 1 | 2 | 8 | Number of flows. | |
| 8 | 8 | % of flows. | |||
| 18 | 2 | 16 | Mean and stddev of the flow durations. | ||
| 18 | 2 | 16 | Mean and stddev of time between two consecutive flows. | ||
| 8 | 8 | Number of different destination IPs. | |||
| 8 | 8 | Entropy of destination IPs. | |||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of total packets. | ||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of source packets. | ||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of total bytes. | ||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of source bytes. | ||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of total load. | ||
| 60 | 12 | 48 | Sum, max, min, mean, stddev and median of source load. | ||
| 16 | 16 | % of source/destination ports >1024. | |||
| 16 | 16 | % of source/destination ports <1025. | |||
| 16 | 16 | Number of different source and destination ports. | |||
| 16 | 16 | Entropy of source and destination ports. | |||
| 1 | 1 | Number of different destination IPs. | |||
| 1 | 1 | Entropy of destination IP. | |||
| 1 | 1 | Median of the duration. | |||
| 3 | 3 | Protocol used (TCP, UDP, ARP). | |||
| 4 | 4 | State (INT, RST, FIN, CON). | |||
| 2 | 2 | Source or destination port <1024. | |||
| 1 | 1 | Destination port. | |||
| 4 | 4 | Direction(incoming, outgoing, internal, external). | |||
| 8 | 8 | Total packets, source packets, total bytes, source bytes, load, source load, source mean interpacket arrival time and destination mean interpacket arrival time. | |||
|
|
| ||||
Extracted from the last flow; Computed per protocol; Computed per pair (protocol, direction).
Figure 4Design of the Offline Model Generation module to detect and classify ransomware in ICE.
Figure 5ICE++ architecture oriented to the Mobile Edge Computing (MEC) paradigm.
Figure 6Sequence diagram to mitigate a ransomware attack to a medical device.
Hyper-parameters tuned in the selection process of the the anomaly detection technique.
| Hyper-Parameter | List/Range of Values | |
|---|---|---|
| Flow Collector | window (s) | [5, 10, 20, 30, 60, 120] |
| OC-SVM | nu | [0.0001, 0.0005, 0.001, 0.005, 0.01] |
| gamma | [0.0001, 0.0005, 0.001, 0.005, 0.01] | |
| LOF | neighbours | [10, 20, 30, 50] |
| leaf size | [10, 20, 30, 40] | |
| contamination | [0.1, 0.05, 0.01, 0.005] | |
| IF | estimators | [100, 200, 300] |
OC-SVM: One-Class Support Vector Machine; LOF: Local Outlier Factor; IF: Isolation Forest.
Figure 7Performance of the best anomaly detection method configuration for each window size in the flow collector. The selected configuration for each method is the one that obtained the highest F1-score among all the configurations that properly detected at least 50% of each ransomware.
F1-Score, precision, recall and false positive ratio (FPR) values of OC-SVM for a sliding flow window size of 10 s.
| F1-Score | Precision | Recall | FPR |
|---|---|---|---|
| 0.9596 | 0.9232 | 0.9997 | 0.046 |
Hyper-parameters tuned in the ransomware classifier selection process.
| Hyper-Parameter | List/Range of Values | |
|---|---|---|
| Flow Collector | window (s) | [5, 10, 20, 30, 60, 120] |
| Feature Selection | importance | [0.001, 0.0005, 0.0002, 0.0001] |
| Neural Network | First layer | [8, 10, 16] |
| Second layer | [0, 4, 6] | |
| Gaussian Naive Bayes | no parameters | |
| Random Forest | estimators | [100, 200, 300] |
Classification accuracy of each model for different configurations of hyper-parameters and ransomware. C: Clean, W: WannaCry, P: Petya, B:BadRabbit, G: PowerGhost.
| Window Size | Feat. Sel. Threshold | Neural Network | Naive Bayes | Random Forest | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| C | W | P | B | G | C | W | P | B | G | C | W | P | B | G | ||
| 5 s | 0.0001 | 0.9997 | 1.0000 | 1.0000 | 0.9773 | 0.9991 | 0.9870 | 1.0000 | 1.0000 | 0.9975 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9798 | 0.9998 |
| 0.0002 | 0.9999 | 1.0000 | 1.0000 | 0.9748 | 0.9989 | 0.9871 | 1.0000 | 1.0000 | 0.9975 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9798 | 0.9985 | |
| 0.0005 | 0.9998 | 1.0000 | 1.0000 | 0.9572 | 0.9990 | 0.9900 | 1.0000 | 1.0000 | 0.9975 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9899 | 0.9998 | |
| 0.0010 | 1.0000 | 1.0000 | 0.9596 | 0.9723 | 0.9985 | 0.9839 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9924 | 1.0000 | |
| 10 s | 0.0001 | 0.9993 | 1.0000 | 1.0000 | 0.9923 | 1.0000 |
|
|
|
|
| 0.9999 | 1.0000 | 0.9773 | 0.9846 | 0.9998 |
| 0.0002 | 0.9994 | 1.0000 | 1.0000 | 0.9949 | 0.9997 |
|
|
|
|
| 0.9999 | 1.0000 | 0.9773 | 0.9871 | 0.9998 | |
| 0.0005 | 0.9988 | 1.0000 | 1.0000 | 0.9949 | 0.9990 |
|
|
|
|
| 0.9999 | 1.0000 | 0.9886 | 0.9949 | 0.9998 | |
| 0.0010 | 0.9995 | 1.0000 | 1.0000 | 0.9974 | 0.9979 | 0.9840 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9999 | 1.0000 | 0.9773 | 0.9923 | 1.0000 | |
| 20 s | 0.0001 | 1.0000 | 1.0000 | 0,9888 | 0.9811 | 1.0000 | 0.9970 | 1.0000 | 0.9875 | 0.9622 | 0.9999 | 1.0000 | 1.0000 | 0.9875 | 0.9703 | 0.9999 |
| 0.0002 | 1.0000 | 1.0000 | 1.0000 | 0.9703 | 1.0000 | 0.9985 | 1.0000 | 0.9750 | 0.9568 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9730 | 0.9999 | |
| 0.0005 | 1.0000 | 1.0000 | 1.0000 | 0.9919 | 1.0000 | 0.9961 | 1.0000 | 0.9875 | 0.9622 | 0.9999 | 1.0000 | 1.0000 | 0.9875 | 0.9730 | 0.9999 | |
| 0.0010 | 1.0000 | 1.0000 | 1.0000 | 0.9784 | 0.9999 | 0.9933 | 1.0000 | 0.9875 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9875 | 0.9784 | 0.9999 | |
| 30 s | 0.0001 | 0.9999 | 1.0000 | 1.0000 | 0.9945 | 0.9998 | 0.9986 | 1.0000 | 1.0000 | 0.9727 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9863 | 0.9999 |
| 0.0002 | 1.0000 | 1.0000 | 0,9885 | 0.9809 | 0.9999 | 0,9988 | 1.0000 | 1.0000 | 0.9781 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9809 | 0.9999 | |
| 0.0005 | 1.0000 | 1.0000 | 0.9885 | 0.9809 | 0.9899 | 0.9992 | 1.0000 | 1.0000 | 0.9891 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9836 | 0.9999 | |
| 0.0010 | 1.0000 | 1.0000 | 0.9885 | 0.9836 | 0.9999 | 0.9961 | 1.0000 | 0.9873 | 0.9727 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.9781 | 0.9999 | |
| 60 s | 0.0001 | 1.0000 | 1.0000 | 0.9880 | 0.6296 | 0.9999 | 0.9986 | 1.0000 | 0.8784 | 0.6866 | 0.9999 | 1.0000 | 1.0000 | 0.9865 | 0.9601 | 0.9999 |
| 0.0002 | 1.0000 | 0.9996 | 1.0000 | 0.4986 | 0.9999 | 0.9993 | 1.0000 | 1.0000 | 0.0000 | 0.9999 | 1.0000 | 1.0000 | 0.9865 | 0.9573 | 0.9999 | |
| 0.0005 | 1.0000 | 1.0000 | 1.0000 | 0.7949 | 0.9999 | 0.9996 | 1.0000 | 0.9324 | 0.3333 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.9601 | 0.9999 | |
| 0.0010 | 1.0000 | 1.0000 | 0.9880 | 0.6296 | 0.9999 | 0.9986 | 1.0000 | 0.8784 | 0.6866 | 0.9999 | 1.0000 | 1.0000 | 0.9865 | 0.9601 | 0.9999 | |
| 120 s | 0.0001 | 0.9999 | 1.0000 | 1.0000 | 0.6034 | 0.9999 | 0.9996 | 1.0000 | 0.9855 | 0.0170 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.2975 | 0.9999 |
| 0.0002 | 1.0000 | 1.0000 | 1.0000 | 0.7054 | 0.9999 | 0.9997 | 1.0000 | 0.9855 | 0.0170 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.3569 | 0.9999 | |
| 0.0005 | 1.0000 | 1.0000 | 1.0000 | 0.8895 | 0.9999 | 0.9999 | 1.0000 | 0.9855 | 0.0255 | 1.0000 | 1.0000 | 1.0000 | 1.0000 | 0.3173 | 0.9999 | |
| 0.0010 | 1.0000 | 1.0000 | 1.0000 | 0.9490 | 0.9999 | 0.9989 | 1.0000 | 0.9855 | 0.3201 | 0.9999 | 1.0000 | 1.0000 | 1.0000 | 0.3484 | 0.9999 | |
Deployment time of a new ICE Equipment Interface with a virtual medical device.
| Hardware | Container Deployment | Virtual Machine Deployment | OpenICE Instantiation and Configuration | ||
|---|---|---|---|---|---|
|
|
|
|
|
|
|
| Raspberry Pi 3 | 7.348 s | - | - | - | 8.537 s |
| Personal Computer | 0.460 s | 6.731 s | 7.164 s | 13.446 s | 2.802 s |
| Server | 0.314 s | 4.774 s | 5.902 s | 10.523 s | 2.120 s |
Worst and best cases of ransomware detection and mitigation times.
| Detection and Classification | Mitigation | Total | |
|---|---|---|---|
| Worst case | 10.022 s | 15.885 s | 23.468 s |
| Best case | 10.022 s | 2.434 s | 10.456 s |
Figure 8Comparison between the times required by the detection, mitigation and infection phases of ransomware. Detection and mitigation phases are running sequentially, whereas the infection phase goes in parallel to the previous two.