13.07.2015 Views

white paper on industrial automation security in fieldbus and

white paper on industrial automation security in fieldbus and

white paper on industrial automation security in fieldbus and

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

29times just because TCP says so. When us<strong>in</strong>gUDP, retransmissi<strong>on</strong> of old data can be avoided<strong>in</strong> case <strong>on</strong>e cycle of data is missed; the nextcycle with up-to-date data is sent <strong>in</strong>stead.The bridg<strong>in</strong>g between Modbus TCP or ModbusUDP <strong>in</strong>to the serial l<strong>in</strong>e variants, e.g. ModbusRTU, has become more comm<strong>on</strong> as IndustrialEthernet also <strong>in</strong>creases <strong>in</strong> popularity.3.4.7.2 PROFINET IOPROFINET IO is an Ethernet-based protocoldesigned for real-time communicati<strong>on</strong>. Theexperience ga<strong>in</strong>ed from the PROFIBUS <strong>fieldbus</strong>was <strong>in</strong>tegrated with the Industrial Ethernettechnology to create PROFINET. The masterdevice <strong>in</strong> a PROFINET IO system is called the“C<strong>on</strong>troller”, while slaves are referred to as“Devices”. Cyclic data exchange <strong>in</strong> PROFINETIO takes place directly <strong>in</strong> the Ethernet layer 2,not <strong>in</strong>volv<strong>in</strong>g any transport protocols such asUDP or TCP; the messages are addressed us<strong>in</strong>gthe MAC addresses of the PROFINET IOdevices. Acyclic data is exchanged us<strong>in</strong>g theUDP protocol.The cyclic data exchange c<strong>on</strong>necti<strong>on</strong>s arem<strong>on</strong>itored us<strong>in</strong>g a watchdog time, which isc<strong>on</strong>figured as a multiple of the update (cycle)time of the network. As an example, if theupdate time is 8 millisec<strong>on</strong>ds <strong>and</strong> the watchdogtime multiplier is 3, then the watchdog time willbe 24 millisec<strong>on</strong>ds. If the communicati<strong>on</strong> is idlefor l<strong>on</strong>ger than this period of time, the devicem<strong>on</strong>itor<strong>in</strong>g the watchdog will detect this event<strong>and</strong> execute some reacti<strong>on</strong>; however this isdevice- or user-specific.Because the PROFINET IO real-time dataexchange frames are communicated <strong>in</strong> theEthernet layer 2, these frames c<strong>on</strong>ta<strong>in</strong> <strong>on</strong>ly MACaddresses. This means that the real-time framescannot be communicated outside a subnet whichis delimited by a router, because routers formsubnets based <strong>on</strong> IP addresses as def<strong>in</strong>ed <strong>in</strong> layer3.A hardware implementati<strong>on</strong> is required for themost determ<strong>in</strong>istic class of PROFINET IOdevices, known as IRT (Isochr<strong>on</strong>ous Real Time).This is comm<strong>on</strong>ly an ASIC with <strong>in</strong>tegratedswitch <strong>and</strong> other functi<strong>on</strong>ality needed for thePROFINET IO IRT protocol.A PROFINET IO C<strong>on</strong>troller always needs toc<strong>on</strong>nect to a PROFINET IO Device us<strong>in</strong>g anexplicit “C<strong>on</strong>nect” message. After this theC<strong>on</strong>troller downloads startup parameters to thedevice, follow<strong>in</strong>g a h<strong>and</strong>shake verify<strong>in</strong>g that thestartup is successful <strong>and</strong> complete. An <strong>in</strong>truderwish<strong>in</strong>g to establish a c<strong>on</strong>necti<strong>on</strong> to a device, i.e.to act as a sec<strong>on</strong>d master, has to know how thedevice is structured <strong>and</strong> how to <strong>in</strong>itialize itproperly at startup. Based <strong>on</strong> vendor ID <strong>and</strong>device ID it may be possible to f<strong>in</strong>d the GSDMLdescripti<strong>on</strong> file for the device, however if thedevice is modular then know<strong>in</strong>g the truec<strong>on</strong>figurati<strong>on</strong> likely requires physical access ordocumentati<strong>on</strong> about the system.The PROFINET IO protocol furthermorerequires the same I&M functi<strong>on</strong>ality asdescribed for PROFIBUS DP earlier.PROFINET IO devices thus expose the same<strong>in</strong>formati<strong>on</strong> to any<strong>on</strong>e who can access it.At startup the PROFINET IO c<strong>on</strong>troller providesthe vendor ID <strong>and</strong> product ID that is c<strong>on</strong>figuredfor the targeted IO device. The device checks themaster’s expected <strong>in</strong>formati<strong>on</strong> aga<strong>in</strong>st its owndata <strong>and</strong> aborts the c<strong>on</strong>necti<strong>on</strong> request if amismatch occurs.Two potential methods of attack<strong>in</strong>g thecommunicati<strong>on</strong> <strong>in</strong> a PROFINET IO system aredescribed <strong>in</strong> [7]. The authors propose that it maybe possible to modify the outputs of aPROFINET IO Device without be<strong>in</strong>g detectedby either the Device or the C<strong>on</strong>troller.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!