SlideShare a Scribd company logo
Drew Moseley
Solutions Architect
Mender.io
Securing the Connected Car
Session overview
● Opportunities and challenges with the software
defined car
● Anatomy of an attack: security risks of the
connected car
● The patching problem & solution designs
About me
● Drew Moseley
○ 10 years in Embedded Linux/Yocto
development.
○ More than that in general Embedded
Software.
○ Project Lead and Solutions Architect.
○ drew.moseley@mender.io
○ https://twitter.com/drewmoseley
○ https://www.linkedin.com/in/drewmoseley/
○ https://twitter.com/mender_io
● Mender.io
○ Over-the-air updater for Embedded Linux
○ Open source (Apache License, v2)
○ Dual A/B rootfs layout (client)
○ Remote deployment management (server)
○ Under active development
The software defined car
1990 2000 2010 2020
Hardware enabled Software enabled Software defined
Telematics Infotainment Connected
Assisted
driving
AutonomousElectronics
Opportunity: New Revenue Streams
New revenue streams:
● “Automakers could add up to $27.1B annually from services such as car
sharing and more” - Navigant Research
● Tesla
○ OTA update system for easy upgrades after purchase.
○ Autopilot (semi-autonomous) feature: $2,500 USD at order; $3,000
USD upgrade.
Free features:
● Increased automobile range during Hurricane Irma1
1
http://www.businessinsider.com/hurricane-irma-tesla-increased-range-florida-2017-9
Opportunity: Cost Savings
IVI stack
Hardware
Board support pkg.
Operating system
Middleware
Apps
HMI
Cost
10%
30%
60%
Differentiation
Focus on
commodity
code here.
● Lower layers are expensive and
provides no differentiation
● Use commodity software here
to:
○ Shorten time-to-market
○ Lower cost
○ Reallocate development
to differentiating features
OTA updater
Challenge: More complexity/larger attack surface
● 1-25 bugs per 1000 lines of code*
○ Assume that all software components have vulnerabilities
● Rely on well-maintained software and keep it updated
○ Open source vs. proprietary is a red herring
○ Do not build all the software in-house
● Principle of least privilege
● Separation of privilege
● Kerckhoff’s principle
*Source: Steve McConnell, Code Complete
Challenge: OTA updates are must-have
● Increased software complexity requires more frequent
improvements
● “33% of current recalls are for problems that could be fixed OTA” -
ABI Research
● “OTA updates will save carmakers $35B in 2022” - IHS Automotive
● Fiat Chrysler hack (next up) required a recall of 1.4 million vehicles
that could have been avoided with an OTA update
Jeep Cherokee hacked in July 2015
● Presented at Black Hat USA 2015
○ Charlie Miller and Chris Valasek
● Remote exploit giving full control
of the car
● Clearly demonstrates physical
safety risk
● No way to fix remotely
● 1.4 million cars recalled
● August 2016: Extended to
unauthorized ECU update via CAN
Jeep Cherokee Head Unit with Wifi
Wifi hotspot offered
as a service
● Cherokee customers can buy wifi
subscription as an add-on (~$40/month)
● Connect devices in the car to the car’s
wifi to get online (phones, tablets, …)
● Wifi is password protected
“Head unit”, “IVI”
Wifi-based breach: Short-range
● Wifi password based on system time after
provisioning
● January 01 2013 00:00 GMT +- 1 minute
● Multimedia system breached due to
software vulnerability
● Scope: Control music player/radio/volume
and track GPS coordinates when within
wifi range
Guessable
password
Software
vulnerability
Cellular-based breach: Country-wide
● Scope: Control music player/radio/volume
and track GPS coordinates countrywide
● Can also select a specific Jeep based on its
GPS-coordinates
Breach Sprint
Cellular network
Software
vulnerability
The Controller Area Network (CAN) bus
● The CAN bus connects ~70 electronic
control units (ECUs), including engine
control, transmission, airbags, braking
● V850 chip is designed to only read from the
CAN bus, to isolate components
V850 chip
Read-only
Diagnostics
CAN bus
● The head unit can update the firmware
of the V850
● Firmware update authenticity not
checked properly
V850 chip
Full control
Malicious firmware
update
Putting it together
Lessons
● Wifi hotspot password was predictable
● Remotely accessible service (in head unit)
was vulnerable (and not updated)
● Firmware update (for V850) did not have
proper authenticity checks
● The only way to fix the vulnerabilities is
through a manual update (by customer or
dealership)
FW update
Cellular breach
Vulnerability
Security patching is done too late
60 days: >90% probability it is exploited
110 days: remediation time avg.
5-10 days: <10% probability it is exploited
Source: How the Rise in Non-Targeted Attacks Has Widened the Remediation Gap, Kenna Security
Why security patching happens too late
● The value is invisible until too late
● Too costly or risky
○ Manual? Too expensive to integrate updater?
○ Requires downtime of production? Risk of breaking production?
● Interdepartmental politics (ie fingerpointing)
● How often do you patch?
○ Do you have a way to do it? A process?
○ Often not a core competence and not a priority to develop updater
Patching connected devices is harder
● No/expensive physical access
○ Need failure management
● Unreliable power
○ What if power disappears in the middle of patching?
● Unreliable (wireless) network connectivity
○ Handle partial downloads
○ Ideally resume downloads in expensive networks like 3G
● Public and insecure (wireless) networks
○ Can someone inject arbitrary code during the update process?
○ Verify authenticity of update
Generic embedded updater workflow
Detect update
(secure channel)
Download
(secure channel)
Integrity
(e.g. checksum)
Authenticate
(e.g. signature)
DecryptExtract
Install
Failure recovery
(e.g. roll back)
Compatibility
check
Sanity checks
Post-install
actions
Pre-install
actions
Must-have
Environment-specific
Choose a
strategy
Choice of update type has tradeoffs
Full image Package (opkg, …) tar.gz Docker/Containers
Download size Large* Small Small Medium
Installation time Long* Short Short Short
Rollback Yes (dual partition) Hard Hard Yes
Consistency Yes Medium Hard Yes
Design impact Bootloader,
Partition layout
Package manager tar, ... Kernel, docker
* Can mitigate with compression or binary diffs
● Integrity checking
○ This must be done
○ Easy to implement
● Rollback support
○ This should be a requirement: power loss, installation error, etc.
○ Could be hard depending on update type (tarball, package)
● Phased rollout
○ I.e. don’t deploy update to all devices in one go
○ Most do this to some extent: test & production environments
○ Can be more granular on device population (1%, 10%, 25%, 50%, …)
What can
go wrong?
Strategies to reduce the risk of bricking
Prepare for securing the software defined car
● Commodity software where no differentiation
● Well-maintained software
● Over-the-air updates
● Apply well-known security design principles
The best way to respond to hacking?
Fiat Chrysler said exploiting the flaw "required
unique and extensive technical knowledge,
prolonged physical access to a subject vehicle and
extended periods of time to write code" and added
manipulating its software "constitutes criminal
action".
Sources: BBC News, Wired
Straubel [Tesla CTO] credits KeenLabs’
researchers [...] says Tesla will pay
KeenLabs’ team a monetary reward for its
work [...] “They did good work,” Straubel says.
“They helped us find something that’s a
problem we needed to fix. And that’s what we
did.”
Thank You!
Q&A
@drewmoseley
drew.moseley@mender.io

