Learning from Mutants: Using Code Mutation to Learn and Monitor Invariants of a Cyber-Physical System
Yuqi Chen, Christopher M. Poskitt, Jun Sun

TL;DR
This paper introduces a novel method for automatically modeling cyber-physical systems by applying supervised machine learning to data traces from mutated software components, enabling early attack detection.
Contribution
It presents a new approach that uses code mutation and machine learning to automatically learn invariants of CPS for security monitoring.
Findings
Successfully learned physical invariants of a water purification system
Detected 85% of simulated network and code attacks
Automated framework for mutation, data collection, and model learning
Abstract
Cyber-physical systems (CPS) consist of sensors, actuators, and controllers all communicating over a network; if any subset becomes compromised, an attacker could cause significant damage. With access to data logs and a model of the CPS, the physical effects of an attack could potentially be detected before any damage is done. Manually building a model that is accurate enough in practice, however, is extremely difficult. In this paper, we propose a novel approach for constructing models of CPS automatically, by applying supervised machine learning to data traces obtained after systematically seeding their software components with faults ("mutants"). We demonstrate the efficacy of this approach on the simulator of a real-world water purification plant, presenting a framework that automatically generates mutants, collects data traces, and learns an SVM-based model. Using cross-validation…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
