SlideShare a Scribd company logo
A Million Little Tracking Devices
Turning Embedded Devices into
Weapons




                                donb@isecpartners.com
                                   @DonAndrewBailey
whois donb?
Places I’ve been in the past 24 hours
•   Boston
•   Afghanistan
•   Libya
•   The White House
And I can prove it!
So what’s this b.s. all about, donb?
Zoombak “Advanced GPS Tracker”
•   Sold in over 12,500 stores nation wide
•   Easy to use (iPhone, Android, Blackberry)
•   2x as big as your 6th Generation iPod Nano
•   Track your…
    ▫   Car
    ▫   Family
    ▫   Pet
    ▫   Valuables
Even Oprah Loves Zoombak
What is the Device composed of?
Modular design
•   GSM module
•   GPS module
•   Application “microcomputer”
•   T-Mobile SIM Card
GSM Module
• Siemens 0682
 ▫ Infineon Baseband
 ▫ Skyworks 7750 RF Tx

• Controlled via USART
 ▫ AT Commands!

• No shared memory!
GPS Module
• GR-520 GPS Module
• Not that interesting
• Acquires GPS!!!
Application uC
• Renesas SH7721/7300 Microcomputer Platform
• Fairly robust uC platform
• Application processor unknown
 ▫ But, probably one of the common realtime uC OS
 ▫ Likely, Java
 ▫ Or something….
But wait! Donb, don’t you know?!?
I don’t have to know…
A Quick Aside about Siemens 0682
• Attaching to OpenBTS
 ▫ Using Malaysian Test SIM cards (001/01)

• The Zoombak (Siemens) claims A5/2 capability
 ▫ And only A5/2

• The Zoombak accesses GPRS
 ▫ Presumably using A5/2

• T-Mobile allows A5/2 on GPRS in the USA?
 ▫ This shouldn‟t happen
How does Zoombak work?
It’s all about the Customer Experience
•   Log into the Web2.0 interface
•   Select the desired tracking device
•   Click “find now”
•   Wait for the embedded map to update
•   Enjoy the map
•   GOTO 10
How does the device work?
The Control Channel
• Commands are received via SMS
 ▫ 8bit binary messages
• Application polls SIM for SMS
• Application receives command
 ▫ Parses binary SMS
 ▫ Extracts command
PDU Breakdown
• “gOnDLocate”
 ▫ Represents an incoming location request
• “Loc34-gfqgyl9f”
 ▫ Location ID (nonce)
• 0x43 0xCA 0xED 0x70
 ▫ 67.202.237.112 ???
So, the Location Request…
• Defines where the device should connect
 ▫ IPv4 Address

• Defines what the device should send
 ▫ Nonce
Okay, but what does a response look like?
Back to the Logic Analyzer
•   Log into Zoombak‟s Web2.0 GUI
•   Send a valid request to the Device
•   Sniff the AT commands between App -> GSM
•   Watch what the device does
Seriously?!?
• The GSM Module accepts AT commands to
  ▫ Connect to a specific host AND port
  ▫ Over TCP/IP
  ▫ Send/Receive data

• Zero confidentiality!
Lets Diverge, Shall We?
• GSM baseband attacks are a Serious Issue ™
• The baseband attack surface was
 ▫ Thought to be small
 ▫ RF oriented
 ▫ Localized
• But, wait! Remote baseband compromise?
 ▫ Embedded TCP/IP stack
 ▫ Small code base (small flash space)
Attack Scenario
• For any baseband with embedded TCP/IP capability
• Force AT commands to connect to Host:Port
• Implement attack against TCP/IP stack
  ▫ IP header length
  ▫ TCP payload length
  ▫ Fragments
• Get persistent compromise in the baseband
• Force GPRS traffic over a specific APN/IP
• Evade Application Flash Updates
  ▫ No need to backdoor the App when the Baseband is
    backdoored
• Similar to BIOS backdoors for PC
Okay, back to the payload.
First Response Payload Format
•   Nonce
•   Version stuff
•   Sender‟s phone number (MSISDN)
•   Number of location data segments
•   Time stamp
•   Cellular data
    ▫ Location Area Code (LAC), Cell ID, MCC, MNC,
      RSSI
    ▫ This is the „A‟ in A-GPS
Second Response Payload Format
•   Nonce
•   Version stuff
•   Sender‟s phone number (MSISDN)
•   Number of location data segments
•   GPS data (latitude, long)
    ▫ If available
