SlideShare a Scribd company logo
HKG18-219: Threat Modeling for IoT
David Brown
IoT Security
● 2016 DEF Con, found 47 new vulnerabilities in 23 IoT devices
● Mirai Botnet
https://www.theguardian.com/technology/2016/oct/26/ddos-attack-dyn-mirai-
botnet targeted DDoS attack, cameras, DVRs, etc
● TRENDnet Webcam: http://www.technewsworld.com/story/78891.html,
vulnerable camera could be viewed externally
IoT Security (cont.)
● Jeep:
https://blog.kaspersky.com/blackhat-jeep-cherokee-hack-explained/9493/
over cell network took control of a Jeep.
○ WiFi password wasn’t very random, guess space in the dozens
○ Chained through vulnerability in multimedia computer
○ CAN bus isolation failed with vulnerability in an MCU that could be “upgraded” without
authentication
○ Total control over vehicle, including brakes and steering
Threat Modeling
● “Threat Modeling: Designing for Security”, by Adam Shostack
○ What are you building?
○ What can go wrong?
○ What should you do about those things that can go wrong?
○ Did you do a decent job of analysis?
Threat Modeling (cont.)
● Nickolai Zeldovich, https://youtu.be/GqmQg-cszw4: MIT 6.858 Computer
Systems Security, Fall 2014, Introduction, Threat Models
○ Policy: What is the desired behavior (what is and isn’t allowed)?
○ Threat Model: What is the attacker capable of?
○ Mechanism: What do we do about it?
Threat Modeling (cont.)
● Two approaches
● Shostack focuses on architecture of system
● Zeldovich focuses on policy and capability
● I found Zeldovich’s approach easier to organize and follow
The example app
● Important to focus on a specific application,
● Can also focus on a specific part, such as a protocol (but be careful, see Jeep
example, parts interact)
HKG18-219 - Threat Modeling for IoT
High-level example
● Policy: The data collection host should be able to determine that a given
sensor device is valid, and only accept data from valid sensors
● Threat:
○ Attacker can generate arbitrary network packets
○ Attacker cannot brute-force modern crypto algorithms
○ Attacker cannot read from the device’s internal flash
● Mechanism:
○ Enforce DTLS with PSK ciphersuite
● Thoughts:
○ How do we get the secret onto the device
○ Take LWM2M: network secret negotiates device secret
○ (secrets are important, see HKG18-407)
High-level example
● Policy: The data collection host should be able to determine that a given
sensor device is valid, and only accept data from valid sensors
● Threat:
○ Attacker can generate arbitrary network packets
○ Attacker cannot brute-force modern crypto algorithms
○ Attacker can read from the device’s internal flash
● Attacker can spoof device (violating policy)
● Not obvious, though:
○ Buffer overflow in a protocol allows read of arbitrary memory
○ SWD/JTAG: forget fuses, or reverse fuses
○ Flash protected from read, but CRC reads and can be watched
Policy Interaction
● Two policies:
○ Policy: The data collection host should be able to determine that a given sensor device is valid,
and only accept data from valid sensors
○ Policy: When sensor data is available, it should be sent to the data collection host in a timely
manner
● Not only prevent attacks, but prevent denial of service:
○ Jam network
○ Bogus packets cause device to be rejected
Lower-level example
● Concerning software update:
○ The device should accept upgrades from a valid upgrade host and run these new versions
○ The device should only accept upgrades from a valid upgrade host
● Threat:
○ The attacker can spoof network traffic from upgrade host
○ The attacker can reply old data
○ The attacker cannot break RSA
● Mechanism:
○ Digitally sign images with RSA
○ Have increase-only version numbers
Lower-level example
● Concerning software update:
○ The device should accept upgrades from a valid upgrade host and run these new versions
○ The device should only accept upgrades from a valid upgrade host
● Threat:
○ The attacker can spoof network traffic from upgrade host
○ The attacker can reply old data
○ The attacker cannot break RSA
● Attack:
○ The attacker spoofs upgrade host
○ Sends invalid upgrades, with bad signatures
○ Device drains battery, or wears out flash repeatedly rejecting the upgrade
● This one is hard
Conclusions
● Model document will be dynamic
● Use model to drive development priorities
○ e.g. storing secrets
● Will grow as we move to new application areas
Thank You
#HKG18
HKG18 keynotes and videos on: connect.linaro.org
For further information: www.linaro.org