More Related Content

What's hot

Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
Rui Miguel Feio
 
Outpost networksecurity
Outpost networksecurityOutpost networksecurity
Outpost networksecurity
ehsangha
 
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.22017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
Rui Miguel Feio
 
Network and Endpoint Security v1.0 (2017)
Network and Endpoint Security v1.0 (2017)Network and Endpoint Security v1.0 (2017)
Network and Endpoint Security v1.0 (2017)
Rui Miguel Feio
 
(2017) GDPR – What Does It Mean For The Mainframe v0.2
(2017) GDPR – What Does It Mean For The Mainframe v0.2(2017) GDPR – What Does It Mean For The Mainframe v0.2
(2017) GDPR – What Does It Mean For The Mainframe v0.2
Rui Miguel Feio
 
Step Into Security Webinar - Improving Physical Security on Your Campus
Step Into Security Webinar - Improving Physical Security on Your Campus Step Into Security Webinar - Improving Physical Security on Your Campus
Step Into Security Webinar - Improving Physical Security on Your Campus
Keith Harris
 
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Keith Harris
 

What's hot (7)

Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
Share 2015 - 5 Myths that can put your Mainframe at risk (v1.3)
 
Outpost networksecurity
Outpost networksecurityOutpost networksecurity
Outpost networksecurity
 
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.22017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
2017 - A New Look at Mainframe Hacking and Penetration Testing v2.2
 