• Time stamp
Let’s use Open Cell ID
• Online database of cellular towers
• Includes
 ▫   MCC
 ▫   MNC
 ▫   Cell ID
 ▫   LAC
 ▫   Geo Location (Latitude, Longitude)
So, now we know…
• How to control the device
 ▫ Presumably via IP in SMS
• What a response looks like
 ▫ Standard HTTP POST
• Where the data is sent
 ▫ Zoombak server on port 7276
• What network its sent to
 ▫ cidagps.t-mobile.com
What’s next?
“Dogggg will hunt!!” – Les Claypool
Piece it together!
• SMS service like Routomessaging
 ▫ Send binary SMS for fractions of a cent
 ▫ Scriptable over SMPP
 ▫ Combine with crontab -> Win!
• Edit a valid payload
 ▫ Change Zoombak‟s IP to Your IP
 ▫ Ship the SMS
• Wait on port 7276
So, we know we can intercept.
   But, can we find devices?
Enter, War Texting
• Spam thousands of numbers with our SMS
  payload
• Wait patiently, serving on port 7276
• Log all incoming requests
• Analyze location data
 ▫ Interesting targets?
War Texting – The reality
• SMS spam is a huge problem
• Too many messages too fast = blocked
 ▫ Average one message per 20 seconds
 ▫ Slightly change payload
      Alter Nonce with every message
• Don‟t increment through MSISDN
 ▫ Randomize from a set of targets
• Don‟t spam all MSISDN
 ▫ Look for the device‟s profile first
Building an Easy Device Profile
• Incoming calls are disabled
• All devices are T-Mobile
• SMS is enabled
• NPA/NXX are typically not associated with
  location of purchase
• Use HLR to find devices that are “never home”
• Caller ID is always “Unavailable”
• Use HLR to find devices that are turned on
    ▫ „Off‟ devices are „Absent Subscriber‟
Profiling is Less Intrusive
• Profiling is simply reconnaissance
• Perform many normal actions
  ▫ To create an abnormal result
• Effect?
  ▫   Generated list of potential fits
  ▫   Less people spammed
  ▫   Less provider hate for our SMS
  ▫   More low key
So, we can find and target users.
 But, can we impersonate them?
Of course!
•   Response payloads have no confidentiality
•   Pure HTTP
•   We can forge RSSI
•   GPS data can be forged easily
    ▫ Yay for on-line maps and Google Earth!
The Assisted in Assisted GPS
• Doesn‟t mean „Assisting You‟
 ▫ It means „Assisting Them‟

• Obviously, known LAC/CI pairs should indicate
  potentially bad GPS data (or vice versa)

• Selling LAC/CI is big $ in the Location Research
  markets
We hit the Trifecta
We can now…
• Discover random tracking devices
 ▫ Device Profiling and War Texting

• Force location interception
 ▫ SMS Control Spoofing and GPRS Abuse

• Impersonate compromised targets
 ▫ SMS Access, GPRS Abuse, and Client Spoofing
What attacks can be performed?
• This is an issue of thinking like an attacker

• Discover and monitor targets over time
• Assess highly desirable targets
• Strategic planning through behavioral analysis
What can be done to fix these problems?
Currently, they are…
• Using T-Mobile to do things “the wrong way”
 ▫ “Non-Geographic Test Number” NPA/NXX
    As of February 2011
    Not active in Number Portability Administration
    Blocks SMS from services like RoutoMessaging
     (temporarily?)
 ▫ GPRS PDP Context Switching
    Drop different types of devices into different
     networks
But, they should be…
• Not relying on the control message
  ▫ Why embed an IPv4 address at all?
• Not implementing confidentiality and integrity
  ▫ T-Mobile sends encrypted SMS to update SIMs, why
    can‟t Zoombak do the same for the App?
• Disallowing software from talking to non-Zoombak
  resources
  ▫ Force all network traffic through to Zoombak systems
    on the network
• Using HLR to assess potential spoofing/abuse
  ▫ Dead technique unless T-Mobile exports this
Carmen’s Success is Zoombak’s Failure
Remember Carmen Sandiego?
• Research presented with Nick DePetrillo
  (Crucial Security / Harris Corporation)
