EIEIOTECHNOVATION
← Training programmes

EIEIO / AUTOMATION & EMERGING TECHNOLOGY

Pentesting Smart Grid and SCADA with SamuraiSTFU

Course outline

3 days

Duration

3 days

Overview

This is not your traditional SCADA security course! This course teaches hands-on penetration testing techniques used to test embedded electronic field devices, network protocols, RF communications, and controlling servers of ICS and Smart Grid systems like PLCs, RTUs, smart meters, Home Area Networks (HAN), smart appliances, SCADA, substation automation, and synchrophasors. This course is structured around the formal penetration testing methodology created by the National Energy Sector Cybersecurity Organization Resource (NESCOR), a United States Department of Energy project. Using this methodology and SamuraiSTFU (Security Testing Framework for Utilities), an open source Linux distribution for pentesting energy sector systems and other critical infrastructure, we'll perform hands-on penetration testing tasks on embedded electronic field devices, their RF communications, and the myriad of user interfaces used throughout smart grid systems. We’ll tie these techniques and exercises back to the smart grid devices that can be tested using these techniques. We will also do exercises on dissecting and fuzzing smart grid protocols like modbus, DNP3, IEC 61850, ICCP, ZigBee, C37.118, and C12.22. The course exercises will be performed on a mixture of real world and simulated devices to give students the most realistic experience as possible in a portable classroom setting.

Prerequisite

Basic penetration testing experience is desirable, but not required. It is assumed that attendees will have no knowledge of ICS, Smart Grid, SCADA, or critical infrastructure. This course is designed for intermediate level security professionals, be they engineers, technicians, analysts, managers, or penetration testers.

Day 1 – Pentesting ICS Network Protocols

  • 1. Introduction to SamuraiSTFU (Security Testing Framework for Utilities)

Setting up the virtual machine

Walk through the tools and functionality

Introduction to the student hardware kits

  • 2. Different levels of network communication penetration testing

Testing of network mediums vs network protocols

Where security defenses should be place …… and tested

  • 3. Serial communications

RS-485 and RS-232

Modbus RTU

16-bit unsigned registers and single bit coils

Pentesting RF communications between master servers and field devices

Hands-on RF spectrum analysis and signal capture

Spread Spectrum types and strategies

Hands-on signal demodulation with GNU Radio

Hands-on network traffic extraction

Traffic transmission and exploitation

  • 4. Pentesting TCP/IP based ICS protocols

Protocol capture and analysis

modbus, DNP3, IEC 61850, ICCP, ZigBee, C37.118, and C12.22

Dealing with unknown protocols

Hands-on entropy analysis of network payloads

Reverse engineering unknown protocols

Hands-on ICS protocol fuzzing

Day 2 – Pentesting ICS Field and Floor Devices

  • 1. Pentesting technician interfaces on ICS field and floor devices
  • Functional analysis of field technician interfaces
  • Hands-on exercise capturing USB communications to tech interfaces
  • Hands-on exercise analyzing captured USB communications
  • Impersonating endpoints in field tech interface communications
  • Hands-on exercises fuzzing AMI Smart Meter c12.18 optical interfaces
  • Exploiting vulnerabilities found during analysis
  • 2. Analyzing field and floor device firmware
  • Obtaining field and floor device firmware
  • Hands-on exercise disassembling firmware
  • Hands-on exercise analyzing disassembled firmware
  • Exploiting firmware flaws
  • 3. Overview of pentesting field and floor device embedded circuits
  • Local attack through physically exposed devices
  • Expanding physical attacks to remote attacks
  • Cryptographic keys and firmware
  • 4. Analysis of embedded electronics in ICS field and floor devices
  • Discussion of device disassembly
  • Component analysis on embedded circuits
  • Datasheet acquisition and analysis for target components

Day 3 – Pentesting ICS Field and Floor Devices Continued

  • 1. Dumping data at rest on embedded circuits

Using the Bus Pirate and other similar tools

Overview of I2C or two-wire serial protocol

Hands-on exercise dumping I2C EEPROMs

Overview of SPI serial protocol

Hands-on exercise dumping SPI EEPROMs

Overview of JTAG

Hands-on exercise interfacing with JTAG

  • 2. Bus Snooping on embedded circuits

Overview of bus snooping

Hands-on exercise snooping busses

  • 3. Analyzing data obtained from data dumping and bus snooping

Hands-on exercise doing string analysis of datasets

Hands-on exercise doing entropy analysis of datasets

Hands-on exercise doing systematic key searches through datasets

Hands-on exercise doing file carving from datasets

  • 4. End-to-end analysis and reporting

Strategies for end-to-end analysis after targeted pentesting

Strategies for reporting and remediation recommendations

Programme scope, delivery arrangements and suitability are confirmed during enquiry.