Industrial Control Systems (ICS) are often a sitting target for cybercriminals. The majority of these systems monitor complex industrial processes and critical infrastructures that deliver power, water, transport, manufacturing and other essential services.
There are many vulnerabilities in ICS systems that could expose an installation to attacks. Downtime or infiltration of an ICS network could result in massive outages, hundreds of thousands of impacted users and even national disaster. Penetration testing on ICS systems is a very specific field that requires in-depth knowledge and hardware availability.
This training is going to help you to understand ICS systems, analyse their weaknesses, attack them and design strategies to protect them. It is aimed at security professionals who want to understand ICS systems, improve their skills or specialize in ICS security, and will take them from the fundamentals of ICS security to advanced hacking techniques.
The focus will be on methodologies for hacking commercial hardware devices such as PLCs as well as simulators, and will also provide an excellent opportunity for participants to gain hands-on experience in penetration testing of these devices and systems. The ICS setup will simulate the ICS infrastructure with real-time PLCs and SCADA applications. The training will cover the most common ICS protocols (Modbus, S7, DNP3, OPC, Profinet), analysing packet captures and learning how to use these protocols to talk to PLCs. The training will also incorporate how to program a PLC, to improve understanding of how they can be exploited. There will be modules on how to bypass airgaps, how to defend airgapped systems, and also the techniques and tactics that adversaries use to compromise ICS systems.
Throughout the course a virtual machine created by Dreamlab specifically for ICS penetration tests will be used, it includes all the necessary tools for ICS hacking. The course is structured for beginner to intermediate level assistants and there is no requirement for previous experience in ICS, reversing or hardware.
Topics:
- Introduction to ICS
- IT vs OT
- Architecture and ICS components
- Programming PLCs
- PLC Wiring
- PLC Programming Languages
- How PLC Programs are executed
- PLC Programming in Ladder Logic
- Programming PLC hands-on exercises
- ICS Protocols: ModBus
- Modbus vulnerabilities
- Modbus attacks
- Packet analysis
- Modbus emulation
- Detecting Modbus slaves
- Attacking Modbus slaves
- ICS Protocols: S7comm
- Fingerprint S7comm and obtaining information
- S7comm vulnerabilities and s7commplus vulnerabilities
- S7comm attacks
- Packet analysis
- S7comm emulation
- Reading and writing data blocks and digital outputs
- Hands-on practice
- ICS Protocols: DNP3
- Fingerprinting DNP3 and obtaining information
- DNP3 vulnerabilities
- DNP3 attacks
- Packet analysis
- DNP3 emulation
- Hands-on practice
- ICS Protocols: OPC/OPC-UA
- Fingerprinting OPC-UA and obtaining information
- OPC-UA vulnerabilities
- OPC-UA attacks
- Packet analysis
- OPC UA emulation
- Attacking OPC-UA
- Hands-on practice
- ICS Protocols: Profinet
- Fingerprinting Profinet
- Profinet vulnerabilities
- Profinet attacks
- Packet analysis
- Hands-on practice
- Bypassing the Air-Gap
- What it's an Airgap?
- Airgap Problems
- Is there really an airgap?
- Airgap, firewall or Data Diode?
- Airgap attacks and examples
- Inbound / Outbound channels
- Making our own tests to bypass the airgap (with hands-on practice)
- Defending the Airgap
- Common ICS vulnerabilities
- Weak network segmentation and segregation (with exercises)
- Insecure protocols usage
- Access control vulnerabilities
- Old software use and lack of maintenance
- Default credentials and insecure configurations
- Lack of security awareness
- Weak USB and personal devices use policies
- Lack of logging and monitoring
- Discussion of real ICS attacks
- ISC-CERT alerts
- Attacker's motivations and ICS attack types
- MITRE ATT&CK for ICS
- Pentesting ICS systems
- Pentesting ICS basics
- Warning and precautions
- Pentesting ICS tools
- Pentesting ICS theory and methodology
- Hands-on Pentesting ICS practice
- ICS Systems exposed on Internet
- Target ICS for the practice
- Information gathering
- Attacking PLC standard interfaces and features
- Attacking ICS protocols
- Attacking HMI
- Attacking Historians / Databases
- Attacking Linux ICS components / Windows / Active Directory
- Attacking embedded components
- Fuzzing ICS protocol implementations
- Securing ICS systems
- ICS security policy
- ICS risk management
- ICS security awareness and training program
- Network segmentation and segregation
- USB and personal devices use policies and restrictions
- ICS systems hardening and adequate configuration
- Apply ‘defense in depth’ principle to protect ICS devices
- Security supervision and other measures
- ICS case study