• Tracking via HLR access
• Only a Phone Number is required
Carmen Succeeded!
•   T-Mobile HLR requests now fail
•   Random MSC values from a static set of N
•   No more T-Mobile tracking
•   All major GSM providers in the USA are now
    secure
Bad for Zoombak
• No Location Data to compare to
• The device‟s response must be trusted
• HLR can‟t prove error / manipulations
What Lessons can we Learn?
Embedded Security is Hard
• Weak security surface
• Vast threat surface
• Many “moving parts” to maintain
 ▫   Baseband
 ▫   GPS firmware
 ▫   Application firmware
 ▫   SIM software/keys/etc
• The days of obfuscating your product are over
 ▫ No plastic / epoxy / silicon for me
It’s also a Function of $
• Decreased production cost
• Increased functionality
 ▫ Zigbee/802.15.4/Z-Wave
 ▫ RFID/NFC
 ▫ DECT
• Increased application space
 ▫ More production = decreased cost to user
What’s the next Killer App?
• Urban Traffic Control systems
 ▫ Controlled over GSM
• SCADA sensors
 ▫ Controlled over GSM / SMS
• Generic user devices
 ▫ Kindles, iPads, etc
• Children‟s toys (IM-ME) capable of GSM
 ▫ IM-ME has a 26MHz clock and can (sort of) do
   GSM-850
Well… Remember the last person that
       made Oprah look bad?
Yeah, me either.
Thanks For All The Fish!
•   Nick DePetrillo    •   Luis Miras
•   Chris Eng          •   David Munson
•   Travis Goodspeed   •   Mike Ossmann
•   Andreas Junestam   •   Eric Schneider
•   Mike Kershaw       •   Alex Stamos
•   Zane Lackey        •   Scott Stender
•   Patrick McCanna    •   David Thiel
“We ain’t hard 2 find” – 2pac




 donb@isecpartners.com
   @DonAndrewBailey

More Related Content

Similar to Don Bailey - A Million Little Tracking Devices

Attacking GRX - GPRS Roaming eXchange
Attacking GRX - GPRS Roaming eXchangeAttacking GRX - GPRS Roaming eXchange
Attacking GRX - GPRS Roaming eXchange
P1Security
 
How to deliver rich, real-time apps - AppsWorld 2014
How to deliver rich, real-time apps - AppsWorld 2014How to deliver rich, real-time apps - AppsWorld 2014
How to deliver rich, real-time apps - AppsWorld 2014
Andy Piper
 
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
qqlan
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Positive Hack Days
 
Programming for the Internet of Things
Programming for the Internet of ThingsProgramming for the Internet of Things
Programming for the Internet of Things
Kinoma
 
How to Hack a Telecom and Stay Alive
How to Hack a Telecom and Stay AliveHow to Hack a Telecom and Stay Alive
How to Hack a Telecom and Stay Alive
Positive Hack Days
 
Root via sms. 4G security assessment
Root via sms. 4G security assessment Root via sms. 4G security assessment
Root via sms. 4G security assessment
Sergey Gordeychik
 
Infrastructure API Lightning Talk by Jeremy Pollard of box.com
Infrastructure API Lightning Talk by Jeremy Pollard of box.comInfrastructure API Lightning Talk by Jeremy Pollard of box.com
Infrastructure API Lightning Talk by Jeremy Pollard of box.com
DevOps4Networks
 
Terminal-based Mobile Positioning overview
Terminal-based Mobile Positioning overviewTerminal-based Mobile Positioning overview
Terminal-based Mobile Positioning overview
Jaak Laineste
 
Data Packet Evolution - Mobinil
Data Packet Evolution - MobinilData Packet Evolution - Mobinil
Data Packet Evolution - Mobinil
Mohamed Sahl
 
Sergey Gordeychik - How to hack a telecom and stay alive
Sergey Gordeychik - How to hack a telecom and stay aliveSergey Gordeychik - How to hack a telecom and stay alive
Sergey Gordeychik - How to hack a telecom and stay alive
DefconRussia
 
How to hack a telecom and stay alive
How to hack a telecom and stay aliveHow to hack a telecom and stay alive
How to hack a telecom and stay alive
qqlan
 
How to hack a telecommunication company and stay alive. Sergey Gordeychik
How to hack a telecommunication company and stay alive. Sergey GordeychikHow to hack a telecommunication company and stay alive. Sergey Gordeychik
How to hack a telecommunication company and stay alive. Sergey Gordeychik
Positive Hack Days
 
