securing iot with the arm mbed ecosystem

21
© ARM 2016 Securing IoT with the ARM mbed ecosystem Xiao Sun / Senior Applications Engineer / ARM ARM mbed Connect / Shenzhen, China December 5, 2016

Upload: vuongkien

Post on 14-Feb-2017

227 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Securing IoT with the ARM mbed ecosystem

Title 44pt Title Case

Affiliations 24pt sentence case

20pt sentence case

© ARM 2016

Securing IoT with the ARM mbed ecosystem

Xiao Sun / Senior Applications Engineer / ARM

ARM mbed Connect / Shenzhen, China

December 5, 2016

Page 2: Securing IoT with the ARM mbed ecosystem

© ARM 2016 2

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

Lots of interest in IoT security

Researchers are looking into security of IoT systems

Vulnerabilities are recognized in deployed IoT systems

Fixes are deployed where possible

IoT security is evolving in a positive way as a consequence

Page 3: Securing IoT with the ARM mbed ecosystem

© ARM 2016 3

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

You can’t do big data unless you trust the little data

IoT will not scale without

trust and security

Even simple sensors

With large deployments

you must secure all devices

Enabling trust and security in IoT devices is an opportunity to create value

Page 4: Securing IoT with the ARM mbed ecosystem

© ARM 2016 4

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

IoT projects need a platform OS

Historically, embedded microcontroller design has had little code or design

commonality between systems that enables widespread re-use

The communication, device management and security demands of IoT devices

are a disruptive jump in complexity that drives the need to use a platform OS

Bespoke middleware

integration and application RTOS

Application Platform OS and modular component middleware

Development time

Development time

Page 5: Securing IoT with the ARM mbed ecosystem

© ARM 2016 5

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed OS security

Covers three main types of threat

Security of system, including ability to provision,

manage and update devices (e.g. security fix)

Security of communications between device

and cloud services

Security and integrity of device itself from

untrusted or malicious code

mbed Client Lifecycle security

mbed TLS Communication security

mbed uVisor Device security

mbed OS security

Page 6: Securing IoT with the ARM mbed ecosystem

© ARM 2016 6

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

Proportional security

Threat-models should be informed by business requirements

Technology applied and cost expended varies according to application needs

For Example

Risk environment of application

Value of assets to be protected

Trust and control over firmware

Supply chain structure

Lifetime of the device

Application Security

Disposable mbed TLS + mbed Connect

Long life node + mbed uVisor + active lifecycle

management

Critical infrastructure + Anti-tamper hardware (ARM

SecurCore)

Page 7: Securing IoT with the ARM mbed ecosystem

© ARM 2016 7

Text 54pt sentence case mbed TLS

Page 8: Securing IoT with the ARM mbed ecosystem

© ARM 2016 8

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed TLS

mbed TLS enables cryptographic and SSL/TLS

capabilities for use in embedded software

mbed TLS is tightly integrated into mbed OS

Combined with the mbed uVisor, this provides

comprehensive device and communication security

for IoT products

Page 9: Securing IoT with the ARM mbed ecosystem

© ARM 2016 9

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed TLS – Code quality

Page 10: Securing IoT with the ARM mbed ecosystem

© ARM 2016 10

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed TLS – Code testing

Protocol interoperability tests

Behavioural RFC tests

Vulnerability tracking and fixes

Page 11: Securing IoT with the ARM mbed ecosystem

© ARM 2016 11

Text 54pt sentence case mbed uVisor (pronounced “embed microVisor”)

Page 12: Securing IoT with the ARM mbed ecosystem

© ARM 2016 12

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed uVisor

A tiny, hypervisor/microkernel-like security kernel

Creates and enforces secure isolation boundaries within

the OS, between different parts of the system

Enables secrets to be strongly protected against software

and network-bourn attackers

Efficient hardware enforcement through the memory

protection unit (MPU) and ARM TrustZone for v8-M

