SlideShare a Scribd company logo
1 of 83
Download to read offline
1
Breaking WingOS
Josep Pi Rodriguez
Senior Security Consultant
Josep.rodriguez@ioactive.com
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Agenda
•  Intro to WingOS
•  Scenarios & Attack surface
•  Vulnerabilities
•  Exploitation & Demo
•  Conclusions
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Embedded Linux OS with proprietary modifications in Kernel
•  Created by Motorola. Now property of Extreme networks
•  Architecture Mips N32
•  Used mainly in Wireless AP and Controllers
•  No public information or previous research about its internals
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Web interface.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  CLI.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Devices using WingOS (Extreme networks):
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Devices using WingOS:
•  Motorola devices and Zebra devices
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Devices using WingOS:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Devices using WingOS (Kontron for aircrafts):
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
•  Where you can find these devices?
- Widely used in aircrafts by many airlines around the world
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
https://techworld.idg.se/2.2524/1.644569/wifi-flygplan/sida/2/sida-2
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Intro to WingOS
EN website and case studies you can see that these devices are used in:
- Smart buildings and Smart cities
-  Healthcare
-  Government
-  Small and big enterprise networks
-  Education
-  Retail, Stadiums
-  …
IOActive, Inc. Copyright ©2018. All Rights Reserved.
https://transitwireless.com/wp-content/uploads/2016/04/Motorola-Case-Study-New-York-City-Transit.pdf
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Attack Surface & Scenarios
1.  Aircraft Scenario:
Focused in the remote pre-auth vulnerabilities found
•  Ethernet cable:
- Less likely in an Aircraft
- UDP Services/ Mint Services
•  Wi-Fi ( open Wi-Fi or password protected Wi-Fi)
•  Pivoting from Sat modem to AP (From the ground!)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Attack Surface & Scenarios
Ruben Santamarta
Last call for satcom security
https://www.blackhat.com/us-18/briefings.html#last-call-for-satcom-security
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Attack Surface & Scenarios
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Attack Surface & Scenarios
2. Other scenarios:
Focused in the remote pre-auth vulnerabilities found
•  Connect Ethernet cable directly:
-  More likely with outdoor Access Points but also
possible inside buildings
•  Wi-Fi ( open Wi-Fi or password protected Wi-Fi)
•  Internal network (you are inside the network)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Vulnerabilities
Hidden root shell backdoor
•  From restricted CLI to hidden root shell
•  Attacker perspective. CLI access: Good, Root shell: completely compromised
•  Not critical vuln but very important for the research process
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
Default value in every WingOS
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
The content of the file is passed to the
Following loop
Let’s emulate this loop with Unicorn
Unicorn uses Qemu in the background and allows
You to emulate assembly code for several archs
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
Basically, the content of the file are hex bytes (in ascii)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
Decrypts (RC4) the contents of the file (as hex bytes) with the key
“Hi Sabeena? How’re you doin’? Bye!!”
In this case, the decryption result of the file is the string “password”
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
Get the MAC addr of the device
And does the following operation with MAC:
XX:XX+1:XX+2:XX+3:XX+4:XX+5
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
RC4 decrypt “password” with the key XX:XX+1:XX+2:XX+3:XX+4:XX+5
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
This last block will make sure that
the valid password calculated, will contain only
lower-case letters.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
Different password next time you try to get shell
If password granted:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Hidden root shell backdoor
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth stack overflow
UDP service listening on 0.0.0.0
by default
RIM process (Radio Interface Module)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth stack overflow
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth stack overflow
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth stack overflow
•  Only some old versions vulnerable to this stack
overflow(Let’s see why in a minute).
•  Kontron devices (aircrafts) firmware should be
vulnerable based on info in their website.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth “global” denial of
service
Newest firmware version, stack overflow fixed. But…
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth “global” denial of
service
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote pre-auth “global” denial of
service
Execute the same POC 2 o 3 times killing the RIM process several times and the
whole OS will be rebooted
Watchdog checks if RIM process is running, if not, the whole OS is rebooted.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint Vulnerabilities
Domain 0x32?
Local_mint_addr?
Lots of recvfrom in binaries
IOActive, Inc. Copyright ©2018. All Rights Reserved.
What is Mint?
No much info on the internet
L2/L3 proprietary protocol
Level 1 VLAN
Level 2 IP
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint
L2/L3 proprietary protocol
Proprietary socket address family (AF_MINT) (sys/socket.c sys/socket.h)
Datagram socket
1.  Reverse engineer their kernel to mimic this L2/L3 protocol and build a client
2.  Try to emulate the whole OS/Kernel (Probable, but might be painful)
3.  Find a way to build a client using their OS kernel
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint
Attack scenarios using Mint:
•  Attacker connects its device
to the network or directly to the target
Device (Wireless or Cable)
•  Attacker remotely compromises
a device connected to the network
•  Attack services/AP/Controllers over
Mint services
•  Controllers == Windows DC
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Creating Mint Client:
Mint client:
Inspecting their library usr/lib/python2.7/lib-dynload/_socket.so :
We should be able to import socket and create Mint sockets.
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint
Default config of controller
Standalone AP can also be configured as Controller
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint
Attacker’s device. I want to connect over mint to the Controller(victim)
Now, Controller (victim) sees attacker over mint
And attacker can also connecter over mint to Controller (victim)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Mint Vulnerabilities
Services listening on several ports over L2/L3 protocol
Example of function parsing messages over 1 specific port (HSD process):
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
Memcpy’s src and len user-controlled, dst is heap. Totally controllable:
HSD process, Mint port 14
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
To reach that memcpy in the switch case statement we have to:
First go to case0 of switch statement and we got a restriction
Get_session_by_mac check if the MAC sent in our payload is authenticated
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
To reach that memcpy in the switch case statement we have to:
Luckily we can add a fake MAC to the authenticated list
Another case for the switch case statement allow us that:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
To reach that memcpy in the switch case statement we have to send this:
First, session alloc for our Fake MAC addr
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
To reach that memcpy in the switch case statement we have to send this:
And now we can reach the vulnerable memcpy
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow (mint)
Crash:
/root # gdb
(gdb) attach 1765
Attaching to process 1765
Reading symbols from /usr/sbin/hsd...(no debugging symbols found)...done.
(gdb) c
Continuing.
Program received signal SIGABRT, Aborted.
0x2af26624 in raise () from /lib/libc.so.6
(gdb) bt
#0 0x2af26624 in raise () from /lib/libc.so.6
#1 0x2af28108 in abort () from /lib/libc.so.6
#2 0x2af645b0 in __fsetlocking () from /lib/libc.so.6
#3 0x2af6b620 in malloc_usable_size () from /lib/libc.so.6
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow 2 (mint)
Another Memcpy’s src and len user-controlled, dst is heap. Totally controllable:
HSD process, Mint port 14
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth heap overflow 2 (mint)
Another Memcpy’s src and len user-controlled, dst is heap. Totally controllable:
HSD process, Mint port 14
/root # gdb
(gdb) attach 4820
Attaching to process 4820
Reading symbols from /usr/sbin/hsd...(no debugging symbols found)...done.
(gdb) c
Continuing.
Program received signal SIGABRT, Aborted.
0x2af26624 in raise () from /lib/libc.so.6
(gdb) bt
#0 0x2af26624 in raise () from /lib/libc.so.6
#1 0x2af28108 in abort () from /lib/libc.so.6
#2 0x2af645b0 in __fsetlocking () from /lib/libc.so.6
#3 0x2af6b620 in malloc_usable_size () from /lib/libc.so.6
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth stack overflow (mint)
Stack overflow where user data comes from the previous memcpy vuln.
To overflow the Stack the Heap buffer has to be overflowed as well:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth stack overflow (mint)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth stack overflow (mint)
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Remote Pre-auth stack overflow (mint)
LIBC sanity checks can make it crash before the stack overflow happens
In this case is not a problem as it won’t crash if we trigger the stack overflow “quickly”
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
•  NO ASLR, NO NX, NO STACK CANARIES..
•  Just jump to our shellcode? Nope
•  Cache incoherence problem (well known):
•  MIPS CPU I-Cache D-Cache Instructions, Data
•  Our payload likely will be stored in the D-Cache
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
•  FILL THE D-CACHE TO FLUSH IT (Depends on how big it is)
•  Call a blocking function such as Sleep( ) using ROP
•  The cache will be flushed
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
ROP:
From the epilogue we know the registers that we control at the crash time
IOActive, Inc. Copyright ©2018. All Rights Reserved.
LIBC GADGETS
IOActive, Inc. Copyright ©2018. All Rights Reserved.
SHELLCODE
IOActive, Inc. Copyright ©2018. All Rights Reserved.
SHELLCODE
IOActive, Inc. Copyright ©2018. All Rights Reserved.
SHELLCODE
MIPS N32:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
SHELLCODE
MIPS N32:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
SHELLCODE
MIPS N32 Shellcode:
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
IOActive, Inc. Copyright ©2018. All Rights Reserved.
DEMO
IOActive, Inc. Copyright ©2018. All Rights Reserved.
EXPLOIT
1.  Use your own device (or use compromised one).
2.  Add our Fake MAC addr to the auth list
3.  Overflow the heap with our ROP Gadgets and Shellcode
4.  Stack overflow with the Heap data.
5.  BANG!
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Conclusion
•  Patches provided by extreme networks:
https://gtacknowledge.extremenetworks.com/articles/Vulnerability_Notice/VN-2018-003
IOActive, Inc. Copyright ©2018. All Rights Reserved.
Conclusions
•  Lot of room for improvement in WingOS
•  There are more vulnerabilities in the OS
•  Hopefully, with this lessons learned, most of them will be fixed proactively?
83
Any questions?
Thank You!
josep.rodriguez@ioactive.com
info@ioactive.com