Backdooring a car
Backdooring a carBackdooring a car
Backdooring a car
Alexey Sintsov
 
Rich, Real-time Mobile User Experiences @Devoxx UK
Rich, Real-time Mobile User Experiences @Devoxx UKRich, Real-time Mobile User Experiences @Devoxx UK
Rich, Real-time Mobile User Experiences @Devoxx UK
Andy Piper
 
2012 12-04 --ncc_group_-_mobile_threat_war_room
2012 12-04 --ncc_group_-_mobile_threat_war_room2012 12-04 --ncc_group_-_mobile_threat_war_room
2012 12-04 --ncc_group_-_mobile_threat_war_room
NCC Group
 
Dmk blackops2006
Dmk blackops2006Dmk blackops2006
Dmk blackops2006
Dan Kaminsky
 
4G to 5G: New Attacks
4G to 5G: New Attacks4G to 5G: New Attacks
4G to 5G: New Attacks
3G4G
 
Big Data Approaches to Cloud Security
Big Data Approaches to Cloud SecurityBig Data Approaches to Cloud Security
Big Data Approaches to Cloud Security
Paul Morse
 
Bluetooth Vulnerabilities
Bluetooth VulnerabilitiesBluetooth Vulnerabilities
Bluetooth Vulnerabilities
VictorYee
 

Similar to Don Bailey - A Million Little Tracking Devices (20)

Attacking GRX - GPRS Roaming eXchange
Attacking GRX - GPRS Roaming eXchangeAttacking GRX - GPRS Roaming eXchange
Attacking GRX - GPRS Roaming eXchange
 
How to deliver rich, real-time apps - AppsWorld 2014
How to deliver rich, real-time apps - AppsWorld 2014How to deliver rich, real-time apps - AppsWorld 2014
How to deliver rich, real-time apps - AppsWorld 2014
 
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
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
 
Programming for the Internet of Things
Programming for the Internet of ThingsProgramming for the Internet of Things
Programming for the Internet of Things
 
How to Hack a Telecom and Stay Alive
How to Hack a Telecom and Stay AliveHow to Hack a Telecom and Stay Alive
How to Hack a Telecom and Stay Alive
 
Root via sms. 4G security assessment
Root via sms. 4G security assessment Root via sms. 4G security assessment
Root via sms. 4G security assessment
 
Infrastructure API Lightning Talk by Jeremy Pollard of box.com
Infrastructure API Lightning Talk by Jeremy Pollard of box.comInfrastructure API Lightning Talk by Jeremy Pollard of box.com
Infrastructure API Lightning Talk by Jeremy Pollard of box.com
 
Terminal-based Mobile Positioning overview
Terminal-based Mobile Positioning overviewTerminal-based Mobile Positioning overview
Terminal-based Mobile Positioning overview
 
Data Packet Evolution - Mobinil
Data Packet Evolution - MobinilData Packet Evolution - Mobinil
Data Packet Evolution - Mobinil
 
Sergey Gordeychik - How to hack a telecom and stay alive
Sergey Gordeychik - How to hack a telecom and stay aliveSergey Gordeychik - How to hack a telecom and stay alive
Sergey Gordeychik - How to hack a telecom and stay alive
 
How to hack a telecom and stay alive
How to hack a telecom and stay aliveHow to hack a telecom and stay alive
How to hack a telecom and stay alive
 
How to hack a telecommunication company and stay alive. Sergey Gordeychik
How to hack a telecommunication company and stay alive. Sergey GordeychikHow to hack a telecommunication company and stay alive. Sergey Gordeychik
How to hack a telecommunication company and stay alive. Sergey Gordeychik
 
Backdooring a car
Backdooring a carBackdooring a car
Backdooring a car
 
Rich, Real-time Mobile User Experiences @Devoxx UK
Rich, Real-time Mobile User Experiences @Devoxx UKRich, Real-time Mobile User Experiences @Devoxx UK
Rich, Real-time Mobile User Experiences @Devoxx UK
 
2012 12-04 --ncc_group_-_mobile_threat_war_room
2012 12-04 --ncc_group_-_mobile_threat_war_room2012 12-04 --ncc_group_-_mobile_threat_war_room
2012 12-04 --ncc_group_-_mobile_threat_war_room
 
Dmk blackops2006
Dmk blackops2006Dmk blackops2006
Dmk blackops2006
 