Network and Endpoint Security v1.0 (2017)
Network and Endpoint Security v1.0 (2017)Network and Endpoint Security v1.0 (2017)
Network and Endpoint Security v1.0 (2017)
 
(2017) GDPR – What Does It Mean For The Mainframe v0.2
(2017) GDPR – What Does It Mean For The Mainframe v0.2(2017) GDPR – What Does It Mean For The Mainframe v0.2
(2017) GDPR – What Does It Mean For The Mainframe v0.2
 
Step Into Security Webinar - Improving Physical Security on Your Campus
Step Into Security Webinar - Improving Physical Security on Your Campus Step Into Security Webinar - Improving Physical Security on Your Campus
Step Into Security Webinar - Improving Physical Security on Your Campus
 
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
 

Similar to Securing the Connected Car - SCaLE 2018

MidoNet roadmap
MidoNet roadmapMidoNet roadmap
MidoNet roadmap
Jean-Francois Joly
 
MidoNet Vision & Roadmap
MidoNet Vision & RoadmapMidoNet Vision & Roadmap
MidoNet Vision & Roadmap
MidoNet
 
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization SolutionsMigrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
Lenovo Business
 
ConnectedAutos-Kymeta-7498-WP
ConnectedAutos-Kymeta-7498-WPConnectedAutos-Kymeta-7498-WP
ConnectedAutos-Kymeta-7498-WP
Greg Harms
 
Troubleshooting the Most Common Citrix Complaints for Remote Workers
Troubleshooting the Most Common Citrix Complaints for Remote WorkersTroubleshooting the Most Common Citrix Complaints for Remote Workers
Troubleshooting the Most Common Citrix Complaints for Remote Workers
eG Innovations
 
160811_오토테크컨퍼런스_vault micro
160811_오토테크컨퍼런스_vault micro160811_오토테크컨퍼런스_vault micro
160811_오토테크컨퍼런스_vault micro
StartupAlliance
 
The Path to a Pain-Free Control System Upgrade
The Path to a Pain-Free Control System UpgradeThe Path to a Pain-Free Control System Upgrade
The Path to a Pain-Free Control System Upgrade
Inductive Automation
 
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
Red Bend Software
 
Countering Cybersecurity Risk in Today's IoT World
Countering Cybersecurity Risk in Today's IoT WorldCountering Cybersecurity Risk in Today's IoT World
Countering Cybersecurity Risk in Today's IoT World
Brad Nicholas
 
Verification of IVI Over-The-Air using UML/OCL
Verification of IVI Over-The-Air using UML/OCLVerification of IVI Over-The-Air using UML/OCL
Verification of IVI Over-The-Air using UML/OCL
Seungjoo Kim
 
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
Tero Aaltonen
 
Mender; the open-source software update solution
Mender; the open-source software update solutionMender; the open-source software update solution
Mender; the open-source software update solution
Mender.io
 
Software Updates for Connected Devices - OSCON 2018
Software Updates for Connected Devices - OSCON 2018Software Updates for Connected Devices - OSCON 2018
Software Updates for Connected Devices - OSCON 2018
Mender.io
 
Making Use of a Knowledgeable Design by Design for Manufacturing
Making Use of a Knowledgeable Design by Design for ManufacturingMaking Use of a Knowledgeable Design by Design for Manufacturing
Making Use of a Knowledgeable Design by Design for Manufacturing
VayoInfo
 
