a reference architecture for iot: how to create a resilient, secure iot cloud

39
Paul Fremantle CTO, WSO2 ([email protected] ) PhD researcher, Portsmouth University ([email protected] ) @pzfreo #wso2 A reference architecture for IoT: How to create a resilient, secure IoT cloud

Upload: wso2

Post on 02-Jul-2015

1.751 views

Category:

Technology


1 download

DESCRIPTION

Paul Fremantle, CTO & Co-Founder of WSO2 delivered a talk at IoT World Forum in London titled "A Reference Architecture for IoT: How to create a resilient, secure IoT cloud". The talk discussed how the world is moving from thousands of connected clients to millions of connected devices; and how we are moving from a known security perimeter to an almost infinite attack space. Scalable and secure architecture enables IoT to succeed and Paul elaborated what such an architecture should look like, and how major companies have implemented this using best of breed Open Source components.

TRANSCRIPT

Page 1: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Paul FremantleCTO, WSO2 ([email protected])PhD researcher, Portsmouth

University([email protected])

@pzfreo #wso2

A reference architecture for IoT: How to create a resilient, secure IoT cloud

Page 2: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Firstly, does security even matter?

Page 3: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 4: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 5: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

My three rules for IoT security

• 1. Don’t be stupid

• 2. Be smart

• 3. Think about what’s different

Page 6: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

My three rules for IoT security

• 1. Don’t be stupid

– The basics of Internet security haven’t gone away

• 2. Be smart

– Use the best practice from the Internet

• 3. Think about what’s different

– What are the unique challenges of your device?

Page 7: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

http://www.forbes.com/sites/kashmirhill/2013/07/26/smart-homes-hack/

Page 8: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

So what is different about IoT?

• The longevity of the device– Updates are harder (or impossible)

• The size of the device– Capabilities are limited – especially around crypto

• The fact there is a device– Usually no UI for entering userids and passwords

• The data– Often highly personal

• The mindset– Appliance manufacturers don’t think like security experts– Embedded systems are often developed by grabbing existing

chips, designs, etc

Page 9: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Physical Hacks

A Practical Attack on the MIFARE Classic: http://www.cs.ru.nl/~flaviog/publications/Attack.MIFARE.pdfKarsten Nohl and Henryk Plotz. MIFARE, Little Security, Despite Obscurity

Page 10: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 11: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Or try this at home?http://freo.me/1g15BiG

Page 12: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Hardware recommendations

• Don’t rely on obscurity

Page 13: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Hardware recommendations

• Don’t rely on obscurity

• Don’t rely on obscurity

• Don’t rely on obscurity

• Don’t rely on obscurity

• Don’t rely on obscurity

• Don’t rely on obscurity

• Don’t rely on obscurity

Page 14: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Hardware Recommendation #2

• Unlocking a single device should risk only that device’s data

Page 15: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

The Network

Page 16: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Direct network vs Gateway model

Page 17: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Crypto on small devices

• Practical Considerations and Implementation Experiences in Securing Smart Object Networks

– http://tools.ietf.org/html/draft-aks-crypto-sensors-02

Page 18: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Key distribution

Page 19: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Ubertooth

http://ubertooth.sourceforge.net/

https://www.usenix.org/conference/woot13/workshop-program/presentation/ryan

Page 20: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 21: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

IDENTITY IS THE NEW PERIMETER

Page 22: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Passwords

• Passwords suck for humans

• They suck even more for devices

Page 23: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 24: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Why Federated Identity for IoT?

• Can enable a meaningful consent mechanism for sharing of device data

• Giving a device a token to use on API calls better than giving it a password– Revokable

– Granular

• May be relevant for both– Device to cloud

– Cloud to app

Page 25: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

More informationhttp://pzf.fremantle.org/2013/11/using-oauth-20-with-mqtt.html

http://siot-workshop.org/

Page 26: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 27: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Reference Architecture for the Internet of Things http://freo.me/iotra

Page 28: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Re-active vs Realtime Pro-Active

Web Architecture

• Re-active

• 10k-100k connections

• Pull-based

• Human interactions

• Some APIs

• Creating Big Data

IoT Architecture

• Push-based

• 100k-1m connections

• No human interaction

• Autonomic

• API driven

• Creating even bigger datasets

Page 29: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Real time stream processing

1 million events/s on 4 servers in Amazon EC2

Page 30: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

30

Analytics

Page 31: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Identity Management

Page 32: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Device Management (Generally available Q1/2015)

Page 33: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

APIs and API Management

eBay handles 6 billion messages a day through WSO2 That is 4 million a minute

Page 34: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

*

Public WSO2Cloud

Hybrid/PrivatePaaS

On-Premise

Develop Once – Deploy Everywhere

Managed Cloud

On AWS

Page 35: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

DOESN’T EVERYONE SAY “JUST USE MY OPEN PLATFORM”?

Page 36: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Really Actually Open

• 100% Open Source (no bait and switch!)

• Heterogenous

• Polyglot

• Interoperable

• Modular and based on OSGi

• Extensible

• API-driven

https://www.flickr.com/photos/jmarty/

Page 37: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud

Summary

• Think about security from the start

• Build a federated and secure model of Identity for Things

• Create Autonomic models that deliver value that surprises and delights customers

• Use Big Data Analytics and the Lambda Architecture to understand your customers

• Be Open!

Page 38: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud
Page 39: A Reference Architecture for IoT: How to create a resilient, secure IoT cloud