ICS3Fuzzer: A Framework for Discovering Protocol Implementation Bugs in ICS Supervisory Software by Fuzzing
Dong-Liang Fang, Zhanwei Song, Le Guan, Puzhuo Liu, Anni Peng, Kai Cheng, Yaowen Zheng, Peng Liu, Hongsong Zhu, Limin Sun
Abstract
The supervisory software is widely used in industrial control systems (ICSs) to manage field devices such as PLC controllers. Once compromised, it could be misused to control or manipulate these physical devices maliciously, endangering manufacturing process or even human lives. Therefore, extensive security testing of supervisory software is crucial for the safe operation of ICS. However, fuzzing ICS supervisory software is challenging due to the prevalent use of proprietary protocols. Without the knowledge of the program states and packet formats, it is difficult to enter the deep states for effective fuzzing.
Topics & Concepts
Fuzz testingComputer scienceProtocol (science)SoftwareSoftware engineeringSupervisory controlProcess (computing)Software bugField (mathematics)Embedded systemControl (management)Operating systemArtificial intelligencePure mathematicsMedicineMathematicsPathologyAlternative medicineAdvanced Malware Detection TechniquesSoftware Testing and Debugging TechniquesSmart Grid Security and Resilience