More Related Content

What's hot

Hacking a Professional Drone
Hacking a Professional DroneHacking a Professional Drone
Hacking a Professional DronePriyanka Aash
 
E Snet Authentication Fabric Pilot
E Snet Authentication Fabric PilotE Snet Authentication Fabric Pilot
E Snet Authentication Fabric PilotFNian
 
NetDevOps Developer Environments with Vagrant @ SCALE16x
NetDevOps Developer Environments with Vagrant @ SCALE16xNetDevOps Developer Environments with Vagrant @ SCALE16x
NetDevOps Developer Environments with Vagrant @ SCALE16xHank Preston
 
Kali tools list with short description
Kali tools list with short descriptionKali tools list with short description
Kali tools list with short descriptionJose Moruno Cadima
 
FlexVPNLabHandbook-SAMPLE
FlexVPNLabHandbook-SAMPLEFlexVPNLabHandbook-SAMPLE
FlexVPNLabHandbook-SAMPLETariq Sheikh
 
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONG
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONGCODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONG
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONGCODE BLUE
 
SREcon Europe 2016 - Full-mesh IPsec network at Hosted Graphite
SREcon Europe 2016 - Full-mesh IPsec network at Hosted GraphiteSREcon Europe 2016 - Full-mesh IPsec network at Hosted Graphite
SREcon Europe 2016 - Full-mesh IPsec network at Hosted GraphiteHostedGraphite
 
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...linuxlab_conf
 
