Return to search

Automated security analysis of a SCADA system

Supervisory control and data acquisition (SCADA) is a computer system for analysing, and monitoring data, as well as, controlling a plant in industries such as power grids, oil, gas refining, and water control. SCADA belongs to the category of critical systems that are needed to maintain the infrastructure of cities and households. Therefore, the security aspect of such a system has a significant role. The early SCADA systems were designed with the operation as the primary concern rather than security since they were a monolithic networked system without external access. However, the systems evolved, and SCADA systems were embedded with web technologies for users to monitor the data externally. These changes improved the efficiency of monitoring and productivity; however, this caused a problem of potential cyber-attacks to a SCADA system. One such example was Ukraine’s power grid blackout in 2015. Therefore, it is beneficial for the security of a SCADA system to create a threat modeling technique that can understand the critical components of SCADA, discover potential threats, and propose possible mitigation strategies. One issue when creating a threat model is the significant difference of SCADA from traditional Operational Technology (OT) systems. Another significant issue is that SCADA is a highly customisable system, and each SCADA instance can have different components. Therefore, for this work, we implemented a threat modeling language scadaLang, which is specific to the domain of a SCADA system. We started by defining the major assets of a SCADA system, attackers, entry surfaces, and built attacks and defense strategies. Then we developed a threat modeling domain-specific language scadaLang that can create a threat model for a particular instance of SCADA taking the differences in components and connections into account. As a result, we achieved a threat modeling language for SCADA, ensured the reliability of the results by peer-reviewing of an engineer familiar with the domain of the problem, and proposed a Turing test to ensure the validity of the result of scadaLang as the future development of the project. / Supervisory control and data acquisition (SCADA) är ett datorsystem för att analysera och monitorera data samt kontrollera anläggningar för industrier såsom energisystem, olja, raffinering av gas och vatten. SCADA tillhör den kategori av kritiska system som krävs för att bibehålla städer och hushålls infrastruktur. Därför är säkerhetsaspekten av ett sådant system av stor roll. De tidiga SCADA systemen var utformade med funktionen som huvudsaklig oro istället för säkerheten då de var monolitiska nätverkssystem utan extern åtkomst. Systemen utvecklades emellertid och SCADA systemen blev inbyggda med webbteknologier så att användare kan monitorera data externt. De här förändringarna förbättrade effektiviteten av monitorering och produktivitet men skapade problemet med potentiella cyber-attacker mot SCADA systemen. Ett sådant exempel är Ukrainas energy systems elavbrott som skedde 2015. Därför är det fördelaktigt för säkerheten av SCADA systemen att skapa en hotmodelleringsteknik för att bättre förstå de kritiska komponenterna av SCADA, hitta potentiella hot och föreslå potentiella förmildrande strategier. Ett problem för utvecklingen av en hotmodell är den stora skillnaden mellan SCADA från traditionella nätverkssystem inom industri. Ett annat stort problem är att SCADA är ett justerbart system och varje SCADA instans kan ha olika komponenter. Därför utvecklar vi i detta arbete ett språk för hotmodellering scadaLang som är specifikt för domänen SCADA system. Vi började med att definiera de huvudsakliga komponenterna av SCADA system, angriparna, attack ytorna och även bygga attacker samt försvarsstrategier. Sen utvecklade vi ett språk för hotmodelleringen som är domänspecifikt, scadaLang som kan skapa en hotmodell för en specifik instans av SCADA där skillnaderna på komponenter och sammankopplingar tas till hänsyn. Som resultat har vi skapat ett språk för hotmodellering för SCADA,verifierat resultat med hjälp av en ingenjör med domänkännedom och föreslagit ett Turing test för att förbättra verifieringen av resultatet som ett framtida arbete.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-286336
Date January 2020
CreatorsDuisembiyeva, Akzharkyn
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2020:622

Page generated in 0.0027 seconds