Security fundamentals and ROS security Bernhard Dieber, Sebastian - - PowerPoint PPT Presentation

security fundamentals and ros security
SMART_READER_LITE
LIVE PREVIEW

Security fundamentals and ROS security Bernhard Dieber, Sebastian - - PowerPoint PPT Presentation

Security fundamentals and ROS security Bernhard Dieber, Sebastian Taurer ROBOTICS Institute for Robotics and Mechatronics JOANNEUM RESEARCH Klagenfurt am W orthersee, Austria 01.10.2018 www.joanneum.at/robotics THE INNOVATION COMPANY


slide-1
SLIDE 1

Security fundamentals and ROS security

Bernhard Dieber, Sebastian Taurer

ROBOTICS – Institute for Robotics and Mechatronics JOANNEUM RESEARCH Klagenfurt am W¨

  • rthersee, Austria

01.10.2018

www.joanneum.at/robotics

THE INNOVATION COMPANY

slide-2
SLIDE 2

Table of contents

1

ROBOTICS Security basics ROS (in)security Attacks on ROS Videos ROSPenTo Demonstration

THE INNOVATION COMPANY

slide-3
SLIDE 3

Institute for Robotics and Mechatronics

2

Founded 2015 Focus on industrial robotics and mechatronics https://www.joanneum. at/robotics 45 researchers in 2021 in 3 groups

Mechatronic Systems Robot Systems Cognitive Robotics

[Taurer et al., 2018]

THE INNOVATION COMPANY

slide-4
SLIDE 4

Cyber threats in robotics

3

Classically, robots have worked in isolation Modern robots work in highly interconnected environments Industry-grade robots are not harmless machines Robots pose risks to property and life Insecure robots may be manipulated remotely Industrial security is breached frequently [Byres et al., 2004, Cheminod et al., 2013, Stouffer et al., 2015, Karnouskos, 2011, Nelson, 2016, Fairley, 2016]

THE INNOVATION COMPANY

slide-5
SLIDE 5

CIA+: The security objectives

4

Confidentiality

Only the intended recipients can read data Hide the contents of messages from third-party observers Enabled by: Encryption

Integrity

Prevent data from being tampered/modified by a third party Prevent spoofing/masquerading and the so called ”man in the middle” attacks Enabled by: Integrity checks, hashes

Authenticity

A given entity’s claimed identity can be proven Enabled by: Certificates, digital signatures

Availability

Ensure that the system is working within defined boundaries

THE INNOVATION COMPANY

slide-6
SLIDE 6

CIA priorities

5

In production, the priorities are reversed compared to the classical

  • ffice environment. Availability is key!

Prio Office environment Production environment 1 Confidentiality Availability 2 Integrity Integrity 3 Availability Confidentiality

THE INNOVATION COMPANY

slide-7
SLIDE 7

ROS1 security issues

6

ROS has no built-in security [McClean et al., 2013] Missing authentication, authorization and confidentiality functions ROS is an easy target

Exploit XMLRPC-API Use stealth publisher attack to inject data or isolate subscribers Use service isolation for DoS Use malicious parameter attack to manipulate parametrization for individual nodes

THE INNOVATION COMPANY

slide-8
SLIDE 8

Master API1

7

XMLRPC API to interact with ROS master Enables discovering publishers and services getSystemState → get overview of whole network lookupNode → get URI of specific node lookupService → get URI of specific service register{Subscriber,Publisher} → subscribe, advertise unregister{Subscriber,Publisher} → unsubscribe, unadvertise No authentication/authorization

1http://wiki.ros.org/ROS/Master_API

THE INNOVATION COMPANY

slide-9
SLIDE 9

Node API2

8

Communication mainly node2node (some Master→Node calls) publisherUpdate → send update on available publisers requestTopic → perform subscription paramUpdate → send new parameter server values shutdown → kill node No authentication/authorization After XMLRPC-handshake, topic communication is done using a binary wire protocol (unencrypted)

2http://wiki.ros.org/ROS/Slave_API

THE INNOVATION COMPANY

slide-10
SLIDE 10

Communication structure in ROS

9

THE INNOVATION COMPANY

slide-11
SLIDE 11

M P S A

getSystemState, caller id [1, statusMessage, [ [topic, [P]] [topic, [S]] [] ]] lookupNode, caller id, S [1, statusMessage, sURI] lookupNode, caller id, P [1, statusMessage, pURI] Phase 1 Phase 1

