Methods and supporting software for industrial control system and instrumentation security testing

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Sähkötekniikan korkeakoulu | Master's thesis

Date

2020-05-18

Department

Major/Subject

Translational Engineering

Mcode

ELEC3023

Degree programme

AEE - Master’s Programme in Automation and Electrical Engineering (TS2013)

Language

en

Pages

67+3

Series

Abstract

Industrial control systems (ICS) control critical infrastructure, of which continuous operation must be secured. The systems' networks face increasing demand for security testing as the number of known vulnerabilities and the risk of attacks keep growing. However, security testing is complicated by the fact that testing instructions and tools are developed primarily for Information Technology (IT) networks. The aim of this thesis is to compose instructions and supporting software to facilitate ICS network security testing. For this end, the structure of ICS networks was first examined with emphasis on the proprietary protocols found within the systems. Next, suggested improvements to the ICS network security and countermeasures to known protocol vulnerabilities were collected. The findings were used to compose instructions on what to prioritise during an examination on generic ICS network. In the practical part of this work, publicly available open source security testing modules were refined into a tool to test security of a generic industrial programmable logic controller (PLC), Siemens SIMATIC S7-1200. The tool utilises Robot Framework, additionally serving as an experiment on the usage of test automation in security testing. Results were obtained by running the developed software against the PLC. Valuable information, such as complete device address and firmware version were acquired using integrated scanner modules. In addition, an exploit module was successfully shown to validate a vulnerability within the device, allowing attackers with network access to manipulate PLC's internal parameters. It was also observed that Robot Framework contains beneficial features for security testing, such as automatic logging, and enabling grouping and chaining of different environments under separate test cases.

Teollisuuslaitoksien ohjausjärjestelmät ohjaavat yhteiskunnallisesti kriittistä infrastruktuuria, jonka toimintavarmuus on turvattava. Teollisuusverkkojen tunnettujen haavoittuvuuksien ja hyökkäyksien riski kasvaa jatkuvasti, mistä syystä myös verkkojen tietoturvatestauksen tarve kasvaa. Tietoturvatestausta kuitenkin hankaloittaa se, että testauksessa käytetty ohjeistus ja työkalut ovat usein tehty toimistoverkkojen tietoturvatestaukseen. Tässä työssä on koostettu ohjeistusta siitä, mihin keskittyä teollisuusverkon tietoturva-auditoinnin aikana. Tämän lisäksi työssä on kehitetty tietoturvatestausta tukeva ohjelmisto. Työssä on ensin perehdytty verkkojen rakenteeseen, ja keskitytty erityisesti yleisesti käytössä olevien protokollien turvallisuustason selvitykseen. Tämän jälkeen auditointiohjeistus on koostettu hyödyntämällä yleisiä ohjeita, jotka tähtäävät teollisuustietoturvan parantamiseen, sekä käyttämällä tietoa tunnetuista protokollahaavoittuvuuksista. Työn kokeellisessa osuudessa avoimen lähdekoodin tietoturvatestausmoduuleja on ensin kerätty yhteen ja arvioitu. Hyödylliseksi arvioitujen moduulien pohjalta on kehitetty varsinainen tieto\-turva\-testaus-ohjelmisto. Ohjelmisto on kehitetty testaamaan tyypillisen teollisen ohjelmoitavan logiikan tietoturvaa, joksi tässä työssä valikoitui Siemensin SIMATIC S7-1200 PLC. Ohjelmiston käyttää Robot Framework-testi\-automaatio\-järjestelmää, ja tarjoaa myös katsauksen testiautomaation käyttöön tietoturvatestauksessa. Tulokset on saatu testaamalla mainittua ohjelmoitavaa logiikkaa ohjelmistolla. Integroitujen skannereiden osoitetaan palauttavan tietoturvatestaukselle hyödyllistä tietoa, kuten verkko-osoitteen ja laiteohjelmiston versionumeron. Lisäksi ohjelmiston avulla voidaan todistaa yhden tunnetun haavoittuvuuden olemassaolo, joka mahdollistaa laitteen sisäisten parametrien manipuloinnin verkon yli. Työn pohjalta voidaan myös todeta, että Robot Framework sisältää hyödyllisiä piirteitä tietoturvatestaukseen. Näitä ovat muun muassa tulosteen automaattinen luonti, sekä mahdollisuus moduulien ajon ketjuttamiseen.

Description

Supervisor

Särkkä, Simo

Thesis advisor

Rosendahl, Toni

Keywords

security testing, security examination, ICS, robot framework

Other note

Citation