Learning-Guided Network Fuzzing for Testing Cyber-Physical System Defences
arXiv:1909.05410 · doi:10.1109/ASE.2019.00093
Abstract
The threat of attack faced by cyber-physical systems (CPSs), especially when they play a critical role in automating public infrastructure, has motivated research into a wide variety of attack defence mechanisms. Assessing their effectiveness is challenging, however, as realistic sets of attacks to test them against are not always available. In this paper, we propose smart fuzzing, an automated, machine learning guided technique for systematically finding 'test suites' of CPS network attacks, without requiring any knowledge of the system's control programs or physical processes. Our approach uses predictive machine learning models and metaheuristic search algorithms to guide the fuzzing of actuators so as to drive the CPS into different unsafe physical states. We demonstrate the efficacy of smart fuzzing by implementing it for two real-world CPS testbeds---a water purification plant and a water distribution system---finding attacks that drive them into 27 different unsafe states involving water flow, pressure, and tank levels, including six that were not covered by an established attack benchmark. Finally, we use our approach to test the effectiveness of an invariant-based defence system for the water treatment plant, finding two attacks that were not detected by its physical invariant checks, highlighting a potential weakness that could be exploited in certain conditions.
arXiv commentAccepted by ASE 2019
References in corpus (5)
- Anomaly Detection for a Water Treatment System Using Unsupervised Machine Learning
- Learning from Mutants: Using Code Mutation to Learn and Monitor Invariants of a Cyber-Physical System
- Log-based Anomaly Detection of CPS Using a Statistical Method
- Towards Learning and Verifying Invariants of Cyber-Physical Systems by Code Mutation
- Toward `verifying' a Water Treatment System
Cited by in corpus (9)
- A systematic review of fuzzing based on machine learning techniques
- Active Fuzzing for Testing and Securing Cyber-Physical Systems
- Code Integrity Attestation for PLCs using Black Box Neural Network Predictions
- SLNET: A Redistributable Corpus of 3rd-party Simulink Models
- Finding Causally Different Tests for an Industrial Control System
- Towards Systematically Deriving Defence Mechanisms from Functional Requirements of Cyber-Physical Systems
- Learning Failure-Inducing Models for Testing Software-Defined Networks
- RouthSearch: Inferring PID Parameter Specification for Flight Control Program by Coordinate Search
- Developing a Strong CPS Defender: An Evolutionary Approach