More Related Content

PDF
HKG18-113- Secure Data Path work with i.MX8M
PPTX
HKG18-223 - Trusted FirmwareM: Trusted boot
PDF
Wirelessconnect
PPT
Meletis Belsis - IMS Security
PDF
Resilient IoT Security: The end of flat security models
PDF
z/OS Authorized Code Scanner
PPT
Trusted computing introduction and technical overview
PPT
Fortinet FortiOS 5 Presentation
HKG18-113- Secure Data Path work with i.MX8M
HKG18-223 - Trusted FirmwareM: Trusted boot
Wirelessconnect
Meletis Belsis - IMS Security
Resilient IoT Security: The end of flat security models
z/OS Authorized Code Scanner
Trusted computing introduction and technical overview
Fortinet FortiOS 5 Presentation

What's hot (20)

PPTX
Protecting Data with Short-Lived Encryption Keys and Hardware Root of Trust
PPTX
Fortinet
PDF
High end security for low-end microcontrollers
PPTX
Trusted platform module copy
PDF
MikroTik User Guide
PDF
Security Gateway CP R70
PDF
Property-Based TPM Virtualization
PDF
Trusted Computing Base
PDF
Kernel Mode Threats and Practical Defenses
PPTX
Security for io t apr 29th mentor embedded hangout
PDF
LAS16-100K1: Welcome Keynote
PPTX
Fortinet sandboxing
PDF
XPDS16: Hypervisor Enforced Data Loss Prevention - Neil Sikka, A1LOGIC
PPTX
LAS16-300K2: Geoff Thorpe - IoT Zephyr
PDF
CSF18 - BitLocker Deep Dive - Sami Laiho
PPTX
Trusted Platform Module (TPM)
PDF
Shape your remote connection to your GCE instance
PDF
Fortigate fortiwifi-80f-series
PPT
UTM Basic Rev 1.2 (Modified)
PPTX
OwnYIT CSAT + SIEM
Protecting Data with Short-Lived Encryption Keys and Hardware Root of Trust
Fortinet
High end security for low-end microcontrollers
Trusted platform module copy
MikroTik User Guide
Security Gateway CP R70
Property-Based TPM Virtualization
Trusted Computing Base
Kernel Mode Threats and Practical Defenses
Security for io t apr 29th mentor embedded hangout
LAS16-100K1: Welcome Keynote
Fortinet sandboxing
XPDS16: Hypervisor Enforced Data Loss Prevention - Neil Sikka, A1LOGIC
LAS16-300K2: Geoff Thorpe - IoT Zephyr
CSF18 - BitLocker Deep Dive - Sami Laiho
Trusted Platform Module (TPM)
Shape your remote connection to your GCE instance
Fortigate fortiwifi-80f-series
UTM Basic Rev 1.2 (Modified)
OwnYIT CSAT + SIEM
Ad

Similar to HKG18-219 - Threat Modeling for IoT (20)