Page 13: Securing IoT with the ARM mbed ecosystem

© ARM 2016 13

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

The device security problem

Even simple IoT products have complex components

Secure server communication over complex protocols

Secure firmware updates over the air

Secure device identities

Cryptography APIs and random number generation

Existing IoT solutions use flat address spaces

with little privilege separation

Especially on microcontrollers

Application

protocol

TLS library Diagnostics

Secure

storage

Crypto

keys

Secure ID

Crypto API

WiFi stack

BLE stack

Device

management

Firmware

update

Server

PRNG

Page 14: Securing IoT with the ARM mbed ecosystem

© ARM 2016 14

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

The device security problem - Attacker view

Application

protocol

TLS library Diagnostics

Secure

storage

Crypto

keys

Secure ID

Crypto API

WiFi stack

BLE stack

Device

management

Firmware

update

Server Attacker

PRNG

Flat security models allow attackers to break

device security by breaking any system

component

Common attack entry points:

Complex protocols like TLS, Wi-Fi or USB device

configuration

Firmware update functions (USB, network, CAN…)

Impossible to recover from attacks as firmware

update functions can be compromised by the

attacker

Page 15: Securing IoT with the ARM mbed ecosystem

© ARM 2016 15

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

Split security domains into:

Public uncritical code

Protected critical code

Protect key material and system integrity

Use ARMv7-M MPU or TrustZone for v8-M

Keep footprint of critical code small

Public code operates on cryptographic secrets via

defined private API

No access to raw keys

The device security problem - Mitigation strategies

Exposed Critical

Secure

storage

Crypto

keys

Secure ID

Firmware

update

Crypto API PR

NG

Application

protocol

TLS library

Diagnose

WiFi stack

BLE stack

Device

management

Page 16: Securing IoT with the ARM mbed ecosystem

© ARM 2016 16

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

The device security problem – Mitigation benefits Server Attacker

Exposed Critical x

x

x

x

x

Secure

storage

Crypto

keys

Secure ID

Firmware

update

Crypto API PR

NG

Application

protocol

TLS library

Diagnose

WiFi stack

BLE stack

Device

management

Attackers can compromise the exposed side without

affecting critical code

Cryptographic hashes can be used to verify the integrity of

the exposed side

Triggered on server request

Protected security watchdog allows remote control

Protected side can reliably reset exposed side to a clean

state

The device attack surface is massively reduced as a result

Page 17: Securing IoT with the ARM mbed ecosystem

© ARM 2016 17

Text 54pt sentence case Pulling it together

Page 18: Securing IoT with the ARM mbed ecosystem

© ARM 2016 18

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed OS

mbed uVisor is part of mbed OS, but is optionally enabled depending on the

underlying hardware support

If present, mbed uVisor boots

the mbed OS image, and

configures secure boxes using

the provided access control lists

• TLS stack

Page 19: Securing IoT with the ARM mbed ecosystem

© ARM 2016 19

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

mbed TLS

mbed OS security

Connectivity

client

Provisioning

client Update client

Connectivity

service

Provisioning

service

Update

service

Cloud applications

platforms

Management

security

Communication

security

Device

security

Device hardware

uVisor or TEE

mbed TLS

Keys Crypto Storage Identity

Deployment management Data flow management

Page 20: Securing IoT with the ARM mbed ecosystem

© ARM 2016 20

Title 40pt Title Case

Bullets 24pt sentence case

Sub-bullets 20pt sentence case

IoT deployments will not scale without trust

Very few developers have strong security experience

mbed IoT Device Platform provides a comprehensive

security foundation

Device security

Communications security

Lifecycle security

Summary

Page 21: Securing IoT with the ARM mbed ecosystem

The trademarks featured in this presentation are registered and/or unregistered trademarks of ARM Limited

(or its subsidiaries) in the EU and/or elsewhere. All rights reserved. All other marks featured may be

trademarks of their respective owners.

Copyright © 2016 ARM Limited

© ARM 2016