Prepare attack Figure: Sequence diagram of a Stealth Publisher Attack

THE INNOVATION COMPANY

slide-12
SLIDE 12

P S A

publisherUpdate, ”/master”, topic, [aURI] [1,statusMessage, 0] requestTopic, S, topic, ”TCPROS” requestTopic, S, topic, ”TCPROS” [1,statusMessage,[”TCPROS”, pHost, pPort]] [1,statusMessage,[”TCPROS”, aHost, aPort]] TCPROS header hS TCPROS header hS TCPROS header hP TCPROS header hP Topic message Phase 2 Phase 2

Run attack

THE INNOVATION COMPANY

slide-13
SLIDE 13

C M S A

getSystemState, ”caller” [1, ”current system state”, [ [] [] [service, [S]] ]] lookupService, ”caller”, service [1,”rosrpc URI:” service-URI, service-URI] unregisterService,S, service, service-URI 1,”Unregistered ” S ” as provider of ” service, 1 TCPROS-Header TCPROS-Header Service-Request Service-Response lookupService, C, service [-1, ”no provider”, ””]

Figure: Sequence diagram of a Service Isolation Attack

THE INNOVATION COMPANY

slide-14
SLIDE 14

M N A

subscribeParam, caller id, nURI, ”param1” [1,statusMessage, param1Value] getParam, callerid, paramKey [1,statusMessage, param1Value] lookupNode, callerid, N [1, statusMessage, nURI] unsubscribeParam, N, nURI, paramKey [1, statusMessage, numUnsubscribed] paramUpdate, ”/master”, paramKey, newValue [1,” ”, 0]

Figure: Sequence diagram of a malicious parameter update attack

THE INNOVATION COMPANY

slide-15
SLIDE 15

Some Videos

14

Disabling safety functions Disturbing a MiR robot

THE INNOVATION COMPANY

slide-16
SLIDE 16

ROSPenTo

15

Penetration testing tool for ROS https://github.com/jr-robotics/ROSPenTo Analyze multiple ROS networks Reroute communication Isolate services Manipulate parameters Alternative: roschaos Countermeasures: [Dieber et al., 2017, White et al., 2016], http://secure-ros.csl.sri.com/ Video

THE INNOVATION COMPANY

slide-17
SLIDE 17

References I

16 Byres, E., Dr, P. E., & Hoffman, D. (2004). The myths and facts behind cyber security risks for industrial control systems. In In Proc. of VDE Kongress. Cheminod, M., Durante, L., & Valenzano, A. (2013). Review of security issues in industrial networks. Industrial Informatics, IEEE Transactions on, 9(1), 277–293. Dieber, B., Breiling, B., Taurer, S., Kacianka, S., Rass, S., & Schartner, P. (2017). Security for the robot operating system. Robotics and Autonomous Systems, 98, 192–203. Fairley, P. (2016). Cybersecurity at u.s. utilities due for an upgrade: Tech to detect intrusions into industrial control systems will be mandatory [news]. IEEE Spectrum, 53(5), 11–13. Karnouskos, S. (2011). Stuxnet worm impact on industrial cyber-physical system security. In 37th Annual Conference of the IEEE Industrial Electronics Society (IECON 2011) (pp. 4490–4494). McClean, J., Stull, C., Farrar, C., & MascareÃśas, D. (2013). A preliminary cyber-physical security assessment of the robot operating system (ros). In Proc. SPIE, volume 8741 (pp. 874110–874110–8).

THE INNOVATION COMPANY

slide-18
SLIDE 18

References II

17 Nelson, N. (2016). The Impact of Dragonfly Malware on Industrial Control Systems. Technical report, SANS Institute. Stouffer, K., Pillitteri, V., Lightman, S., Abrams, M., & Hahn, A. (2015). Guide to Industrial Control Systems (ICS) Security. Technical report, National Institute of Standards and Technology. NIST Special Publication 800-82, Revision 2. Taurer, S., Dieber, B., & Schartner, P. (2018). Secure data recording and bio-inspired functional integrity for intelligent robots. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2018). White, R., Christensen, H., & Quigley, M. (2016). Sros: Securing ros over the wire, in the graph, and through the kernel. In Proceedings of the IEEE-RAS International Conference on Humanoid Robots (HUMANOIDS).

THE INNOVATION COMPANY