An Approach to Generate Attack Graphs with a Case Study on Siemens PCS7 Blueprint for Water Treatment Plants
Lucas Miranda, Carlos Banjar, Daniel Menasche, Anton Kocheturov, Gaurav Srivastava, Tobias Limmer

TL;DR
This paper presents a semi-automated method for generating attack graphs in ICS environments, integrating topology and vulnerability data to identify attack paths, demonstrated through a Siemens water treatment plant case study.
Contribution
The paper introduces a novel semi-automated approach combining network topology and vulnerability data to generate attack graphs for ICS security analysis.
Findings
The framework can simulate various attack scenarios including CVEs and misconfigurations.
A single point of failure can compromise network segmentation.
Patching critical vulnerabilities enhances overall security zone protection.
Abstract
Assessing the security posture of Industrial Control Systems (ICS) is critical for protecting essential infrastructure. However, the complexity and scale of these environments make it challenging to identify and prioritize potential attack paths. This paper introduces a semi-automated approach for generating attack graphs in ICS environments to visualize and analyze multi-step attack scenarios. Our methodology integrates network topology information with vulnerability data to construct a model of the system. This model is then processed by a stateful traversal algorithm to identify potential exploit chains based on preconditions and consequences. We present a case study applying the proposed framework to the Siemens PCS7 Cybersecurity Blueprint for Water Treatment Plants. The results demonstrate the framework's ability to simulate different attack scenarios, including those originating…
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.