Configuring Ip Sec Between A Router And A Pix
Configuring Ip Sec Between A Router And A PixConfiguring Ip Sec Between A Router And A Pix
Configuring Ip Sec Between A Router And A Pixangelitoh11
 
Sergio González - WiFiSlax 4.0 [RootedCON 2010]
Sergio González - WiFiSlax 4.0 [RootedCON 2010]Sergio González - WiFiSlax 4.0 [RootedCON 2010]
Sergio González - WiFiSlax 4.0 [RootedCON 2010]RootedCON
 
Vpn site to site 2 asa qua gpon ftth thực tế
Vpn site to site 2 asa qua gpon ftth thực tếVpn site to site 2 asa qua gpon ftth thực tế
Vpn site to site 2 asa qua gpon ftth thực tếlaonap166
 
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon YangPractical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon YangLyon Yang
 
Breaking Smart Speakers: We are Listening to You.
Breaking Smart Speakers: We are Listening to You.Breaking Smart Speakers: We are Listening to You.
Breaking Smart Speakers: We are Listening to You.Priyanka Aash
 
Triển khai vpn client to site qua router gpon
Triển khai vpn client to site qua router gponTriển khai vpn client to site qua router gpon
Triển khai vpn client to site qua router gponlaonap166
 
2016 TTL Security Gap Analysis with Kali Linux
2016 TTL Security Gap Analysis with Kali Linux2016 TTL Security Gap Analysis with Kali Linux
2016 TTL Security Gap Analysis with Kali LinuxJason Murray
 
Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014Santiago Bassett
 