Procedure of Proactively Designing Products by Design for Manufacturability (...
Procedure of Proactively Designing Products by Design for Manufacturability (...Procedure of Proactively Designing Products by Design for Manufacturability (...
Procedure of Proactively Designing Products by Design for Manufacturability (...
VayoInfo
 
Api gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a serviceApi gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a service
Emerasoft, solutions to collaborate
 
Security solution for transportation 2019.03.25
Security solution for transportation 2019.03.25Security solution for transportation 2019.03.25
Security solution for transportation 2019.03.25
Ghomsi Adrien
 
Changing Admins Lives Forever with Automated Network Management
Changing Admins Lives Forever with Automated Network ManagementChanging Admins Lives Forever with Automated Network Management
Changing Admins Lives Forever with Automated Network Management
Mark Piening
 
Internet: Its Past, Present and The Future
Internet: Its Past, Present and The FutureInternet: Its Past, Present and The Future
Internet: Its Past, Present and The Future
Abhishek Tonpe
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
Embitel Technologies (I) PVT LTD
 

Similar to Securing the Connected Car - SCaLE 2018 (20)

MidoNet roadmap
MidoNet roadmapMidoNet roadmap
MidoNet roadmap
 
MidoNet Vision & Roadmap
MidoNet Vision & RoadmapMidoNet Vision & Roadmap
MidoNet Vision & Roadmap
 
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization SolutionsMigrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
Migrating to Windows 7 or 8 with Lenovo's Deployment Optimization Solutions
 
ConnectedAutos-Kymeta-7498-WP
ConnectedAutos-Kymeta-7498-WPConnectedAutos-Kymeta-7498-WP
ConnectedAutos-Kymeta-7498-WP
 
Troubleshooting the Most Common Citrix Complaints for Remote Workers
Troubleshooting the Most Common Citrix Complaints for Remote WorkersTroubleshooting the Most Common Citrix Complaints for Remote Workers
Troubleshooting the Most Common Citrix Complaints for Remote Workers
 
160811_오토테크컨퍼런스_vault micro
160811_오토테크컨퍼런스_vault micro160811_오토테크컨퍼런스_vault micro
160811_오토테크컨퍼런스_vault micro
 
The Path to a Pain-Free Control System Upgrade
The Path to a Pain-Free Control System UpgradeThe Path to a Pain-Free Control System Upgrade
The Path to a Pain-Free Control System Upgrade
 
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
Roger Lanctot, Strategy Analytics, Managing the Accelerating Amount of Softwa...
 
Countering Cybersecurity Risk in Today's IoT World
Countering Cybersecurity Risk in Today's IoT WorldCountering Cybersecurity Risk in Today's IoT World
Countering Cybersecurity Risk in Today's IoT World
 
Verification of IVI Over-The-Air using UML/OCL
Verification of IVI Over-The-Air using UML/OCLVerification of IVI Over-The-Air using UML/OCL
Verification of IVI Over-The-Air using UML/OCL
 
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
Overcoming Obstacles in Bringing Android Automotive Infotainment Systems to M...
 
Mender; the open-source software update solution
Mender; the open-source software update solutionMender; the open-source software update solution
Mender; the open-source software update solution
 
Software Updates for Connected Devices - OSCON 2018
Software Updates for Connected Devices - OSCON 2018Software Updates for Connected Devices - OSCON 2018
Software Updates for Connected Devices - OSCON 2018
 
Making Use of a Knowledgeable Design by Design for Manufacturing
Making Use of a Knowledgeable Design by Design for ManufacturingMaking Use of a Knowledgeable Design by Design for Manufacturing
Making Use of a Knowledgeable Design by Design for Manufacturing
 
Procedure of Proactively Designing Products by Design for Manufacturability (...
Procedure of Proactively Designing Products by Design for Manufacturability (...Procedure of Proactively Designing Products by Design for Manufacturability (...
Procedure of Proactively Designing Products by Design for Manufacturability (...
 
Api gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a serviceApi gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a service
 
Security solution for transportation 2019.03.25
Security solution for transportation 2019.03.25Security solution for transportation 2019.03.25
Security solution for transportation 2019.03.25
 
Changing Admins Lives Forever with Automated Network Management
Changing Admins Lives Forever with Automated Network ManagementChanging Admins Lives Forever with Automated Network Management
Changing Admins Lives Forever with Automated Network Management
 
Internet: Its Past, Present and The Future
Internet: Its Past, Present and The FutureInternet: Its Past, Present and The Future
Internet: Its Past, Present and The Future
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
 

More from Mender.io

Mender: The open-source software update solution
Mender: The open-source software update solutionMender: The open-source software update solution
Mender: The open-source software update solution
Mender.io
 
IoT: Contrasting Yocto/Buildroot to binary OSes
IoT: Contrasting Yocto/Buildroot to binary OSesIoT: Contrasting Yocto/Buildroot to binary OSes
IoT: Contrasting Yocto/Buildroot to binary OSes
Mender.io
 
The ultimate guide to software updates on embedded linux devices
The ultimate guide to software updates on embedded linux devicesThe ultimate guide to software updates on embedded linux devices
The ultimate guide to software updates on embedded linux devices
Mender.io
 
A million ways to provision embedded linux devices
A million ways to provision embedded linux devicesA million ways to provision embedded linux devices
A million ways to provision embedded linux devices
Mender.io
 
Embedded linux build systems
Embedded linux build systems  Embedded linux build systems
Embedded linux build systems
Mender.io
 
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
Mender.io
 
Configuring wifi in open embedded builds
Configuring wifi in open embedded buildsConfiguring wifi in open embedded builds
Configuring wifi in open embedded builds
Mender.io
 
IoT Prototyping using BBB and Debian
IoT Prototyping using BBB and DebianIoT Prototyping using BBB and Debian
IoT Prototyping using BBB and Debian
Mender.io
 
Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018
Mender.io
 
Strategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and imagesStrategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and images
Mender.io
 
IoT Development from Prototype to Production
IoT Development from Prototype to ProductionIoT Development from Prototype to Production
IoT Development from Prototype to Production
Mender.io
 
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
Mender.io
 
Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018
Mender.io
 
Iot development from prototype to production
Iot development from prototype to productionIot development from prototype to production
Iot development from prototype to production
Mender.io
 
Linux IoT Botnet Wars - ESC Boston 2018
Linux IoT Botnet Wars - ESC Boston 2018Linux IoT Botnet Wars - ESC Boston 2018
Linux IoT Botnet Wars - ESC Boston 2018
Mender.io
 
Linux IoT Botnet Wars and the lack of basic security hardening
Linux IoT Botnet Wars and the lack of basic security hardeningLinux IoT Botnet Wars and the lack of basic security hardening
Linux IoT Botnet Wars and the lack of basic security hardening
Mender.io
 
Mender.io | Develop embedded applications faster | Comparing C and Golang
Mender.io | Develop embedded applications faster | Comparing C and GolangMender.io | Develop embedded applications faster | Comparing C and Golang
Mender.io | Develop embedded applications faster | Comparing C and Golang
Mender.io
 

More from Mender.io (17)

Mender: The open-source software update solution
Mender: The open-source software update solutionMender: The open-source software update solution
Mender: The open-source software update solution
 
IoT: Contrasting Yocto/Buildroot to binary OSes
IoT: Contrasting Yocto/Buildroot to binary OSesIoT: Contrasting Yocto/Buildroot to binary OSes
IoT: Contrasting Yocto/Buildroot to binary OSes
 
The ultimate guide to software updates on embedded linux devices
The ultimate guide to software updates on embedded linux devicesThe ultimate guide to software updates on embedded linux devices
The ultimate guide to software updates on embedded linux devices
 
A million ways to provision embedded linux devices
A million ways to provision embedded linux devicesA million ways to provision embedded linux devices
A million ways to provision embedded linux devices
 
Embedded linux build systems
Embedded linux build systems  Embedded linux build systems
Embedded linux build systems
 
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
Integrate IoT cloud analytics and over the-air (ota) updates with google and ...
 
Configuring wifi in open embedded builds
Configuring wifi in open embedded buildsConfiguring wifi in open embedded builds
Configuring wifi in open embedded builds
 
IoT Prototyping using BBB and Debian
IoT Prototyping using BBB and DebianIoT Prototyping using BBB and Debian
IoT Prototyping using BBB and Debian
 
Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018
 
Strategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and imagesStrategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and images
 
IoT Development from Prototype to Production
IoT Development from Prototype to ProductionIoT Development from Prototype to Production
IoT Development from Prototype to Production
 
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
Linux IOT Botnet Wars and the Lack of Basic Security Hardening - OSCON 2018
 
Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018
 
Iot development from prototype to production
Iot development from prototype to productionIot development from prototype to production
Iot development from prototype to production
 
Linux IoT Botnet Wars - ESC Boston 2018
Linux IoT Botnet Wars - ESC Boston 2018Linux IoT Botnet Wars - ESC Boston 2018
Linux IoT Botnet Wars - ESC Boston 2018
 
Linux IoT Botnet Wars and the lack of basic security hardening
Linux IoT Botnet Wars and the lack of basic security hardeningLinux IoT Botnet Wars and the lack of basic security hardening
Linux IoT Botnet Wars and the lack of basic security hardening
 
Mender.io | Develop embedded applications faster | Comparing C and Golang
Mender.io | Develop embedded applications faster | Comparing C and GolangMender.io | Develop embedded applications faster | Comparing C and Golang
Mender.io | Develop embedded applications faster | Comparing C and Golang
 

Recently uploaded

CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
Claudio Di Ciccio
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
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
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
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
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 

Recently uploaded (20)

CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
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
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 

Securing the Connected Car - SCaLE 2018

  • 2. Session overview ● Opportunities and challenges with the software defined car ● Anatomy of an attack: security risks of the connected car ● The patching problem & solution designs
  • 3. About me ● Drew Moseley ○ 10 years in Embedded Linux/Yocto development. ○ More than that in general Embedded Software. ○ Project Lead and Solutions Architect. ○ drew.moseley@mender.io ○ https://twitter.com/drewmoseley ○ https://www.linkedin.com/in/drewmoseley/ ○ https://twitter.com/mender_io ● Mender.io ○ Over-the-air updater for Embedded Linux ○ Open source (Apache License, v2) ○ Dual A/B rootfs layout (client) ○ Remote deployment management (server) ○ Under active development
  • 4. The software defined car 1990 2000 2010 2020 Hardware enabled Software enabled Software defined Telematics Infotainment Connected Assisted driving AutonomousElectronics
  • 5. Opportunity: New Revenue Streams New revenue streams: ● “Automakers could add up to $27.1B annually from services such as car sharing and more” - Navigant Research ● Tesla ○ OTA update system for easy upgrades after purchase. ○ Autopilot (semi-autonomous) feature: $2,500 USD at order; $3,000 USD upgrade. Free features: ● Increased automobile range during Hurricane Irma1 1 http://www.businessinsider.com/hurricane-irma-tesla-increased-range-florida-2017-9
  • 6. Opportunity: Cost Savings IVI stack Hardware Board support pkg. Operating system Middleware Apps HMI Cost 10% 30% 60% Differentiation Focus on commodity code here. ● Lower layers are expensive and provides no differentiation ● Use commodity software here to: ○ Shorten time-to-market ○ Lower cost ○ Reallocate development to differentiating features OTA updater
  • 7. Challenge: More complexity/larger attack surface ● 1-25 bugs per 1000 lines of code* ○ Assume that all software components have vulnerabilities ● Rely on well-maintained software and keep it updated ○ Open source vs. proprietary is a red herring ○ Do not build all the software in-house ● Principle of least privilege ● Separation of privilege ● Kerckhoff’s principle *Source: Steve McConnell, Code Complete
  • 8. Challenge: OTA updates are must-have ● Increased software complexity requires more frequent improvements ● “33% of current recalls are for problems that could be fixed OTA” - ABI Research ● “OTA updates will save carmakers $35B in 2022” - IHS Automotive ● Fiat Chrysler hack (next up) required a recall of 1.4 million vehicles that could have been avoided with an OTA update
  • 9. Jeep Cherokee hacked in July 2015 ● Presented at Black Hat USA 2015 ○ Charlie Miller and Chris Valasek ● Remote exploit giving full control of the car ● Clearly demonstrates physical safety risk ● No way to fix remotely ● 1.4 million cars recalled ● August 2016: Extended to unauthorized ECU update via CAN
  • 10. Jeep Cherokee Head Unit with Wifi Wifi hotspot offered as a service ● Cherokee customers can buy wifi subscription as an add-on (~$40/month) ● Connect devices in the car to the car’s wifi to get online (phones, tablets, …) ● Wifi is password protected “Head unit”, “IVI”
  • 11. Wifi-based breach: Short-range ● Wifi password based on system time after provisioning ● January 01 2013 00:00 GMT +- 1 minute ● Multimedia system breached due to software vulnerability ● Scope: Control music player/radio/volume and track GPS coordinates when within wifi range Guessable password Software vulnerability
  • 12. Cellular-based breach: Country-wide ● Scope: Control music player/radio/volume and track GPS coordinates countrywide ● Can also select a specific Jeep based on its GPS-coordinates Breach Sprint Cellular network Software vulnerability
  • 13. The Controller Area Network (CAN) bus ● The CAN bus connects ~70 electronic control units (ECUs), including engine control, transmission, airbags, braking ● V850 chip is designed to only read from the CAN bus, to isolate components V850 chip Read-only Diagnostics
  • 14. CAN bus ● The head unit can update the firmware of the V850 ● Firmware update authenticity not checked properly V850 chip Full control Malicious firmware update
  • 15. Putting it together Lessons ● Wifi hotspot password was predictable ● Remotely accessible service (in head unit) was vulnerable (and not updated) ● Firmware update (for V850) did not have proper authenticity checks ● The only way to fix the vulnerabilities is through a manual update (by customer or dealership) FW update Cellular breach Vulnerability
  • 16. Security patching is done too late 60 days: >90% probability it is exploited 110 days: remediation time avg. 5-10 days: <10% probability it is exploited Source: How the Rise in Non-Targeted Attacks Has Widened the Remediation Gap, Kenna Security
  • 17. Why security patching happens too late ● The value is invisible until too late ● Too costly or risky ○ Manual? Too expensive to integrate updater? ○ Requires downtime of production? Risk of breaking production? ● Interdepartmental politics (ie fingerpointing) ● How often do you patch? ○ Do you have a way to do it? A process? ○ Often not a core competence and not a priority to develop updater
  • 18. Patching connected devices is harder ● No/expensive physical access ○ Need failure management ● Unreliable power ○ What if power disappears in the middle of patching? ● Unreliable (wireless) network connectivity ○ Handle partial downloads ○ Ideally resume downloads in expensive networks like 3G ● Public and insecure (wireless) networks ○ Can someone inject arbitrary code during the update process? ○ Verify authenticity of update
  • 19. Generic embedded updater workflow Detect update (secure channel) Download (secure channel) Integrity (e.g. checksum) Authenticate (e.g. signature) DecryptExtract Install Failure recovery (e.g. roll back) Compatibility check Sanity checks Post-install actions Pre-install actions Must-have Environment-specific Choose a strategy
  • 20. Choice of update type has tradeoffs Full image Package (opkg, …) tar.gz Docker/Containers Download size Large* Small Small Medium Installation time Long* Short Short Short Rollback Yes (dual partition) Hard Hard Yes Consistency Yes Medium Hard Yes Design impact Bootloader, Partition layout Package manager tar, ... Kernel, docker * Can mitigate with compression or binary diffs
  • 21. ● Integrity checking ○ This must be done ○ Easy to implement ● Rollback support ○ This should be a requirement: power loss, installation error, etc. ○ Could be hard depending on update type (tarball, package) ● Phased rollout ○ I.e. don’t deploy update to all devices in one go ○ Most do this to some extent: test & production environments ○ Can be more granular on device population (1%, 10%, 25%, 50%, …) What can go wrong? Strategies to reduce the risk of bricking
  • 22. Prepare for securing the software defined car ● Commodity software where no differentiation ● Well-maintained software ● Over-the-air updates ● Apply well-known security design principles
  • 23. The best way to respond to hacking? Fiat Chrysler said exploiting the flaw "required unique and extensive technical knowledge, prolonged physical access to a subject vehicle and extended periods of time to write code" and added manipulating its software "constitutes criminal action". Sources: BBC News, Wired Straubel [Tesla CTO] credits KeenLabs’ researchers [...] says Tesla will pay KeenLabs’ team a monetary reward for its work [...] “They did good work,” Straubel says. “They helped us find something that’s a problem we needed to fix. And that’s what we did.”