SlideShare a Scribd company logo
*AllpicturesaretakenfromDr
StrangeLovemovieandother
Internets
Sergey Gordeychik
Aleksandr Timorin
Gleb Gritsai
SCADA STRANGELOVE
SCADA.SL
 Group of security researchers focused on ICS/SCADA
to save Humanity from industrial disaster
and to keep Purity Of Essence
Alexander Timorin
Alexander Tlyapov
Alexander Zaitsev
Alexey Osipov
Andrey Medov
Artem Chaykin
Denis Baranov
Dmitry Efanov
Dmitry Nagibin
Dmitry Serebryannikov
Dmitry Sklyarov
Evgeny Ermakov
Gleb Gritsai
Ilya Karpov
Ivan Poliyanchuk
Kirill Nesterov
Roman Ilin
Sergey Bobrov
Sergey Drozdov
Sergey Gordeychik
Sergey Scherbel
Timur Yunusov
Valentin Shilnenkov
Vladimir Kochetkov
Vyacheslav Egoshin
Yuri Goltsev
Yuriy Dyachenko
Aleksandr Timorin
ICS security researcher
Industrial protocols fan and 0-day PLC hunter
SCADAStrangeLove team member
The Ocean band fan
atimorin
atimorin@protonmail.ch
 ICS basics 101
 Vulnerabilities
• Input validation
• Design and architecture
 Safety and security as a whole
What is ICS world and why we should develop carefully
 Today is the digital era (welcome back captain obvious!)
 Automated processes is everywhere – from home
automation to big energy plants, from brewery to traffic
control systems
What is ICS world and why we should develop carefully
 Industry automatization processes becoming more
comfortably for engineers and operators
What is ICS world and why we should develop carefully
 Switching from analog to digital brings old and absolutely not