4G to 5G: New Attacks
4G to 5G: New Attacks4G to 5G: New Attacks
4G to 5G: New Attacks
 
Big Data Approaches to Cloud Security
Big Data Approaches to Cloud SecurityBig Data Approaches to Cloud Security
Big Data Approaches to Cloud Security
 
Bluetooth Vulnerabilities
Bluetooth VulnerabilitiesBluetooth Vulnerabilities
Bluetooth Vulnerabilities
 

More from Source Conference

Million Browser Botnet
Million Browser BotnetMillion Browser Botnet
Million Browser Botnet
Source Conference
 
iBanking - a botnet on Android
iBanking - a botnet on AndroidiBanking - a botnet on Android
iBanking - a botnet on Android
Source Conference
 
I want the next generation web here SPDY QUIC
I want the next generation web here SPDY QUICI want the next generation web here SPDY QUIC
I want the next generation web here SPDY QUIC
Source Conference
 
From DNA Sequence Variation to .NET Bits and Bobs
From DNA Sequence Variation to .NET Bits and BobsFrom DNA Sequence Variation to .NET Bits and Bobs
From DNA Sequence Variation to .NET Bits and Bobs
Source Conference
 
Extracting Forensic Information From Zeus Derivatives
Extracting Forensic Information From Zeus DerivativesExtracting Forensic Information From Zeus Derivatives
Extracting Forensic Information From Zeus Derivatives
Source Conference
 
How to Like Social Media Network Security
How to Like Social Media Network SecurityHow to Like Social Media Network Security
How to Like Social Media Network Security
Source Conference
 
Wfuzz para Penetration Testers
Wfuzz para Penetration TestersWfuzz para Penetration Testers
Wfuzz para Penetration Testers
Source Conference
 
Security Goodness with Ruby on Rails
Security Goodness with Ruby on RailsSecurity Goodness with Ruby on Rails
Security Goodness with Ruby on Rails
Source Conference
 
Securty Testing For RESTful Applications
Securty Testing For RESTful ApplicationsSecurty Testing For RESTful Applications
Securty Testing For RESTful Applications
Source Conference
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
Source Conference
 
Men in the Server Meet the Man in the Browser
Men in the Server Meet the Man in the BrowserMen in the Server Meet the Man in the Browser
Men in the Server Meet the Man in the Browser
Source Conference
 
Advanced Data Exfiltration The Way Q Would Have Done It
Advanced Data Exfiltration The Way Q Would Have Done ItAdvanced Data Exfiltration The Way Q Would Have Done It
Advanced Data Exfiltration The Way Q Would Have Done It
Source Conference
 
Adapting To The Age Of Anonymous
Adapting To The Age Of AnonymousAdapting To The Age Of Anonymous
Adapting To The Age Of Anonymous
Source Conference
 
Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?
Source Conference
 
Advanced (persistent) binary planting
Advanced (persistent) binary plantingAdvanced (persistent) binary planting
Advanced (persistent) binary planting
Source Conference
 
Legal/technical strategies addressing data risks as perimeter shifts to Cloud
Legal/technical strategies addressing data risks as perimeter shifts to CloudLegal/technical strategies addressing data risks as perimeter shifts to Cloud
Legal/technical strategies addressing data risks as perimeter shifts to Cloud
Source Conference
 
Who should the security team hire next?
Who should the security team hire next?Who should the security team hire next?
Who should the security team hire next?
Source Conference
 
The Latest Developments in Computer Crime Law
The Latest Developments in Computer Crime LawThe Latest Developments in Computer Crime Law
The Latest Developments in Computer Crime Law
Source Conference
 
JSF Security
JSF SecurityJSF Security
JSF Security
Source Conference
 
How To: Find The Right Amount Of Security Spend
How To: Find The Right Amount Of Security SpendHow To: Find The Right Amount Of Security Spend
How To: Find The Right Amount Of Security Spend
Source Conference
 

More from Source Conference (20)

Million Browser Botnet
Million Browser BotnetMillion Browser Botnet
Million Browser Botnet
 
iBanking - a botnet on Android
iBanking - a botnet on AndroidiBanking - a botnet on Android
iBanking - a botnet on Android
 
I want the next generation web here SPDY QUIC
I want the next generation web here SPDY QUICI want the next generation web here SPDY QUIC
I want the next generation web here SPDY QUIC
 