Threat Con 2021: What's Hitting my Honeypots
Threat Con 2021: What's Hitting my HoneypotsThreat Con 2021: What's Hitting my Honeypots
Threat Con 2021: What's Hitting my HoneypotsAPNIC
 

What's hot (20)

Hacking a Professional Drone
Hacking a Professional DroneHacking a Professional Drone
Hacking a Professional Drone
 
E Snet Authentication Fabric Pilot
E Snet Authentication Fabric PilotE Snet Authentication Fabric Pilot
E Snet Authentication Fabric Pilot
 
NetDevOps Developer Environments with Vagrant @ SCALE16x
NetDevOps Developer Environments with Vagrant @ SCALE16xNetDevOps Developer Environments with Vagrant @ SCALE16x
NetDevOps Developer Environments with Vagrant @ SCALE16x
 
Kali tools list with short description
Kali tools list with short descriptionKali tools list with short description
Kali tools list with short description
 
FlexVPNLabHandbook-SAMPLE
FlexVPNLabHandbook-SAMPLEFlexVPNLabHandbook-SAMPLE
FlexVPNLabHandbook-SAMPLE
 
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONG
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONGCODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONG
CODE BLUE 2014 : Drone attack by malware and network hacking by DONGCHEOL HONG
 
SREcon Europe 2016 - Full-mesh IPsec network at Hosted Graphite
SREcon Europe 2016 - Full-mesh IPsec network at Hosted GraphiteSREcon Europe 2016 - Full-mesh IPsec network at Hosted Graphite
SREcon Europe 2016 - Full-mesh IPsec network at Hosted Graphite
 
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
 
Configuring Ip Sec Between A Router And A Pix
Configuring Ip Sec Between A Router And A PixConfiguring Ip Sec Between A Router And A Pix
Configuring Ip Sec Between A Router And A Pix
 
Tech f42
Tech f42Tech f42
Tech f42
 
Sergio González - WiFiSlax 4.0 [RootedCON 2010]
Sergio González - WiFiSlax 4.0 [RootedCON 2010]Sergio González - WiFiSlax 4.0 [RootedCON 2010]
Sergio González - WiFiSlax 4.0 [RootedCON 2010]
 
Vpn site to site 2 asa qua gpon ftth thực tế
Vpn site to site 2 asa qua gpon ftth thực tếVpn site to site 2 asa qua gpon ftth thực tế
Vpn site to site 2 asa qua gpon ftth thực tế
 
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon YangPractical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
 
Breaking Smart Speakers: We are Listening to You.
Breaking Smart Speakers: We are Listening to You.Breaking Smart Speakers: We are Listening to You.
Breaking Smart Speakers: We are Listening to You.
 
Triển khai vpn client to site qua router gpon
Triển khai vpn client to site qua router gponTriển khai vpn client to site qua router gpon
Triển khai vpn client to site qua router gpon
 
No More Fraud, Astricon, Las Vegas 2014
No More Fraud, Astricon, Las Vegas 2014No More Fraud, Astricon, Las Vegas 2014
No More Fraud, Astricon, Las Vegas 2014
 
Number one-issue-voip-today-fraud
Number one-issue-voip-today-fraudNumber one-issue-voip-today-fraud
Number one-issue-voip-today-fraud
 
2016 TTL Security Gap Analysis with Kali Linux
2016 TTL Security Gap Analysis with Kali Linux2016 TTL Security Gap Analysis with Kali Linux
2016 TTL Security Gap Analysis with Kali Linux
 
Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014
 