secure software development process
What type of ICS products are vulnerable:
• Client/Server software
• Field devices: RTU, PLC, protective relays, power meters,
converters, actuators and so on
• Network switches, gateways
• GSM/GPRS modems, wireless AP
• Mobile applications
• Industrial protocols
• Human factor
Analytics and statistics of ICS vulnerabilities
• Analyzed CVE since ~2010
• Data source: ics-cert.us-cert.gov
• CVE details: NVD
• Total unique CVE: 689
• CVSS 2.0: min score 1.7 , max score 10.0 , avg score 6.5 ,
high and critical count of scores 285 (41%)
Analytics and statistics of ICS vulnerabilities
• CWE statistics:
CWE - Common Weakness Enumeration
Definitions and full detailed description at
https://nvd.nist.gov/cwe.cfm
Unique number of CWE = 43
Analytics and statistics of ICS vulnerabilities
• CWE statistics (TOP 20):
$ sort cwe.all.raw | uniq -c | sort –nr | head -20
Analytics and statistics of ICS vulnerabilities
• CWE statistics (TOP 20):
Buffer Errors
Information Leak / Disclosure
Input Validation
Permissions, Privileges, and
Access ControlXSSCryptographic Issues
Credentials Management
Resource Management Errors
Path Traversal
Authentication Issues
Use of Hard-coded
Credentials
CSRF
Improper Access Control
SQL Injection
Unrestricted Upload of File
with Dangerous Type
Untrusted Search Path
Security Features
Code Injection
NULL Pointer Dereference
Numeric Errors
Other (after TOP20)
Safety vs Security: How to Create Insecure Safety-Critical System
• Honeywell EPKS, CVE-2014-9189
• Honeywell EPKS, CVE-2014-9187
• cb is a buffer size
Safety vs Security: How to Create Insecure Safety-Critical System
• SpiderControl SCADA Web Server, stack-based bof, CVE-
2015-1001
• Siemens SIPROTEC 7SJ64 (protective relay) XSS
• Siemens WinCC
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
PLC
1
PLC
2
PLC
3
Some
networks
WinCC
Web-Client
WinCC
SCADA-
Clients
WinCC
SCADA-
Client +Web-
Server
WinCC
DataMonitor
WinCC
Web-Client
WinCC
DataMonitor
WinCC
Servers
LA
N
PROFINET
PROFIBU
S
Internet, corp
lan, vpn’s
Engineering station
(TIA portal/PCS7)
WinCCExplorer.exe/PdlRt.exe
Create and use your own security features
Instead of standard features – that’s
A bad idea!
• Hardcodes are for protocols with auth: SNMP, telnet, HTTP,
etc.
• You can hardcode keys, certificates, passwords
• SMA Sunny WebBox
• Siemens SIPROTEC 4 protective relay confirmation code
“311299”:
- System log
- Device info
- Stack and other
parts of memory
- More ?
• Siemens SIPROTEC 4 protective relay confirmation code
“311299”:
“SIPROTEC 4 and SIPROTEC Compact devices allow the
display of extended internal statistics and test information…
To access this information, the confirmation code “311299” needs
to be provided when prompted.”
“...Siemens does not publish official documentation on these
statistics. It is strongly recommended to work together with
Siemens SIPROTEC customer care or commissioning experts to
retrieve and interpret the statistics and test information...”
• Siemens S7-1200 PLC, CVE-2014-2252
“An attacker could cause the device to go into defect mode if
specially crafted PROFINET packets are sent to the device. A
cold restart is required to recover the system. ”
Just “set” PROFINET request: set network info (ip, netmask,
gateway) with all zero values.
Not secure by design: default credentials, autocomplete
• Defaults, factory settings (sometimes unchangeable) is
everywhere
SCADA StrangeLove Default/Hardcoded Passwords List
https://github.com/scadastrangelove/SCADAPASS
KIOSK mode:
Limit access to OS
functions
KIOSK mode: Limit access to OS functions
• Wincc accounts: “secret” crypto key
• WinCC accounts: “secret” crypto key fixed
• It’s XOR, they should not bother hardcoding for XOR
PLC password “encryption”
Password (8 bytes)
• TIA Portal PEData.plf passwords history
• Winccwebbridge.dll: please hash your hardcoded account
• Siemens S7-1200, S7-1500 PLC, CVE-2014-2250, CVE-
2014-2251
• Siemens S7-1200, S7-1500 PLC, CVE-2014-2250, CVE-
2014-2251
• Seed = plc_start_time + const
Target – Siemens S7-1200 PLC
Profinet “feature” and PRNG vulnerability - real attack vector.
Result - PLC takeover.
- Hash passwords
- SHA is not good enough
- Put length of plaintext nearby
Redbox_value = len(pwd)*2+1
Architecture looks like ideal (from developers point of view)
Reality looks like ideal too (from attacker point of view)
Reality looks like ideal too (from attacker point of view)
Many vendors tend to develop bicycles own services (ftp,
telnet, ssh, http etc.)
Guten Tag WinCC:
• WinCC Server
Windows/MSSQL based SCADA
• WinCC Client (HMI)
WinCC runtime + project
• WinCC Web Server (WebNavigator)
IIS/MSSQL/ASP/ASP.NET/SOAP
• WinCC WebClient (HMI)
ActiveX/HTML/JS
Third-party services:
• deploying with default and example.config configurations (i.e.
lot of busybox based devices with default root account)
• No patches and updates
Mirai DDos botnet
DVR, NVR, IP cameras
Over 0.5 million IoT devices are vulnerable
What’s the problem? Hardcoded root:xc3511
Moreover, not so easy to change it
Safety vs Security: How to Create Insecure Safety-Critical System
to get firmware?
to get debug symbols?
to debug?
..PowerPC
no “operation system”
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
― Interlocking security (by Jakob Lyng Petersen)
• Trains must not collide
• Trains must not derail
• Trains must not hit person working the tracks
—Sadly, animals can’t handle the interview
― Formal methods and verification (rtfm)
• B Method, Event B
—Underground rail network in Beijing, Milan and Sao Paulo
• Prover.com
—Sweden, USA
― Safety critical systems
― Abstract machines + formal methods
― Atelier B
• Available IDE and C translator
• No Ada translator
― Newer version – Event-B
• See Rodin framework
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
• “Everything will be C in the end. If it's not C, it's not the end.”
– almost John Lennon
― KVB: Alstom
• Automatic Train Protection for the French railway company (SNCF),
installed on 6,000 trains since 1993
—60,000 lines of B; 10,000 proofs; 22,000 lines of Ada
― SAET METEOR: Siemens Transportation Systems
• Automatic Train Control: new driverless metro line 14 in Paris (RATP),
1998. 3 safety-critical software parts: onboard, section, line
—107,000 lines of B; 29,000 proofs; 87,000 lines of Ada
― Roissy VAL: ClearSy (for STS)
• Section Automatic Pilot: light driverless shuttle for Paris-Roissy airport
(ADP), 2006
—28,000+155,000 lines of B; 43,000 proofs; 158,000 lines of Ada
Safety vs Security: How to Create Insecure Safety-Critical System
Safety vs Security: How to Create Insecure Safety-Critical System
• RTFM
• SSDLC
• ICS best practices
• Follow CERTs
• Common Weakness Enumeration at cwe.mitre.org
• More practice: OWASP TOP 10
• TESTING TESTING AND TESTING AGAIN!
Mr. ICS developer, are you creating your products within
SSDLC concepts?
*Allpicturesaretakenfrom
googleandotherInternets
Alexander Timorin
Alexander Tlyapov
Alexander Zaitsev
Alexey Osipov
Andrey Medov
Artem Chaykin
Denis Baranov
Dmitry Efanov
Dmitry Nagibin
Dmitry Serebryannikov
Dmitry Sklyarov
Evgeny Ermakov
Gleb Gritsai
Ilya Karpov
Ivan Poliyanchuk
Kirill Nesterov
Roman Ilin
Sergey Bobrov
Sergey Drozdov
Sergey Gordeychik
Sergey Scherbel
Timur Yunusov
Valentin Shilnenkov
Vladimir Kochetkov
Vyacheslav Egoshin
Yuri Goltsev
Yuriy Dyachenko