From DNA Sequence Variation to .NET Bits and Bobs
From DNA Sequence Variation to .NET Bits and BobsFrom DNA Sequence Variation to .NET Bits and Bobs
From DNA Sequence Variation to .NET Bits and Bobs
 
Extracting Forensic Information From Zeus Derivatives
Extracting Forensic Information From Zeus DerivativesExtracting Forensic Information From Zeus Derivatives
Extracting Forensic Information From Zeus Derivatives
 
How to Like Social Media Network Security
How to Like Social Media Network SecurityHow to Like Social Media Network Security
How to Like Social Media Network Security
 
Wfuzz para Penetration Testers
Wfuzz para Penetration TestersWfuzz para Penetration Testers
Wfuzz para Penetration Testers
 
Security Goodness with Ruby on Rails
Security Goodness with Ruby on RailsSecurity Goodness with Ruby on Rails
Security Goodness with Ruby on Rails
 
Securty Testing For RESTful Applications
Securty Testing For RESTful ApplicationsSecurty Testing For RESTful Applications
Securty Testing For RESTful Applications
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
 
Men in the Server Meet the Man in the Browser
Men in the Server Meet the Man in the BrowserMen in the Server Meet the Man in the Browser
Men in the Server Meet the Man in the Browser
 
Advanced Data Exfiltration The Way Q Would Have Done It
Advanced Data Exfiltration The Way Q Would Have Done ItAdvanced Data Exfiltration The Way Q Would Have Done It
Advanced Data Exfiltration The Way Q Would Have Done It
 
Adapting To The Age Of Anonymous
Adapting To The Age Of AnonymousAdapting To The Age Of Anonymous
Adapting To The Age Of Anonymous
 
Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?
 
Advanced (persistent) binary planting
Advanced (persistent) binary plantingAdvanced (persistent) binary planting
Advanced (persistent) binary planting
 
Legal/technical strategies addressing data risks as perimeter shifts to Cloud
Legal/technical strategies addressing data risks as perimeter shifts to CloudLegal/technical strategies addressing data risks as perimeter shifts to Cloud
Legal/technical strategies addressing data risks as perimeter shifts to Cloud
 
Who should the security team hire next?
Who should the security team hire next?Who should the security team hire next?
Who should the security team hire next?
 
The Latest Developments in Computer Crime Law
The Latest Developments in Computer Crime LawThe Latest Developments in Computer Crime Law
The Latest Developments in Computer Crime Law
 
JSF Security
JSF SecurityJSF Security
JSF Security
 
How To: Find The Right Amount Of Security Spend
How To: Find The Right Amount Of Security SpendHow To: Find The Right Amount Of Security Spend
How To: Find The Right Amount Of Security Spend
 

Recently uploaded

zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 

Recently uploaded (20)

zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 