Threat Con 2021: What's Hitting my Honeypots
Threat Con 2021: What's Hitting my HoneypotsThreat Con 2021: What's Hitting my Honeypots
Threat Con 2021: What's Hitting my Honeypots
 

Similar to " Breaking Extreme Networks WingOS: How to own millions of devices running on Aircrafts, Government, Smart cities and more." - Josep Pi Rodriguez

The Role of Standards in IoT Security
The Role of Standards in IoT SecurityThe Role of Standards in IoT Security
The Role of Standards in IoT SecurityHannes Tschofenig
 
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...Ivan Kravets
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningCisco DevNet
 
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...CODE BLUE
 
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...RootedCON
 
IoT exploitation: from memory corruption to code execution by Marco Romano
IoT exploitation: from memory corruption to code execution by Marco RomanoIoT exploitation: from memory corruption to code execution by Marco Romano
IoT exploitation: from memory corruption to code execution by Marco RomanoCodemotion
 
IoT exploitation: from memory corruption to code execution - Marco Romano - C...
IoT exploitation: from memory corruption to code execution - Marco Romano - C...IoT exploitation: from memory corruption to code execution - Marco Romano - C...
IoT exploitation: from memory corruption to code execution - Marco Romano - C...Codemotion
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Cisco DevNet
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...Codemotion
 
Leveraging open banking specifications for rigorous API security – What’s in...
Leveraging open banking specifications for rigorous API security –  What’s in...Leveraging open banking specifications for rigorous API security –  What’s in...
Leveraging open banking specifications for rigorous API security – What’s in...Rogue Wave Software
 
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...Anne Nicolas
 
103 Basic network concepts
103 Basic network concepts103 Basic network concepts
103 Basic network conceptsSsendiSamuel
 
Hacking intranet websites
Hacking intranet websitesHacking intranet websites
Hacking intranet websitesshehab najjar
 
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationHiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationMargarethaErber
 
Hack In Paris 2011 - Practical Sandboxing
Hack In Paris 2011 - Practical SandboxingHack In Paris 2011 - Practical Sandboxing
Hack In Paris 2011 - Practical SandboxingTom Keetch
 
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis Phil Tully
 
Cooking security sans@night
Cooking security sans@nightCooking security sans@night
Cooking security sans@nightjtimberman
 

Similar to " Breaking Extreme Networks WingOS: How to own millions of devices running on Aircrafts, Government, Smart cities and more." - Josep Pi Rodriguez (20)

The Role of Standards in IoT Security
The Role of Standards in IoT SecurityThe Role of Standards in IoT Security
The Role of Standards in IoT Security
 
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
swampUP: Over-The-Air (OTA) firmware upgrades for Internet of Things devices ...
 
OpUtils webinar
OpUtils webinarOpUtils webinar
OpUtils webinar
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listening
 
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...
[CB19] MalConfScan with Cuckoo: Automatic Malware Configuration Extraction Sy...
 
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...
J. Daniel Martínez - IoP: The Internet of Planes / Hacking millionaires jet c...
 
IoT exploitation: from memory corruption to code execution by Marco Romano
IoT exploitation: from memory corruption to code execution by Marco RomanoIoT exploitation: from memory corruption to code execution by Marco Romano
IoT exploitation: from memory corruption to code execution by Marco Romano
 
IoT exploitation: from memory corruption to code execution - Marco Romano - C...
IoT exploitation: from memory corruption to code execution - Marco Romano - C...IoT exploitation: from memory corruption to code execution - Marco Romano - C...
IoT exploitation: from memory corruption to code execution - Marco Romano - C...
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...
Fernando Arnaboldi - Exposing Hidden Exploitable Behaviors Using Extended Dif...
 
Leveraging open banking specifications for rigorous API security – What’s in...
Leveraging open banking specifications for rigorous API security –  What’s in...Leveraging open banking specifications for rigorous API security –  What’s in...
Leveraging open banking specifications for rigorous API security – What’s in...
 
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...
Kernel Recipes 2018 - Mitigating Spectre and Meltdown (and L1TF) - David Wood...
 