PPTX
Internet of things security "Hardware Security"
PDF
Homeland of Things Framework BSides Augusta 2017
PDF
Track 5 session 1 - st dev con 2016 - need for security for iot
PDF
Cybersecurity Issues in Emerging Technologies 1st Edition Leandros Maglaras (...
PDF
IoT Hardware Teardown, Security Testing & Control Design
PPTX
Security in IoT
PDF
Hack one iot device, break them all!
PPTX
The Internet of Fails - Mark Stanislav, Senior Security Consultant, Rapid7
PPTX
Information Technology Strategy by Group 3
DOCX
Final Research Project - Securing IoT Devices What are the Challe.docx
DOCX
Final Research Project - Securing IoT Devices What are the Challe.docx
PDF
CIS 2015 How to secure the Internet of Things? Hannes Tschofenig
DOC
Wireless networks security
PPTX
Securing Internet of Things
PDF
Track 5 session 4 - st dev con 2016 - life cycle management for web
PDF
A condition-based distributed approach for secured privacy preservation of no...
PDF
Information Security Technology for IPv6-based IoT (Internet-of-Things)
PDF
Security in the Internet of Things
PPTX
IoT Security Risks and Challenges
PPTX
Introduction to IoT Security
 
Internet of things security "Hardware Security"
Homeland of Things Framework BSides Augusta 2017
Track 5 session 1 - st dev con 2016 - need for security for iot
Cybersecurity Issues in Emerging Technologies 1st Edition Leandros Maglaras (...
IoT Hardware Teardown, Security Testing & Control Design
Security in IoT
Hack one iot device, break them all!
The Internet of Fails - Mark Stanislav, Senior Security Consultant, Rapid7
Information Technology Strategy by Group 3
Final Research Project - Securing IoT Devices What are the Challe.docx
Final Research Project - Securing IoT Devices What are the Challe.docx
CIS 2015 How to secure the Internet of Things? Hannes Tschofenig
Wireless networks security
Securing Internet of Things
Track 5 session 4 - st dev con 2016 - life cycle management for web
A condition-based distributed approach for secured privacy preservation of no...
Information Security Technology for IPv6-based IoT (Internet-of-Things)
Security in the Internet of Things
IoT Security Risks and Challenges
Introduction to IoT Security
 
Ad

More from Linaro (20)

PDF
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
PDF
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
PDF
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
PDF
Bud17 113: distribution ci using qemu and open qa
PDF
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
PDF
HPC network stack on ARM - Linaro HPC Workshop 2018
PDF
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
PDF
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
PDF
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
PDF
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
PDF
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
PDF
HKG18-100K1 - George Grey: Opening Keynote
PDF
HKG18-318 - OpenAMP Workshop
PDF
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
PDF
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
PDF
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
PDF
HKG18-TR08 - Upstreaming SVE in QEMU
PPTX
HKG18-120 - Devicetree Schema Documentation and Validation
PDF
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
PDF
HKG18-317 - Arm Server Ready Program
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Bud17 113: distribution ci using qemu and open qa
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-100K1 - George Grey: Opening Keynote
HKG18-318 - OpenAMP Workshop
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-500K1 - Keynote: Dileep Bhandarkar - Emerging Computing Trends in the D...
HKG18-317 - Arm Server Ready Program

Recently uploaded (20)

PDF
cuic standard and advanced reporting.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Modernizing your data center with Dell and AMD
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Machine learning based COVID-19 study performance prediction
PDF
Encapsulation theory and applications.pdf
PDF
Electronic commerce courselecture one. Pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
DOCX
The AUB Centre for AI in Media Proposal.docx
cuic standard and advanced reporting.pdf
Review of recent advances in non-invasive hemoglobin estimation
Encapsulation_ Review paper, used for researhc scholars
Building Integrated photovoltaic BIPV_UPV.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Modernizing your data center with Dell and AMD
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Digital-Transformation-Roadmap-for-Companies.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Machine learning based COVID-19 study performance prediction
Encapsulation theory and applications.pdf
Electronic commerce courselecture one. Pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Per capita expenditure prediction using model stacking based on satellite ima...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
The AUB Centre for AI in Media Proposal.docx

HKG18-219 - Threat Modeling for IoT

  • 1. HKG18-219: Threat Modeling for IoT David Brown
  • 2. IoT Security ● 2016 DEF Con, found 47 new vulnerabilities in 23 IoT devices ● Mirai Botnet https://www.theguardian.com/technology/2016/oct/26/ddos-attack-dyn-mirai- botnet targeted DDoS attack, cameras, DVRs, etc ● TRENDnet Webcam: http://www.technewsworld.com/story/78891.html, vulnerable camera could be viewed externally
  • 3. IoT Security (cont.) ● Jeep: https://blog.kaspersky.com/blackhat-jeep-cherokee-hack-explained/9493/ over cell network took control of a Jeep. ○ WiFi password wasn’t very random, guess space in the dozens ○ Chained through vulnerability in multimedia computer ○ CAN bus isolation failed with vulnerability in an MCU that could be “upgraded” without authentication ○ Total control over vehicle, including brakes and steering
  • 4. Threat Modeling ● “Threat Modeling: Designing for Security”, by Adam Shostack ○ What are you building? ○ What can go wrong? ○ What should you do about those things that can go wrong? ○ Did you do a decent job of analysis?
  • 5. Threat Modeling (cont.) ● Nickolai Zeldovich, https://youtu.be/GqmQg-cszw4: MIT 6.858 Computer Systems Security, Fall 2014, Introduction, Threat Models ○ Policy: What is the desired behavior (what is and isn’t allowed)? ○ Threat Model: What is the attacker capable of? ○ Mechanism: What do we do about it?
  • 6. Threat Modeling (cont.) ● Two approaches ● Shostack focuses on architecture of system ● Zeldovich focuses on policy and capability ● I found Zeldovich’s approach easier to organize and follow
  • 7. The example app ● Important to focus on a specific application, ● Can also focus on a specific part, such as a protocol (but be careful, see Jeep example, parts interact)
  • 9. High-level example ● Policy: The data collection host should be able to determine that a given sensor device is valid, and only accept data from valid sensors ● Threat: ○ Attacker can generate arbitrary network packets ○ Attacker cannot brute-force modern crypto algorithms ○ Attacker cannot read from the device’s internal flash ● Mechanism: ○ Enforce DTLS with PSK ciphersuite ● Thoughts: ○ How do we get the secret onto the device ○ Take LWM2M: network secret negotiates device secret ○ (secrets are important, see HKG18-407)
  • 10. High-level example ● Policy: The data collection host should be able to determine that a given sensor device is valid, and only accept data from valid sensors ● Threat: ○ Attacker can generate arbitrary network packets ○ Attacker cannot brute-force modern crypto algorithms ○ Attacker can read from the device’s internal flash ● Attacker can spoof device (violating policy) ● Not obvious, though: ○ Buffer overflow in a protocol allows read of arbitrary memory ○ SWD/JTAG: forget fuses, or reverse fuses ○ Flash protected from read, but CRC reads and can be watched
  • 11. Policy Interaction ● Two policies: ○ Policy: The data collection host should be able to determine that a given sensor device is valid, and only accept data from valid sensors ○ Policy: When sensor data is available, it should be sent to the data collection host in a timely manner ● Not only prevent attacks, but prevent denial of service: ○ Jam network ○ Bogus packets cause device to be rejected
  • 12. Lower-level example ● Concerning software update: ○ The device should accept upgrades from a valid upgrade host and run these new versions ○ The device should only accept upgrades from a valid upgrade host ● Threat: ○ The attacker can spoof network traffic from upgrade host ○ The attacker can reply old data ○ The attacker cannot break RSA ● Mechanism: ○ Digitally sign images with RSA ○ Have increase-only version numbers
  • 13. Lower-level example ● Concerning software update: ○ The device should accept upgrades from a valid upgrade host and run these new versions ○ The device should only accept upgrades from a valid upgrade host ● Threat: ○ The attacker can spoof network traffic from upgrade host ○ The attacker can reply old data ○ The attacker cannot break RSA ● Attack: ○ The attacker spoofs upgrade host ○ Sends invalid upgrades, with bad signatures ○ Device drains battery, or wears out flash repeatedly rejecting the upgrade ● This one is hard
  • 14. Conclusions ● Model document will be dynamic ● Use model to drive development priorities ○ e.g. storing secrets ● Will grow as we move to new application areas
  • 15. Thank You #HKG18 HKG18 keynotes and videos on: connect.linaro.org For further information: www.linaro.org