More Related Content

What's hot (20)

PDF
Greater China Cyber Threat Landscape - ISC 2016
Sergey Gordeychik
 
PDF
Man in the middle attacks on IEC 60870-5-104
pgmaynard
 
PDF
Scada Strangelove - 29c3
qqlan
 
PDF
Kaspersky SAS SCADA in the Cloud
qqlan
 
PDF
Introduction to Industrial Control Systems : Pentesting PLCs 101 (BlackHat Eu...
arnaudsoullie
 
ODP
Scada Security & Penetration Testing
Ahmed Sherif
 
PDF
SCADA StrangeLove 2: We already know
qqlan
 
PPTX
Industrial protocols for pentesters
Positive Hack Days
 
PPTX
SCADA Strangelove: взлом во имя
Ekaterina Melnik
 
PDF
SCADA deep inside: protocols and security mechanisms
Aleksandr Timorin
 
PDF
Security testing in critical systems
Peter Wood
 
PDF
ICS/SCADA/PLC Google/Shodanhq Cheat Sheet
qqlan
 
PDF
Improving SCADA Security
Narinrit Prem-apiwathanokul
 
PDF
BruCON 2015 - Pentesting ICS 101
Wavestone
 
PDF
D1 t1 t. yunusov k. nesterov - bootkit via sms
qqlan
 
PDF
Adventures in Femtoland: 350 Yuan for Invaluable Fun
arbitrarycode
 
PDF
Johannes Klick, Daniel Marzin. Find Them, Bind Them - Industrial Control Syst...
Positive Hack Days
 
PPTX
Recon: Hopeless relay protection for substation automation
Sergey Gordeychik
 
PPTX
Protecting Your DNP3 Networks
Chris Sistrunk
 
PDF
SCADA hacking industrial-scale fun
Jan Seidl
 
Greater China Cyber Threat Landscape - ISC 2016
Sergey Gordeychik
 
Man in the middle attacks on IEC 60870-5-104
pgmaynard
 
Scada Strangelove - 29c3
qqlan
 
Kaspersky SAS SCADA in the Cloud
qqlan
 
Introduction to Industrial Control Systems : Pentesting PLCs 101 (BlackHat Eu...
arnaudsoullie
 
Scada Security & Penetration Testing
Ahmed Sherif
 
SCADA StrangeLove 2: We already know
qqlan
 
Industrial protocols for pentesters
Positive Hack Days
 
SCADA Strangelove: взлом во имя
Ekaterina Melnik
 
SCADA deep inside: protocols and security mechanisms
Aleksandr Timorin
 
Security testing in critical systems
Peter Wood
 
ICS/SCADA/PLC Google/Shodanhq Cheat Sheet
qqlan
 
Improving SCADA Security
Narinrit Prem-apiwathanokul
 
BruCON 2015 - Pentesting ICS 101
Wavestone
 
D1 t1 t. yunusov k. nesterov - bootkit via sms
qqlan
 
Adventures in Femtoland: 350 Yuan for Invaluable Fun
arbitrarycode
 
Johannes Klick, Daniel Marzin. Find Them, Bind Them - Industrial Control Syst...
Positive Hack Days
 
Recon: Hopeless relay protection for substation automation
Sergey Gordeychik
 
Protecting Your DNP3 Networks
Chris Sistrunk
 
SCADA hacking industrial-scale fun
Jan Seidl
 

Viewers also liked (20)

PDF
Programmable logic controller - Siemens S7-1200
Ahmed Elsayed
 
PDF
Jy997 d22101 b[1]
ddungd4
 
PPSX
Snmp Opc Server from Transcend Automation
guestd1aebad0
 
DOCX
Directories description
Dr.M.Karthika parthasarathy
 
PDF
SCADA StrangeLove Practical security assessment of European Smartgrid
Sergey Gordeychik
 
PPTX
Распространенные виды мошеннических атак
Aleksandr Timorin
 
PPT
Linux shell scripting
Mohamed Abubakar Sittik A
 
DOC
How to set up opc with simatic net
hassanaagib
 
PDF
Guide to industrial control systems (ics) security
ericv83
 
PDF
Security Questions Considered Harmful
Jim Fenton
 
PPT
Security Considerations in Process Control and SCADA Environments
amiable_indian
 
PPTX
ICS Security from the Plant Floor Up - A Controls Engineers Approach to Secur...
Digital Bond
 
PPTX
SCADA Security in CDIC 2009
Narinrit Prem-apiwathanokul
 
PDF
SIL in der Praxis (GER)
ie-net ingenieursvereniging vzw
 
DOC
Resume_Sanjeeth_PLC_Safety_DCS_Engg_3.6+yrs
Sanjeeth Thekkada
 
PPT
The Smithsonian Institution Libraries' Digital Library
Martin Kalfatovic
 
PDF
Giao trinh tia
Tan Ngoc
 
PDF
Engineering tools simatic software
Taufiq Wibowo
 
PPTX
Using Assessment Tools on ICS (English)
Digital Bond
 
PDF
Simatic programming-with-step-7
MARIUS scutaru
 
Programmable logic controller - Siemens S7-1200
Ahmed Elsayed
 
Jy997 d22101 b[1]
ddungd4
 
Snmp Opc Server from Transcend Automation
guestd1aebad0
 
Directories description
Dr.M.Karthika parthasarathy
 
SCADA StrangeLove Practical security assessment of European Smartgrid
Sergey Gordeychik
 
Распространенные виды мошеннических атак
Aleksandr Timorin
 
Linux shell scripting
Mohamed Abubakar Sittik A
 
How to set up opc with simatic net
hassanaagib
 
Guide to industrial control systems (ics) security
ericv83
 
Security Questions Considered Harmful
Jim Fenton
 
Security Considerations in Process Control and SCADA Environments
amiable_indian
 
ICS Security from the Plant Floor Up - A Controls Engineers Approach to Secur...
Digital Bond
 
SCADA Security in CDIC 2009
Narinrit Prem-apiwathanokul
 
SIL in der Praxis (GER)
ie-net ingenieursvereniging vzw
 
Resume_Sanjeeth_PLC_Safety_DCS_Engg_3.6+yrs
Sanjeeth Thekkada
 
The Smithsonian Institution Libraries' Digital Library
Martin Kalfatovic
 
Giao trinh tia
Tan Ngoc
 
Engineering tools simatic software
Taufiq Wibowo
 
Using Assessment Tools on ICS (English)
Digital Bond
 
Simatic programming-with-step-7
MARIUS scutaru
 
Ad

Similar to Safety vs Security: How to Create Insecure Safety-Critical System (20)

PPT
Power Grid Communications & Control Systems
fajjarrehman
 
PPT
Control system including PLC cybersecurity
Dr.Maged Mikhail
 
PDF
Alexander Timorin, Alexander Tlyapov - SCADA deep inside protocols, security ...
DefconRussia
 
PPTX
Scada strange love uwn-stuxnet
Positive Hack Days
 
PPTX
Scada strange love.
Positive Hack Days
 
PDF
How to Get into ICS Security byChris Sistrunk
EC-Council
 
PPTX
Hacker Halted 2016 - How to get into ICS security
Chris Sistrunk
 
PDF
ICS Threat Scenarios
Luigi Auriemma
 
PPTX
ICS Security 101 by Sandeep Singh
OWASP Delhi
 
PDF
SCADA Software or Swiss Cheese Software?  by Celil UNUVER
CODE BLUE
 
PDF
ICSA 2019 Architectural Security Weaknesses in Industrial Control Systems
DanielleGonzalez25
 
PPTX
Understanding Cyber Industrial Controls in the Manufacturing and Utilities En...
Dawn Yankeelov
 
PPTX
chile-2015 (2)
Massimiliano Falcinelli
 
PDF
Critical Infrastructure Assessment Techniques to Prevent Threats and Vulnerab...
Shakeel Ali
 
PDF
BlackHat_2015_Slides_Krotofil_FINAL
Marina Krotofil
 
PPTX
Challenges and Solution to Mitigate the cyber-attack on Critical Infrastruct...
Abhishek Goel
 
PDF
PT-DTS SCADA Security using MaxPatrol
Shah Sheikh
 
PDF
SCADA Cyber Sec | ISACA 2013 | Patricia Watson
Patricia M Watson
 
PPTX
BSidesAugusta ICS SCADA Defense
Chris Sistrunk
 
PDF
ICS security
Ahmed Shitta
 
Power Grid Communications & Control Systems
fajjarrehman
 
Control system including PLC cybersecurity
Dr.Maged Mikhail
 
Alexander Timorin, Alexander Tlyapov - SCADA deep inside protocols, security ...
DefconRussia
 
Scada strange love uwn-stuxnet
Positive Hack Days
 
Scada strange love.
Positive Hack Days
 
How to Get into ICS Security byChris Sistrunk
EC-Council
 
Hacker Halted 2016 - How to get into ICS security
Chris Sistrunk
 
ICS Threat Scenarios
Luigi Auriemma
 
ICS Security 101 by Sandeep Singh
OWASP Delhi
 
SCADA Software or Swiss Cheese Software?  by Celil UNUVER
CODE BLUE
 
ICSA 2019 Architectural Security Weaknesses in Industrial Control Systems
DanielleGonzalez25
 
Understanding Cyber Industrial Controls in the Manufacturing and Utilities En...
Dawn Yankeelov
 
chile-2015 (2)
Massimiliano Falcinelli
 
Critical Infrastructure Assessment Techniques to Prevent Threats and Vulnerab...
Shakeel Ali
 
BlackHat_2015_Slides_Krotofil_FINAL
Marina Krotofil
 
Challenges and Solution to Mitigate the cyber-attack on Critical Infrastruct...
Abhishek Goel
 
PT-DTS SCADA Security using MaxPatrol
Shah Sheikh
 
SCADA Cyber Sec | ISACA 2013 | Patricia Watson
Patricia M Watson
 
BSidesAugusta ICS SCADA Defense
Chris Sistrunk
 
ICS security
Ahmed Shitta
 
Ad

Recently uploaded (20)

PDF
Advanced-Web-Design-Crafting-the-Future-Web (1).pdf
vaghelavidhiba591
 
PPTX
Influencing Factors of Business Environment of Vegetables Selling Business
auntorkhastagirpujan
 
PPTX
Renters' Rights and PBSA. How the bill will impact on the sector
Nick Emms
 
PPTX
Raksha Bandhan Celebrations PPT festival
sowmyabapuram
 
PPTX
Design Tips to Help Non-Visual Visitors Stay Safe Online
Daniela Napoli
 
PPTX
Applied Stats for Real-Life Decisions.pptx
khalyaniramjan49
 
PPTX
Building a Strong and Ethical Digital Professional Identity
khalyaniramjan49
 
PPTX
2025-07-27 Abraham 09 (shared slides).pptx
Dale Wells
 
PPTX
Working-with-HTML-CSS-and-JavaScript.pptx
badalsenma5
 
PPTX
LUBRICANTS presentation slides with types functions and all
dahalsabal2020
 
PPTX
Describing the Organization's General Environment Identifying the Most Impact...
auntorkhastagirpujan
 
PPTX
Mastering the DevOps Certification: CI/CD, Governance & Monitoring Made Simple
shubhamsharma994585
 
PDF
Mathematics Grade 11 Term 1 Week 1_2021.pdf
MalepyaneMokgatle
 
PPTX
Iconic Destinations in India: Explore Heritage and Beauty
dhorashankar
 
PPTX
How do Company Analysis Short Term and Long Term Investment.pptx
auntorkhastagirpujan
 
PDF
Something I m waiting to tell you By Shravya Bhinder
patelprushti2007
 
PPTX
Remote Healthcare Technology Use Cases and the Contextual Integrity of Olde...
Daniela Napoli
 
PDF
Chapter-52-Relationship-between-countries-at-different-levels-of-development-...
dinhminhthu1405
 
PPTX
DPIC Assingment_1.pptx.pptx for presentation
yashwork2607
 
PDF
Exploring User Perspectives on Data Collection, Data Sharing Preferences, and...
Daniela Napoli
 
Advanced-Web-Design-Crafting-the-Future-Web (1).pdf
vaghelavidhiba591
 
Influencing Factors of Business Environment of Vegetables Selling Business
auntorkhastagirpujan
 
Renters' Rights and PBSA. How the bill will impact on the sector
Nick Emms
 
Raksha Bandhan Celebrations PPT festival
sowmyabapuram
 
Design Tips to Help Non-Visual Visitors Stay Safe Online
Daniela Napoli
 
Applied Stats for Real-Life Decisions.pptx
khalyaniramjan49
 
Building a Strong and Ethical Digital Professional Identity
khalyaniramjan49
 
2025-07-27 Abraham 09 (shared slides).pptx
Dale Wells
 
Working-with-HTML-CSS-and-JavaScript.pptx
badalsenma5
 
LUBRICANTS presentation slides with types functions and all
dahalsabal2020
 
Describing the Organization's General Environment Identifying the Most Impact...
auntorkhastagirpujan
 
Mastering the DevOps Certification: CI/CD, Governance & Monitoring Made Simple
shubhamsharma994585
 
Mathematics Grade 11 Term 1 Week 1_2021.pdf
MalepyaneMokgatle
 
Iconic Destinations in India: Explore Heritage and Beauty
dhorashankar
 
How do Company Analysis Short Term and Long Term Investment.pptx
auntorkhastagirpujan
 
Something I m waiting to tell you By Shravya Bhinder
patelprushti2007
 
Remote Healthcare Technology Use Cases and the Contextual Integrity of Olde...
Daniela Napoli
 
Chapter-52-Relationship-between-countries-at-different-levels-of-development-...
dinhminhthu1405
 
DPIC Assingment_1.pptx.pptx for presentation
yashwork2607
 
Exploring User Perspectives on Data Collection, Data Sharing Preferences, and...
Daniela Napoli
 

Safety vs Security: How to Create Insecure Safety-Critical System

  • 2.  Group of security researchers focused on ICS/SCADA to save Humanity from industrial disaster and to keep Purity Of Essence Alexander Timorin Alexander Tlyapov Alexander Zaitsev Alexey Osipov Andrey Medov Artem Chaykin Denis Baranov Dmitry Efanov Dmitry Nagibin Dmitry Serebryannikov Dmitry Sklyarov Evgeny Ermakov Gleb Gritsai Ilya Karpov Ivan Poliyanchuk Kirill Nesterov Roman Ilin Sergey Bobrov Sergey Drozdov Sergey Gordeychik Sergey Scherbel Timur Yunusov Valentin Shilnenkov Vladimir Kochetkov Vyacheslav Egoshin Yuri Goltsev Yuriy Dyachenko
  • 3. Aleksandr Timorin ICS security researcher Industrial protocols fan and 0-day PLC hunter SCADAStrangeLove team member The Ocean band fan atimorin [email protected]
  • 4.  ICS basics 101  Vulnerabilities • Input validation • Design and architecture  Safety and security as a whole
  • 5. What is ICS world and why we should develop carefully  Today is the digital era (welcome back captain obvious!)  Automated processes is everywhere – from home automation to big energy plants, from brewery to traffic control systems
  • 6. What is ICS world and why we should develop carefully  Industry automatization processes becoming more comfortably for engineers and operators
  • 7. What is ICS world and why we should develop carefully  Switching from analog to digital brings old and absolutely not secure software development process
  • 8. What type of ICS products are vulnerable: • Client/Server software • Field devices: RTU, PLC, protective relays, power meters, converters, actuators and so on • Network switches, gateways • GSM/GPRS modems, wireless AP • Mobile applications • Industrial protocols • Human factor
  • 9. Analytics and statistics of ICS vulnerabilities • Analyzed CVE since ~2010 • Data source: ics-cert.us-cert.gov • CVE details: NVD • Total unique CVE: 689 • CVSS 2.0: min score 1.7 , max score 10.0 , avg score 6.5 , high and critical count of scores 285 (41%)
  • 10. Analytics and statistics of ICS vulnerabilities • CWE statistics: CWE - Common Weakness Enumeration Definitions and full detailed description at https://nvd.nist.gov/cwe.cfm Unique number of CWE = 43
  • 11. Analytics and statistics of ICS vulnerabilities • CWE statistics (TOP 20): $ sort cwe.all.raw | uniq -c | sort –nr | head -20
  • 12. Analytics and statistics of ICS vulnerabilities • CWE statistics (TOP 20):
  • 13. Buffer Errors Information Leak / Disclosure Input Validation Permissions, Privileges, and Access ControlXSSCryptographic Issues Credentials Management Resource Management Errors Path Traversal Authentication Issues Use of Hard-coded Credentials CSRF Improper Access Control SQL Injection Unrestricted Upload of File with Dangerous Type Untrusted Search Path Security Features Code Injection NULL Pointer Dereference Numeric Errors Other (after TOP20)
  • 15. • Honeywell EPKS, CVE-2014-9189
  • 16. • Honeywell EPKS, CVE-2014-9187
  • 17. • cb is a buffer size
  • 19. • SpiderControl SCADA Web Server, stack-based bof, CVE- 2015-1001
  • 20. • Siemens SIPROTEC 7SJ64 (protective relay) XSS
  • 25. WinCCExplorer.exe/PdlRt.exe Create and use your own security features Instead of standard features – that’s A bad idea!
  • 26. • Hardcodes are for protocols with auth: SNMP, telnet, HTTP, etc. • You can hardcode keys, certificates, passwords • SMA Sunny WebBox
  • 27. • Siemens SIPROTEC 4 protective relay confirmation code “311299”: - System log - Device info - Stack and other parts of memory - More ?
  • 28. • Siemens SIPROTEC 4 protective relay confirmation code “311299”: “SIPROTEC 4 and SIPROTEC Compact devices allow the display of extended internal statistics and test information… To access this information, the confirmation code “311299” needs to be provided when prompted.” “...Siemens does not publish official documentation on these statistics. It is strongly recommended to work together with Siemens SIPROTEC customer care or commissioning experts to retrieve and interpret the statistics and test information...”
  • 29. • Siemens S7-1200 PLC, CVE-2014-2252 “An attacker could cause the device to go into defect mode if specially crafted PROFINET packets are sent to the device. A cold restart is required to recover the system. ” Just “set” PROFINET request: set network info (ip, netmask, gateway) with all zero values.
  • 30. Not secure by design: default credentials, autocomplete • Defaults, factory settings (sometimes unchangeable) is everywhere SCADA StrangeLove Default/Hardcoded Passwords List https://github.com/scadastrangelove/SCADAPASS
  • 31. KIOSK mode: Limit access to OS functions
  • 32. KIOSK mode: Limit access to OS functions
  • 33. • Wincc accounts: “secret” crypto key
  • 34. • WinCC accounts: “secret” crypto key fixed • It’s XOR, they should not bother hardcoding for XOR
  • 36. • TIA Portal PEData.plf passwords history
  • 37. • Winccwebbridge.dll: please hash your hardcoded account
  • 38. • Siemens S7-1200, S7-1500 PLC, CVE-2014-2250, CVE- 2014-2251
  • 39. • Siemens S7-1200, S7-1500 PLC, CVE-2014-2250, CVE- 2014-2251 • Seed = plc_start_time + const
  • 40. Target – Siemens S7-1200 PLC
  • 41. Profinet “feature” and PRNG vulnerability - real attack vector. Result - PLC takeover.
  • 42. - Hash passwords - SHA is not good enough - Put length of plaintext nearby Redbox_value = len(pwd)*2+1
  • 43. Architecture looks like ideal (from developers point of view)
  • 44. Reality looks like ideal too (from attacker point of view)
  • 45. Reality looks like ideal too (from attacker point of view)
  • 46. Many vendors tend to develop bicycles own services (ftp, telnet, ssh, http etc.) Guten Tag WinCC: • WinCC Server Windows/MSSQL based SCADA • WinCC Client (HMI) WinCC runtime + project • WinCC Web Server (WebNavigator) IIS/MSSQL/ASP/ASP.NET/SOAP • WinCC WebClient (HMI) ActiveX/HTML/JS
  • 47. Third-party services: • deploying with default and example.config configurations (i.e. lot of busybox based devices with default root account) • No patches and updates
  • 48. Mirai DDos botnet DVR, NVR, IP cameras Over 0.5 million IoT devices are vulnerable What’s the problem? Hardcoded root:xc3511 Moreover, not so easy to change it
  • 50. to get firmware? to get debug symbols? to debug? ..PowerPC no “operation system”
  • 53. ― Interlocking security (by Jakob Lyng Petersen) • Trains must not collide • Trains must not derail • Trains must not hit person working the tracks —Sadly, animals can’t handle the interview ― Formal methods and verification (rtfm) • B Method, Event B —Underground rail network in Beijing, Milan and Sao Paulo • Prover.com —Sweden, USA
  • 54. ― Safety critical systems ― Abstract machines + formal methods ― Atelier B • Available IDE and C translator • No Ada translator ― Newer version – Event-B • See Rodin framework
  • 57. • “Everything will be C in the end. If it's not C, it's not the end.” – almost John Lennon
  • 58. ― KVB: Alstom • Automatic Train Protection for the French railway company (SNCF), installed on 6,000 trains since 1993 —60,000 lines of B; 10,000 proofs; 22,000 lines of Ada ― SAET METEOR: Siemens Transportation Systems • Automatic Train Control: new driverless metro line 14 in Paris (RATP), 1998. 3 safety-critical software parts: onboard, section, line —107,000 lines of B; 29,000 proofs; 87,000 lines of Ada ― Roissy VAL: ClearSy (for STS) • Section Automatic Pilot: light driverless shuttle for Paris-Roissy airport (ADP), 2006 —28,000+155,000 lines of B; 43,000 proofs; 158,000 lines of Ada
  • 61. • RTFM • SSDLC • ICS best practices • Follow CERTs • Common Weakness Enumeration at cwe.mitre.org • More practice: OWASP TOP 10 • TESTING TESTING AND TESTING AGAIN!
  • 62. Mr. ICS developer, are you creating your products within SSDLC concepts?
  • 63. *Allpicturesaretakenfrom googleandotherInternets Alexander Timorin Alexander Tlyapov Alexander Zaitsev Alexey Osipov Andrey Medov Artem Chaykin Denis Baranov Dmitry Efanov Dmitry Nagibin Dmitry Serebryannikov Dmitry Sklyarov Evgeny Ermakov Gleb Gritsai Ilya Karpov Ivan Poliyanchuk Kirill Nesterov Roman Ilin Sergey Bobrov Sergey Drozdov Sergey Gordeychik Sergey Scherbel Timur Yunusov Valentin Shilnenkov Vladimir Kochetkov Vyacheslav Egoshin Yuri Goltsev Yuriy Dyachenko