103 Basic network concepts
103 Basic network concepts103 Basic network concepts
103 Basic network concepts
 
Hacking intranet websites
Hacking intranet websitesHacking intranet websites
Hacking intranet websites
 
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationHiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
 
Hack In Paris 2011 - Practical Sandboxing
Hack In Paris 2011 - Practical SandboxingHack In Paris 2011 - Practical Sandboxing
Hack In Paris 2011 - Practical Sandboxing
 
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis
StringSifter: Learning to Rank Strings Output for Speedier Malware Analysis
 
Cooking security sans@night
Cooking security sans@nightCooking security sans@night
Cooking security sans@night
 

Recently uploaded

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Recently uploaded (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

" Breaking Extreme Networks WingOS: How to own millions of devices running on Aircrafts, Government, Smart cities and more." - Josep Pi Rodriguez

  • 1. 1 Breaking WingOS Josep Pi Rodriguez Senior Security Consultant Josep.rodriguez@ioactive.com
  • 2. IOActive, Inc. Copyright ©2018. All Rights Reserved. Agenda •  Intro to WingOS •  Scenarios & Attack surface •  Vulnerabilities •  Exploitation & Demo •  Conclusions
  • 3. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Embedded Linux OS with proprietary modifications in Kernel •  Created by Motorola. Now property of Extreme networks •  Architecture Mips N32 •  Used mainly in Wireless AP and Controllers •  No public information or previous research about its internals
  • 4. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS
  • 5. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Web interface.
  • 6. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  CLI.
  • 7. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Devices using WingOS (Extreme networks):
  • 8. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Devices using WingOS: •  Motorola devices and Zebra devices
  • 9. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Devices using WingOS:
  • 10. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Devices using WingOS (Kontron for aircrafts):
  • 11. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS •  Where you can find these devices? - Widely used in aircrafts by many airlines around the world
  • 12. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS https://techworld.idg.se/2.2524/1.644569/wifi-flygplan/sida/2/sida-2
  • 13. IOActive, Inc. Copyright ©2018. All Rights Reserved. Intro to WingOS EN website and case studies you can see that these devices are used in: - Smart buildings and Smart cities -  Healthcare -  Government -  Small and big enterprise networks -  Education -  Retail, Stadiums -  …
  • 14. IOActive, Inc. Copyright ©2018. All Rights Reserved. https://transitwireless.com/wp-content/uploads/2016/04/Motorola-Case-Study-New-York-City-Transit.pdf
  • 15. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 16. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 17. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 18. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 19. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 20. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 21. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 22. IOActive, Inc. Copyright ©2018. All Rights Reserved.
  • 23. IOActive, Inc. Copyright ©2018. All Rights Reserved. Attack Surface & Scenarios 1.  Aircraft Scenario: Focused in the remote pre-auth vulnerabilities found •  Ethernet cable: - Less likely in an Aircraft - UDP Services/ Mint Services •  Wi-Fi ( open Wi-Fi or password protected Wi-Fi) •  Pivoting from Sat modem to AP (From the ground!)
  • 24. IOActive, Inc. Copyright ©2018. All Rights Reserved. Attack Surface & Scenarios Ruben Santamarta Last call for satcom security https://www.blackhat.com/us-18/briefings.html#last-call-for-satcom-security
  • 25. IOActive, Inc. Copyright ©2018. All Rights Reserved. Attack Surface & Scenarios
  • 26. IOActive, Inc. Copyright ©2018. All Rights Reserved. Attack Surface & Scenarios 2. Other scenarios: Focused in the remote pre-auth vulnerabilities found •  Connect Ethernet cable directly: -  More likely with outdoor Access Points but also possible inside buildings •  Wi-Fi ( open Wi-Fi or password protected Wi-Fi) •  Internal network (you are inside the network)
  • 27. IOActive, Inc. Copyright ©2018. All Rights Reserved. Vulnerabilities Hidden root shell backdoor •  From restricted CLI to hidden root shell •  Attacker perspective. CLI access: Good, Root shell: completely compromised •  Not critical vuln but very important for the research process
  • 28. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor
  • 29. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor
  • 30. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor Default value in every WingOS
  • 31. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor The content of the file is passed to the Following loop Let’s emulate this loop with Unicorn Unicorn uses Qemu in the background and allows You to emulate assembly code for several archs
  • 32. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor
  • 33. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor Basically, the content of the file are hex bytes (in ascii)
  • 34. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor Decrypts (RC4) the contents of the file (as hex bytes) with the key “Hi Sabeena? How’re you doin’? Bye!!” In this case, the decryption result of the file is the string “password”
  • 35. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor Get the MAC addr of the device And does the following operation with MAC: XX:XX+1:XX+2:XX+3:XX+4:XX+5
  • 36. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor RC4 decrypt “password” with the key XX:XX+1:XX+2:XX+3:XX+4:XX+5
  • 37. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor This last block will make sure that the valid password calculated, will contain only lower-case letters.
  • 38. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor Different password next time you try to get shell If password granted:
  • 39. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor
  • 40. IOActive, Inc. Copyright ©2018. All Rights Reserved. Hidden root shell backdoor
  • 41. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth stack overflow UDP service listening on 0.0.0.0 by default RIM process (Radio Interface Module)
  • 42. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth stack overflow
  • 43. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth stack overflow
  • 44. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth stack overflow •  Only some old versions vulnerable to this stack overflow(Let’s see why in a minute). •  Kontron devices (aircrafts) firmware should be vulnerable based on info in their website.
  • 45. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth “global” denial of service Newest firmware version, stack overflow fixed. But…
  • 46. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth “global” denial of service
  • 47. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote pre-auth “global” denial of service Execute the same POC 2 o 3 times killing the RIM process several times and the whole OS will be rebooted Watchdog checks if RIM process is running, if not, the whole OS is rebooted.
  • 48. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint Vulnerabilities Domain 0x32? Local_mint_addr? Lots of recvfrom in binaries
  • 49. IOActive, Inc. Copyright ©2018. All Rights Reserved. What is Mint? No much info on the internet L2/L3 proprietary protocol Level 1 VLAN Level 2 IP
  • 50. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint L2/L3 proprietary protocol Proprietary socket address family (AF_MINT) (sys/socket.c sys/socket.h) Datagram socket 1.  Reverse engineer their kernel to mimic this L2/L3 protocol and build a client 2.  Try to emulate the whole OS/Kernel (Probable, but might be painful) 3.  Find a way to build a client using their OS kernel
  • 51. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint Attack scenarios using Mint: •  Attacker connects its device to the network or directly to the target Device (Wireless or Cable) •  Attacker remotely compromises a device connected to the network •  Attack services/AP/Controllers over Mint services •  Controllers == Windows DC
  • 52. IOActive, Inc. Copyright ©2018. All Rights Reserved. Creating Mint Client: Mint client: Inspecting their library usr/lib/python2.7/lib-dynload/_socket.so : We should be able to import socket and create Mint sockets.
  • 53. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint Default config of controller Standalone AP can also be configured as Controller
  • 54. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint Attacker’s device. I want to connect over mint to the Controller(victim) Now, Controller (victim) sees attacker over mint And attacker can also connecter over mint to Controller (victim)
  • 55. IOActive, Inc. Copyright ©2018. All Rights Reserved. Mint Vulnerabilities Services listening on several ports over L2/L3 protocol Example of function parsing messages over 1 specific port (HSD process):
  • 56. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) Memcpy’s src and len user-controlled, dst is heap. Totally controllable: HSD process, Mint port 14
  • 57. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) To reach that memcpy in the switch case statement we have to: First go to case0 of switch statement and we got a restriction Get_session_by_mac check if the MAC sent in our payload is authenticated
  • 58. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) To reach that memcpy in the switch case statement we have to: Luckily we can add a fake MAC to the authenticated list Another case for the switch case statement allow us that:
  • 59. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) To reach that memcpy in the switch case statement we have to send this: First, session alloc for our Fake MAC addr
  • 60. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) To reach that memcpy in the switch case statement we have to send this: And now we can reach the vulnerable memcpy
  • 61. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow (mint) Crash: /root # gdb (gdb) attach 1765 Attaching to process 1765 Reading symbols from /usr/sbin/hsd...(no debugging symbols found)...done. (gdb) c Continuing. Program received signal SIGABRT, Aborted. 0x2af26624 in raise () from /lib/libc.so.6 (gdb) bt #0 0x2af26624 in raise () from /lib/libc.so.6 #1 0x2af28108 in abort () from /lib/libc.so.6 #2 0x2af645b0 in __fsetlocking () from /lib/libc.so.6 #3 0x2af6b620 in malloc_usable_size () from /lib/libc.so.6
  • 62. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow 2 (mint) Another Memcpy’s src and len user-controlled, dst is heap. Totally controllable: HSD process, Mint port 14
  • 63. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth heap overflow 2 (mint) Another Memcpy’s src and len user-controlled, dst is heap. Totally controllable: HSD process, Mint port 14 /root # gdb (gdb) attach 4820 Attaching to process 4820 Reading symbols from /usr/sbin/hsd...(no debugging symbols found)...done. (gdb) c Continuing. Program received signal SIGABRT, Aborted. 0x2af26624 in raise () from /lib/libc.so.6 (gdb) bt #0 0x2af26624 in raise () from /lib/libc.so.6 #1 0x2af28108 in abort () from /lib/libc.so.6 #2 0x2af645b0 in __fsetlocking () from /lib/libc.so.6 #3 0x2af6b620 in malloc_usable_size () from /lib/libc.so.6
  • 64. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth stack overflow (mint) Stack overflow where user data comes from the previous memcpy vuln. To overflow the Stack the Heap buffer has to be overflowed as well:
  • 65. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth stack overflow (mint)
  • 66. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth stack overflow (mint)
  • 67. IOActive, Inc. Copyright ©2018. All Rights Reserved. Remote Pre-auth stack overflow (mint) LIBC sanity checks can make it crash before the stack overflow happens In this case is not a problem as it won’t crash if we trigger the stack overflow “quickly”
  • 68. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT •  NO ASLR, NO NX, NO STACK CANARIES.. •  Just jump to our shellcode? Nope •  Cache incoherence problem (well known): •  MIPS CPU I-Cache D-Cache Instructions, Data •  Our payload likely will be stored in the D-Cache
  • 69. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT
  • 70. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT •  FILL THE D-CACHE TO FLUSH IT (Depends on how big it is) •  Call a blocking function such as Sleep( ) using ROP •  The cache will be flushed
  • 71. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT ROP: From the epilogue we know the registers that we control at the crash time
  • 72. IOActive, Inc. Copyright ©2018. All Rights Reserved. LIBC GADGETS
  • 73. IOActive, Inc. Copyright ©2018. All Rights Reserved. SHELLCODE
  • 74. IOActive, Inc. Copyright ©2018. All Rights Reserved. SHELLCODE
  • 75. IOActive, Inc. Copyright ©2018. All Rights Reserved. SHELLCODE MIPS N32:
  • 76. IOActive, Inc. Copyright ©2018. All Rights Reserved. SHELLCODE MIPS N32:
  • 77. IOActive, Inc. Copyright ©2018. All Rights Reserved. SHELLCODE MIPS N32 Shellcode:
  • 78. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT
  • 79. IOActive, Inc. Copyright ©2018. All Rights Reserved. DEMO
  • 80. IOActive, Inc. Copyright ©2018. All Rights Reserved. EXPLOIT 1.  Use your own device (or use compromised one). 2.  Add our Fake MAC addr to the auth list 3.  Overflow the heap with our ROP Gadgets and Shellcode 4.  Stack overflow with the Heap data. 5.  BANG!
  • 81. IOActive, Inc. Copyright ©2018. All Rights Reserved. Conclusion •  Patches provided by extreme networks: https://gtacknowledge.extremenetworks.com/articles/Vulnerability_Notice/VN-2018-003
  • 82. IOActive, Inc. Copyright ©2018. All Rights Reserved. Conclusions •  Lot of room for improvement in WingOS •  There are more vulnerabilities in the OS •  Hopefully, with this lessons learned, most of them will be fixed proactively?