Don Bailey - A Million Little Tracking Devices

  • 1. A Million Little Tracking Devices Turning Embedded Devices into Weapons donb@isecpartners.com @DonAndrewBailey
  • 3. Places I’ve been in the past 24 hours • Boston • Afghanistan • Libya • The White House
  • 4.
  • 5. And I can prove it!
  • 6.
  • 7.
  • 8.
  • 9. So what’s this b.s. all about, donb?
  • 10. Zoombak “Advanced GPS Tracker” • Sold in over 12,500 stores nation wide • Easy to use (iPhone, Android, Blackberry) • 2x as big as your 6th Generation iPod Nano • Track your… ▫ Car ▫ Family ▫ Pet ▫ Valuables
  • 11. Even Oprah Loves Zoombak
  • 12. What is the Device composed of?
  • 13. Modular design • GSM module • GPS module • Application “microcomputer” • T-Mobile SIM Card
  • 14. GSM Module • Siemens 0682 ▫ Infineon Baseband ▫ Skyworks 7750 RF Tx • Controlled via USART ▫ AT Commands! • No shared memory!
  • 15. GPS Module • GR-520 GPS Module • Not that interesting • Acquires GPS!!!
  • 16. Application uC • Renesas SH7721/7300 Microcomputer Platform • Fairly robust uC platform • Application processor unknown ▫ But, probably one of the common realtime uC OS ▫ Likely, Java ▫ Or something….
  • 17. But wait! Donb, don’t you know?!?
  • 18. I don’t have to know…
  • 19. A Quick Aside about Siemens 0682 • Attaching to OpenBTS ▫ Using Malaysian Test SIM cards (001/01) • The Zoombak (Siemens) claims A5/2 capability ▫ And only A5/2 • The Zoombak accesses GPRS ▫ Presumably using A5/2 • T-Mobile allows A5/2 on GPRS in the USA? ▫ This shouldn‟t happen
  • 21. It’s all about the Customer Experience • Log into the Web2.0 interface • Select the desired tracking device • Click “find now” • Wait for the embedded map to update • Enjoy the map • GOTO 10
  • 22. How does the device work?
  • 23. The Control Channel • Commands are received via SMS ▫ 8bit binary messages • Application polls SIM for SMS • Application receives command ▫ Parses binary SMS ▫ Extracts command
  • 24.
  • 25. PDU Breakdown • “gOnDLocate” ▫ Represents an incoming location request • “Loc34-gfqgyl9f” ▫ Location ID (nonce) • 0x43 0xCA 0xED 0x70 ▫ 67.202.237.112 ???
  • 26.
  • 27. So, the Location Request… • Defines where the device should connect ▫ IPv4 Address • Defines what the device should send ▫ Nonce
  • 28. Okay, but what does a response look like?
  • 29. Back to the Logic Analyzer • Log into Zoombak‟s Web2.0 GUI • Send a valid request to the Device • Sniff the AT commands between App -> GSM • Watch what the device does
  • 30.
  • 31. Seriously?!? • The GSM Module accepts AT commands to ▫ Connect to a specific host AND port ▫ Over TCP/IP ▫ Send/Receive data • Zero confidentiality!
  • 32. Lets Diverge, Shall We? • GSM baseband attacks are a Serious Issue ™ • The baseband attack surface was ▫ Thought to be small ▫ RF oriented ▫ Localized • But, wait! Remote baseband compromise? ▫ Embedded TCP/IP stack ▫ Small code base (small flash space)
  • 33. Attack Scenario • For any baseband with embedded TCP/IP capability • Force AT commands to connect to Host:Port • Implement attack against TCP/IP stack ▫ IP header length ▫ TCP payload length ▫ Fragments • Get persistent compromise in the baseband • Force GPRS traffic over a specific APN/IP • Evade Application Flash Updates ▫ No need to backdoor the App when the Baseband is backdoored • Similar to BIOS backdoors for PC
  • 34. Okay, back to the payload.
  • 35.
  • 36. First Response Payload Format • Nonce • Version stuff • Sender‟s phone number (MSISDN) • Number of location data segments • Time stamp • Cellular data ▫ Location Area Code (LAC), Cell ID, MCC, MNC, RSSI ▫ This is the „A‟ in A-GPS
  • 37. Second Response Payload Format • Nonce • Version stuff • Sender‟s phone number (MSISDN) • Number of location data segments • GPS data (latitude, long) ▫ If available • Time stamp
  • 38. Let’s use Open Cell ID • Online database of cellular towers • Includes ▫ MCC ▫ MNC ▫ Cell ID ▫ LAC ▫ Geo Location (Latitude, Longitude)
  • 39.
  • 40. So, now we know… • How to control the device ▫ Presumably via IP in SMS • What a response looks like ▫ Standard HTTP POST • Where the data is sent ▫ Zoombak server on port 7276 • What network its sent to ▫ cidagps.t-mobile.com
  • 42. “Dogggg will hunt!!” – Les Claypool
  • 43. Piece it together! • SMS service like Routomessaging ▫ Send binary SMS for fractions of a cent ▫ Scriptable over SMPP ▫ Combine with crontab -> Win! • Edit a valid payload ▫ Change Zoombak‟s IP to Your IP ▫ Ship the SMS • Wait on port 7276
  • 44.
  • 45.
  • 46. So, we know we can intercept. But, can we find devices?
  • 47. Enter, War Texting • Spam thousands of numbers with our SMS payload • Wait patiently, serving on port 7276 • Log all incoming requests • Analyze location data ▫ Interesting targets?
  • 48. War Texting – The reality • SMS spam is a huge problem • Too many messages too fast = blocked ▫ Average one message per 20 seconds ▫ Slightly change payload  Alter Nonce with every message • Don‟t increment through MSISDN ▫ Randomize from a set of targets • Don‟t spam all MSISDN ▫ Look for the device‟s profile first
  • 49. Building an Easy Device Profile • Incoming calls are disabled • All devices are T-Mobile • SMS is enabled • NPA/NXX are typically not associated with location of purchase • Use HLR to find devices that are “never home” • Caller ID is always “Unavailable” • Use HLR to find devices that are turned on ▫ „Off‟ devices are „Absent Subscriber‟
  • 50. Profiling is Less Intrusive • Profiling is simply reconnaissance • Perform many normal actions ▫ To create an abnormal result • Effect? ▫ Generated list of potential fits ▫ Less people spammed ▫ Less provider hate for our SMS ▫ More low key
  • 51. So, we can find and target users. But, can we impersonate them?
  • 52. Of course! • Response payloads have no confidentiality • Pure HTTP • We can forge RSSI • GPS data can be forged easily ▫ Yay for on-line maps and Google Earth!
  • 53. The Assisted in Assisted GPS • Doesn‟t mean „Assisting You‟ ▫ It means „Assisting Them‟ • Obviously, known LAC/CI pairs should indicate potentially bad GPS data (or vice versa) • Selling LAC/CI is big $ in the Location Research markets
  • 54. We hit the Trifecta
  • 55. We can now… • Discover random tracking devices ▫ Device Profiling and War Texting • Force location interception ▫ SMS Control Spoofing and GPRS Abuse • Impersonate compromised targets ▫ SMS Access, GPRS Abuse, and Client Spoofing
  • 56. What attacks can be performed? • This is an issue of thinking like an attacker • Discover and monitor targets over time • Assess highly desirable targets • Strategic planning through behavioral analysis
  • 57. What can be done to fix these problems?
  • 58. Currently, they are… • Using T-Mobile to do things “the wrong way” ▫ “Non-Geographic Test Number” NPA/NXX  As of February 2011  Not active in Number Portability Administration  Blocks SMS from services like RoutoMessaging (temporarily?) ▫ GPRS PDP Context Switching  Drop different types of devices into different networks
  • 59. But, they should be… • Not relying on the control message ▫ Why embed an IPv4 address at all? • Not implementing confidentiality and integrity ▫ T-Mobile sends encrypted SMS to update SIMs, why can‟t Zoombak do the same for the App? • Disallowing software from talking to non-Zoombak resources ▫ Force all network traffic through to Zoombak systems on the network • Using HLR to assess potential spoofing/abuse ▫ Dead technique unless T-Mobile exports this
  • 60. Carmen’s Success is Zoombak’s Failure
  • 61. Remember Carmen Sandiego? • Research presented with Nick DePetrillo (Crucial Security / Harris Corporation) • Tracking via HLR access • Only a Phone Number is required
  • 62.
  • 63. Carmen Succeeded! • T-Mobile HLR requests now fail • Random MSC values from a static set of N • No more T-Mobile tracking • All major GSM providers in the USA are now secure
  • 64. Bad for Zoombak • No Location Data to compare to • The device‟s response must be trusted • HLR can‟t prove error / manipulations
  • 65. What Lessons can we Learn?
  • 66. Embedded Security is Hard • Weak security surface • Vast threat surface • Many “moving parts” to maintain ▫ Baseband ▫ GPS firmware ▫ Application firmware ▫ SIM software/keys/etc • The days of obfuscating your product are over ▫ No plastic / epoxy / silicon for me
  • 67. It’s also a Function of $ • Decreased production cost • Increased functionality ▫ Zigbee/802.15.4/Z-Wave ▫ RFID/NFC ▫ DECT • Increased application space ▫ More production = decreased cost to user
  • 68. What’s the next Killer App? • Urban Traffic Control systems ▫ Controlled over GSM • SCADA sensors ▫ Controlled over GSM / SMS • Generic user devices ▫ Kindles, iPads, etc • Children‟s toys (IM-ME) capable of GSM ▫ IM-ME has a 26MHz clock and can (sort of) do GSM-850
  • 69. Well… Remember the last person that made Oprah look bad?
  • 71. Thanks For All The Fish! • Nick DePetrillo • Luis Miras • Chris Eng • David Munson • Travis Goodspeed • Mike Ossmann • Andreas Junestam • Eric Schneider • Mike Kershaw • Alex Stamos • Zane Lackey • Scott Stender • Patrick McCanna • David Thiel
  • 72. “We ain’t hard 2 find” – 2pac donb@isecpartners.com @DonAndrewBailey