SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Resilient IoT Security:
The end of flat security models
Milosch Meriac
IoT Security Engineer
milosch.meriac@arm.com
©ARM 20152
“Securing a computer system has
traditionally been a battle of wits: the
penetrator tries to find the holes, and
the designer tries to close them.”
– Morrie Gasser,Author of “Building a Secure Computer System”
©ARM 20153
§ Even simple IoT products require
complex components
§ Secure server communication over
complex protocols
§ Secure firmware updates over the air
§ Unclonable cryptographic device identities
§ Cryptography APIs and random number
generation
§ Existing IoT solutions use flat address
spaces with little privilege separation –
especially on microcontrollers
IoTeapot “Hello World” Example – The AttackerView
Application
Protocol
TLS Library Diagnostics
Secure
Storage
Crypto
Keys
Secure ID
Crypto API
WiFi Stack
BLE Stack
Device
Management
Firmware
Update
PRNG
©ARM 20154
IoTeapot “Hello World” Example – The AttackerView
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 likeTLS,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
©ARM 20155
“It ain’t what you don’t know that gets you
into trouble. It’s what you know for sure
that just ain’t.”
– MarkTwain
©ARM 20156
Security Plus Time Equals Comedy: Plan for theWorst Case
https://commons.wikimedia.org/wiki/File:Cret_Comedy_and_Tragedy.JPG
§ System security is dynamic over device lifetime
§ Devices last longer than expected
§ Likelihood of attacks underestimated as a result
§ If your system is successful,it will be hacked
§ Deployment costs of firmware updates in case of
hacks often surpasses costs of new devices.As a
result known-broken systems are kept in use
§ Developers must ensure secure,reliable and
“cheap” update possibilities
§ Devices must be capable of remote recovery
from an untrusted state back to a trusted state
©ARM 20157
§ Split security domains into
§ exposed uncritical code
§ protected critical code
§ Keep footprint of critical code
small to enable verification
§ Protect key material and system
integrity using the ARMv7-M
hardware memory protection
§ Public code operates on cryptographic
secrets via defined private API – no
access to raw keys
IoTeapot “Hello World” Example – Mitigation Strategies
Application
Protocol
TLS Library
Diagnose
WiFi Stack
BLE Stack
Device
Management
Secure
Storage
Crypto
Keys
Secure ID
Crypto API
Firmware
Update
PRNG
Exposed Critical
©ARM 20158
IoTeapot “Hello World” Example – Mitigation Strategies
Server Attacker
Exposed Critical
x
x
x
x
x
Secure
Storage
Crypto
Keys
Secure ID
Firmware
Update
Crypto API
PRNG
Application
Protocol
TLS Library
Diagnose
WiFi Stack
BLE Stack
Device
Management
§ Attackers can compromise the exposed
side without affecting critical code
§ Using cryptographic hashes
the integrity of the exposed side
can be verified
§ Triggered on server request
§ Protected security watchdog box allows
remote control
§ Protected side can reliably reset
exposed boxes to a clean state
§ The device attack surface is massively
reduced as a result
©ARM 20159
Enable Fast Innovation
§ Modules on the critical side require
strong security coding practices
§ Critical code rarely changes
§ Exposed code developed rapidly
§ Faster time to market
§ Quick innovation cycles for exposed boxes
§ Still a secure product
§ Simple recovery from programming bugs in
exposed code using secure boxes
Exposed Critical
Secure
Storage
Crypto
Keys
Secure ID
Firmware
Update
Crypto API
PRNG
Application
Protocol
TLS Library
Diagnose
WiFi Stack
BLE Stack
Device
Management
©ARM 201510
The uVisor Design Principles
Exposed Critical
Secure
Storage
Crypto
Keys
Secure ID
Firmware
Update
Crypto API
PRNG
Application
Protocol
TLS Library
Diagnose
WiFi Stack
BLE Stack
Device
Management
Future Versions of mbed OS will separate critical
components like firmware update or raw
cryptographic keys functions to ensure bugs in one
secure module won’t affect other secure modules.
§ Ease of use
§ Hardware-enforced security sandboxes
§ Mutually distrustful security model
§ “Principle of Least Privilege”
§ Boxes are protected against each other
§ Boxes protected against malicious code from
broken system components,driver or other
boxes
§ EnforceAPI entry points across boxes
§ Box-APIs can be restricted to specific boxes
§ Per-box access control lists (ACL)
§ Restrict access to selected peripherals
§ Shared memories for box-box communication
©ARM 201511
§ uVisor initialized first in boot process
§ Private stack and data sections
§ Private data sections in flash for storing secrets
§ Relocation of interrupts vector table into
secure memory
§ Initialization of memory protection unit
based on box ACL’s
§ Whitelist approach – only necessary peripherals
are accessible to each box
§ Each box has private .bss data and stack sections
§ De-privilege execution, continue boot
unprivileged to initialize C/C++ libraries
The uVisor Boot Process on the ARMv7-MArchitecture
©ARM 201512
The uVisor Memory Model
§ uVisor allocates protected per-box stacks and
detects under-/overflows during operation
§ Main box memory accessible to all boxes
§ All remaining per-Box data sections are
protected by default:
§ Secure Per-Box Context Memory
§ Shared data/peripherals with other boxes on
demand
§ uVisor resolvesACLs during boot and
identifiesACL collisions
§ uVisor code sections visible to everybody
§ Empty flash memory is made available to the
system as configuration storage – write access
only through configurationAPI
©ARM 201513
“Developers, developers,
…, developers”
– Steve Ballmer
©ARM 201514
Enable uVisor and Share Peripherals Across Boxes
#include <uvisor-lib/uvisor-lib.h>
/* create background ACLs for the main box */
static const UvBoxAclItem g_background_acl[] = {
{UART0, sizeof(*UART0), UVISOR_TACL_PERIPHERAL},
{UART1, sizeof(*UART1), UVISOR_TACL_PERIPHERAL},
{PIT, sizeof(*PIT), UVISOR_TACL_PERIPHERAL},
};
/* set uvisor mode (enable) */
UVISOR_SET_MODE_ACL(UVISOR_ENABLED, g_background_acl);
#include <uvisor-lib/uvisor-lib.h>
/* set uvisor mode (enable) */
UVISOR_SET_MODE(UVISOR_ENABLED);
§ enable uVisor – optionally with shared peripherals across boxes:
©ARM 201515
Setting up Protected Sandboxes
/* create private box context */
typedef struct {
uint8_t secret[SECRET_SIZE];
bool initialized;
} BoxContext;
/* create ACLs for the module */
static const UvBoxAclItem g_box_acl[] = {
{RNG, sizeof(*RNG), UVISOR_TACL_PERIPHERAL}, /* a peripheral */
};
/*required stack size */
#define BOX_STACK_SIZE 0x100
/* configure secure box compartment */
UVISOR_BOX_CONFIG(my_box_name, g_box_acl, BOX_STACK_SIZE, BoxContext);
©ARM 201516
Define Function Call Gateways Across Security Boundaries
uint32_t secure_gateway(box_name, uint32_t target_fn, ...)/*pre-processor macro*/
§ Call box functions using the security context of the target box (“sudo”)
§ Secure call gateways support up to four arguments and a return value
/* the box is configured here */
...
/* the actual function */
extern "C" uint32_t __secure_sum(uint32_t op1, uint32_t op2)
{
return op1 + op2;
}
/* the gateway to the secure function */
uint32_t secure_sum(uint32_t op1, uint32_t op2)
{
return secure_gateway(my_box_name, __secure_sum, op1, op2)
}
©ARM 201517
Secure uVisor API
void vIRQ_SetVector(uint32_t irqn, uint32_t vector);
uint32_t vIRQ_GetVector(uint32_t irqn);
void vIRQ_EnableIRQ(uint32_t irqn);
void vIRQ_DisableIRQ(uint32_t irqn);
void vIRQ_ClearPendingIRQ(uint32_t irqn);
void vIRQ_SetPendingIRQ(uint32_t irqn);
uint32_t vIRQ_GetPendingIRQ(uint32_t irqn);
void vIRQ_SetPriority(uint32_t irqn, uint32_t priority);
uint32_t vIRQ_GetPriority(uint32_t irqn);
§ Accelerated secure peripheral accessAPI with bit-levelACL’s
§ Security verified during installation on device or before firmware signing on the server
§ Attackers can’t create new peripheral access calls without writing to Flash
§ IRQAPI for unprivileged interrupt handling
§ Interrupts are executed unprivileged in the box security context of the owning box
§ CPU registers cleared for protecting the interrupted box against data leakage
©ARM 201518
#define MY_HANDLER_IRQn 42
void my_irq_handler(void)
{
...
}
int register_my_irq_handler(void)
{
vIRQ_SetVector(MY_HANDLER_IRQn, (uint32_t) &my_irq_handler);
vIRQ_EnableIRQ(MY_HANDLER_IRQn);
}
Secure uVisor InterruptAPI
§ Interrupt ownership is exclusive – multiple boxes cannot register for the same interrupt
§ Registration based on first-come-first-serve: sharing IRQ’s only possible via box API
services
§ uVisor remembers association between Interrupt handler and box security context
during registration: other boxes can’t access that interrupt till its released
©ARM 201519
“The Devil is in the details, but so is salvation”
– Hyman G. Rickover, United States Navy Admiral
©ARM 201520
Call Gateway Internals forARMv7-M Systems
§ Call gateways only accepted from flash
memory
§ attacker has no write access to flash controller
§ Metadata of call gateway at a fixed offset
from uVisor gateway context switch – a
supervisor call (SVC)
§ Contains pointer to target box configuration &
target function
§ Guaranteed latency for cross-box calls
§ Can limit access to specific caller boxes
§ Security verified once during installation
/* the actual secure gateway */
#define secure_gateway(dst_box, dst_fn, ...)
({
SELECT_ARGS(__VA_ARGS__)
register uint32_t res asm("r0");
asm volatile (
"svc UVISOR_API_SVC_CALL_IDn"
"b.n skip_metadata%=n"
".word UVISOR_SVC_GW_MAGICn"
".word dst_fnn"
".word dst_box##_cfg_ptrn"
"skip_metadata%=:n”
: "=r" (res)
: ASM_INLINE_ARGS(__VA_ARGS__)
);
res;
})
©ARM 201521
§ ARM mbed-OS uVisor security model of TrustZone for ARMv8M
remains the same as the ARMv7-M security model
§ TrustZone for ARMv8M enables bus level protection in hardware
§ ARMv7-M requires software API filters for DMA access and other security critical
operations
§ ARMv8-M can filter for DMA access for requests initiated by unprivileged code on
bus level
§ TrustZone for ARMv8M MPU banking reduces complexity of secure
target OS
§ Secure OS partition own a private MPU with full control
§ OS keeps the privileged mode for fast IRQs
§ Fast interrupt routing and register clearing in hardware
§ Fast cross-box calls on TrustZone for ARMv8M – optimized call gateways
uVisor Outlook – Existing ARMv7-M vs.TrustZone for ARMv8M
©ARM 201522
Lifecycle Security
mbed OS Secure Identity,Config and Update
Secure Code Compartments
mbed OS uVisor on ARMv7-M MPU
Communication Security
mbedTLS
mbed OS:Architected Security from the Ground Up
©ARM 201523
Hardware Interfaces
mbed OS
uVisor
mbed OS
Drivers
mbed OS
Core Schedulers
mbed OS API
Communication Management
Device Management mbed TLS
mbed Client
IP Stack
BLE APIEvent
TasksEnergy
Device DriversCMSIS-Core
Application Code Libraries
uVisor
Debug Support
Lifecycle SecuritySecure Drivers
ARMv7-M
ARM Cortex-M CPU
MCU
Radio
SensorCrypto
SW Crypto
ThreadWiFi BLE6LoWPAN
Thread API
Communication
Security
Lifecycle
Security
Device
Security
mbed OS:Architected Security from the Ground Up
Secure IoT: Example Use Cases
©ARM 201525
§ Trusted messages contain commands,
data or firmware parts
§ Box security not affected by
communication stack exploits or
infections outside of trusted box
§ Payload delivery is agnostic of protocol
stack
§ Resilient box communication over the
available channels
§ Ethernet, CAN-Bus, USB, Serial
§ Bluetooth,Wi-Fi,ZigBee,6LoWPAN
Case Study: Secure Server Communication
Exposed box with
communication stack
Decrypt
and verify
using
DTLS
GAP
Secured and trusted
device process
GATT
AP
BLE LL
Trusted box without
communication Stack
Opaque Block
Commands,
Data,
Firmware Blob
Opaque
Bluetooth
Communication
Stack
ExposedApplicationCode
IoT Device owned by user.
Initial identity provisioned by System Integrator
Messages delivered agnostic of communication stack
©ARM 201526
§ Communication protected by mbed TLS
§ Raw message payloads decrypted and
verified directly by protected code
§ mbed TLS box not exposed to communication
protocol stack bugs
§ No interference by other boxes
§ Low attack surface
§ Authentication and encryption keys are
protected against malware
§ Malware can’t interfere without knowing
the encryption or signing keys
Case Study: Secure Server Communication
Exposed box with
communication stack
Decrypt
and verify
using
DTLS
TLS box handles
only the SSL protocol
Opaque BlockOpaque
Initial keys provisioned by System Integrator.
Messages decoded independent of stacks using
mbed TLS in separate security context
ExposedApplicationCode
Decryption Keys
Decrypted BlockDecrypted
IP Stack
©ARM 201527
Case Study: Secure Remote Firmware Updates
Exposed box with
communication stack
GAP
GATT
AP
BLE LL
Bluetooth
Communication
Stack
Flash interface box protected by uVisor
– without own communication stack
CustomApplicationCode
Opaque Block
IoT device owned by user,
Initial identity provisioned by System Integrator,
Messages delivered independent of stacks
Firmware
update blocks
FW005
Firmware Update Image
Secure Storage,
Firmware Update Blocks
Re-flash Untrusted
Application Upon Completion
Opaque
Secured and trusted
device process
Decrypt
and verify
using
DTLS
§ Firmware manifest block augments
existing firmware formats with safety
and security features
§ Downgrade attacks prevented
§ Devices or device classes directly addressed by
updates to improve safety
§ Efficient firmware distribution in mesh networks
§ Support for partial & chained firmware updates
§ Crypto watchdog box enforces remote
updates even for infected devices
§ New firmware applied after all blocks are
received,decrypted and verified
§ Trusted side updates itself using a boot loader
©ARM 201528
Case Study: Controlled Malware Recovery
§ Secure box detects malware infection
§ Enforces communication through the exposed side to the server
§ Receives latest security rules and virus behaviour fingerprints for
detection
§ Shares detected pattern fingerprint matches with control server
§ Distributed detection of viruses and live infrastructure attacks
§ When communication with the server breaks for a
minimum time, parts of the device stack are reset to
a known-good state
§ Prevents malware from staying on the device
§ Switches to a safe mode to detect network problems or to
remotely update the firmware
©ARM 201529
“The mantra of any good security engineer is: “Security is not
a product, but a process”It's more than designing
strong cryptography into a system;it's designing the entire system such that
all security measures,including cryptography,work together.”
– Bruce Schneier
ThankYou – Questions?
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 © 2015ARM Limited
Get the latest information on mbed security…
https://www.mbed.com/en/technologies/security/
.... and follow uVisor development on github:
https://github.com/ARMmbed/uvisor/
(uVisor is shared under Apache 2.0 license)

Weitere ähnliche Inhalte

Was ist angesagt?

LAS16-300K2: Geoff Thorpe - IoT Zephyr
LAS16-300K2: Geoff Thorpe - IoT ZephyrLAS16-300K2: Geoff Thorpe - IoT Zephyr
LAS16-300K2: Geoff Thorpe - IoT ZephyrShovan Sargunam
 
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, Intel
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, IntelXPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, Intel
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, IntelThe Linux Foundation
 
HKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: IntroductionHKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: IntroductionLinaro
 
LCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLinaro
 
Operating System Support for Run-Time Security with a Trusted Execution Envir...
Operating System Support for Run-Time Security with a Trusted Execution Envir...Operating System Support for Run-Time Security with a Trusted Execution Envir...
Operating System Support for Run-Time Security with a Trusted Execution Envir...Javier González
 
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3Linaro
 
LAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLinaro
 
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...Hardware-assisted Isolated Execution Environment to run trusted OS and applic...
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...Kuniyasu Suzaki
 
TDC2017 - Embedded Linux - Deploy Software Update for Linux Devices
TDC2017 - Embedded Linux - Deploy Software Update for Linux DevicesTDC2017 - Embedded Linux - Deploy Software Update for Linux Devices
TDC2017 - Embedded Linux - Deploy Software Update for Linux DevicesCaio Pereira
 
Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8Linaro
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) FFRI, Inc.
 
Thesis presentation
Thesis presentationThesis presentation
Thesis presentationCHIACHE lee
 
Fortinet & VMware integration
Fortinet & VMware integrationFortinet & VMware integration
Fortinet & VMware integrationVMUG IT
 
LCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted FirmwareLCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted FirmwareLinaro
 
Securing the Internet of Things - Hank Chavers
Securing the Internet of Things - Hank ChaversSecuring the Internet of Things - Hank Chavers
Securing the Internet of Things - Hank ChaversWithTheBest
 
Fortinet FortiOS 5 Presentation
Fortinet FortiOS 5 PresentationFortinet FortiOS 5 Presentation
Fortinet FortiOS 5 PresentationNCS Computech Ltd.
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Positive Hack Days
 
How to configure cisco asa virtual firewall
How to configure cisco asa virtual firewallHow to configure cisco asa virtual firewall
How to configure cisco asa virtual firewallIT Tech
 
CCNA Security 06- AAA
CCNA Security 06- AAACCNA Security 06- AAA
CCNA Security 06- AAAAhmed Habib
 

Was ist angesagt? (20)

LAS16-300K2: Geoff Thorpe - IoT Zephyr
LAS16-300K2: Geoff Thorpe - IoT ZephyrLAS16-300K2: Geoff Thorpe - IoT Zephyr
LAS16-300K2: Geoff Thorpe - IoT Zephyr
 
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, Intel
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, IntelXPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, Intel
XPDDS17: Introduction to Intel SGX and SGX Virtualization - Kai Huang, Intel
 
HKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: IntroductionHKG18-212 - Trusted Firmware M: Introduction
HKG18-212 - Trusted Firmware M: Introduction
 
LCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solution
 
Operating System Support for Run-Time Security with a Trusted Execution Envir...
Operating System Support for Run-Time Security with a Trusted Execution Envir...Operating System Support for Run-Time Security with a Trusted Execution Envir...
Operating System Support for Run-Time Security with a Trusted Execution Envir...
 
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
 
LAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted Protocol
 
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...Hardware-assisted Isolated Execution Environment to run trusted OS and applic...
Hardware-assisted Isolated Execution Environment to run trusted OS and applic...
 
TDC2017 - Embedded Linux - Deploy Software Update for Linux Devices
TDC2017 - Embedded Linux - Deploy Software Update for Linux DevicesTDC2017 - Embedded Linux - Deploy Software Update for Linux Devices
TDC2017 - Embedded Linux - Deploy Software Update for Linux Devices
 
Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8Lcu14 107- op-tee on ar mv8
Lcu14 107- op-tee on ar mv8
 
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017) TrustZone use case and trend (FFRI Monthly Research Mar 2017)
TrustZone use case and trend (FFRI Monthly Research Mar 2017)
 
Thesis presentation
Thesis presentationThesis presentation
Thesis presentation
 
Fortinet & VMware integration
Fortinet & VMware integrationFortinet & VMware integration
Fortinet & VMware integration
 
LCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted FirmwareLCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted Firmware
 
Securing the Internet of Things - Hank Chavers
Securing the Internet of Things - Hank ChaversSecuring the Internet of Things - Hank Chavers
Securing the Internet of Things - Hank Chavers
 
Fortinet FortiOS 5 Presentation
Fortinet FortiOS 5 PresentationFortinet FortiOS 5 Presentation
Fortinet FortiOS 5 Presentation
 
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
Критически опасные уязвимости в популярных 3G- и 4G-модемах или как построить...
 
TekIVR Datasheet
TekIVR DatasheetTekIVR Datasheet
TekIVR Datasheet
 
How to configure cisco asa virtual firewall
How to configure cisco asa virtual firewallHow to configure cisco asa virtual firewall
How to configure cisco asa virtual firewall
 
CCNA Security 06- AAA
CCNA Security 06- AAACCNA Security 06- AAA
CCNA Security 06- AAA
 

Andere mochten auch

Tower defense for hackers: Layered (in-)security for microcontrollers
Tower defense for hackers: Layered (in-)security for microcontrollersTower defense for hackers: Layered (in-)security for microcontrollers
Tower defense for hackers: Layered (in-)security for microcontrollersMilosch Meriac
 
Crypto Performance on ARM Cortex-M Processors
Crypto Performance on ARM Cortex-M ProcessorsCrypto Performance on ARM Cortex-M Processors
Crypto Performance on ARM Cortex-M ProcessorsHannes Tschofenig
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLinaro
 
Cache-partitioning
Cache-partitioningCache-partitioning
Cache-partitioningdavidkftam
 
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore Systems
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore SystemsParallelism-Aware Memory Interference Delay Analysis for COTS Multicore Systems
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore SystemsHeechul Yun
 
A Modern View of Smart Cards Security
A Modern View of Smart Cards SecurityA Modern View of Smart Cards Security
A Modern View of Smart Cards SecurityIlia Levin
 
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...Heechul Yun
 
Mr201303 trust zone
Mr201303 trust zoneMr201303 trust zone
Mr201303 trust zoneFFRI, Inc.
 
SecureCore RTAS2013
SecureCore RTAS2013SecureCore RTAS2013
SecureCore RTAS2013mkyoon83
 
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5mbed Connect Asia 2016 Developing IoT devices with mbed OS 5
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5armmbed
 
LAS16-112: mbed OS Technical Overview
LAS16-112: mbed OS Technical OverviewLAS16-112: mbed OS Technical Overview
LAS16-112: mbed OS Technical OverviewLinaro
 
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVC
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVCMy MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVC
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVCOsaka University
 
FORUM PA 2015 - Microservices with IBM Bluemix
FORUM PA 2015 - Microservices with IBM BluemixFORUM PA 2015 - Microservices with IBM Bluemix
FORUM PA 2015 - Microservices with IBM Bluemixgjuljo
 
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...CloudIDSummit
 
Introduction to Selinux
Introduction to SelinuxIntroduction to Selinux
Introduction to SelinuxAtul Jha
 

Andere mochten auch (20)

Tower defense for hackers: Layered (in-)security for microcontrollers
Tower defense for hackers: Layered (in-)security for microcontrollersTower defense for hackers: Layered (in-)security for microcontrollers
Tower defense for hackers: Layered (in-)security for microcontrollers
 
Crypto Performance on ARM Cortex-M Processors
Crypto Performance on ARM Cortex-M ProcessorsCrypto Performance on ARM Cortex-M Processors
Crypto Performance on ARM Cortex-M Processors
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
 
RapidMRC
RapidMRCRapidMRC
RapidMRC
 
Cache-partitioning
Cache-partitioningCache-partitioning
Cache-partitioning
 
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore Systems
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore SystemsParallelism-Aware Memory Interference Delay Analysis for COTS Multicore Systems
Parallelism-Aware Memory Interference Delay Analysis for COTS Multicore Systems
 
A Modern View of Smart Cards Security
A Modern View of Smart Cards SecurityA Modern View of Smart Cards Security
A Modern View of Smart Cards Security
 
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...
MemGuard: Memory Bandwidth Reservation System for Efficient Performance Isola...
 
Mr201303 trust zone
Mr201303 trust zoneMr201303 trust zone
Mr201303 trust zone
 
SecureCore RTAS2013
SecureCore RTAS2013SecureCore RTAS2013
SecureCore RTAS2013
 
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5mbed Connect Asia 2016 Developing IoT devices with mbed OS 5
mbed Connect Asia 2016 Developing IoT devices with mbed OS 5
 
LAS16-112: mbed OS Technical Overview
LAS16-112: mbed OS Technical OverviewLAS16-112: mbed OS Technical Overview
LAS16-112: mbed OS Technical Overview
 
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVC
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVCMy MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVC
My MPEG life: MPEG-2, MPEG-4, H264/AVC and H.265/HEVC
 
1 system security
1 system security1 system security
1 system security
 
FORUM PA 2015 - Microservices with IBM Bluemix
FORUM PA 2015 - Microservices with IBM BluemixFORUM PA 2015 - Microservices with IBM Bluemix
FORUM PA 2015 - Microservices with IBM Bluemix
 
MDK-ARMでPSoC開発
MDK-ARMでPSoC開発MDK-ARMでPSoC開発
MDK-ARMでPSoC開発
 
ZynqMP勉強会
ZynqMP勉強会ZynqMP勉強会
ZynqMP勉強会
 
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...
CIS 2015- Understanding & Managing Discretionary Access: The TAO of Entitleme...
 
Rbac
RbacRbac
Rbac
 
Introduction to Selinux
Introduction to SelinuxIntroduction to Selinux
Introduction to Selinux
 

Ähnlich wie Resilient IoT Security: The end of flat security models

Confidential compute with hyperledger fabric .v17
Confidential compute with hyperledger fabric .v17Confidential compute with hyperledger fabric .v17
Confidential compute with hyperledger fabric .v17LennartF
 
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskOpen and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskInductive Automation
 
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskOpen and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskInductive Automation
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Black Duck by Synopsys
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Tim Mackey
 
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ Swarm
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ SwarmRevolutionizing IoT Testing - A Sneak Peek of HiveMQ Swarm
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ SwarmHiveMQ
 
Removing Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment SuccessRemoving Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment SuccessMicrosoft Tech Community
 
Security Best Practices for Your Ignition System
Security Best Practices for Your Ignition SystemSecurity Best Practices for Your Ignition System
Security Best Practices for Your Ignition SystemInductive Automation
 
Enabling embedded security for the Internet of Things
Enabling embedded security for the Internet of ThingsEnabling embedded security for the Internet of Things
Enabling embedded security for the Internet of Thingsteam-WIBU
 
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...The Linux Foundation
 
CCNP Switching Chapter 10
CCNP Switching Chapter 10CCNP Switching Chapter 10
CCNP Switching Chapter 10Chaing Ravuth
 
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...Vincent Giersch
 
Study notes for CompTIA Certified Advanced Security Practitioner
Study notes for CompTIA Certified Advanced Security PractitionerStudy notes for CompTIA Certified Advanced Security Practitioner
Study notes for CompTIA Certified Advanced Security PractitionerDavid Sweigert
 
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)Amazon Web Services
 

Ähnlich wie Resilient IoT Security: The end of flat security models (20)

Confidential compute with hyperledger fabric .v17
Confidential compute with hyperledger fabric .v17Confidential compute with hyperledger fabric .v17
Confidential compute with hyperledger fabric .v17
 
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskOpen and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
 
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the RiskOpen and Secure SCADA: Efficient and Economical Control, Without the Risk
Open and Secure SCADA: Efficient and Economical Control, Without the Risk
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
 
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ Swarm
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ SwarmRevolutionizing IoT Testing - A Sneak Peek of HiveMQ Swarm
Revolutionizing IoT Testing - A Sneak Peek of HiveMQ Swarm
 
Removing Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment SuccessRemoving Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment Success
 
Autopilot : Securing Cloud Native Storage
Autopilot : Securing Cloud Native StorageAutopilot : Securing Cloud Native Storage
Autopilot : Securing Cloud Native Storage
 
Security Best Practices for Your Ignition System
Security Best Practices for Your Ignition SystemSecurity Best Practices for Your Ignition System
Security Best Practices for Your Ignition System
 
CCNP ROUTE V7 CH8
CCNP ROUTE V7 CH8CCNP ROUTE V7 CH8
CCNP ROUTE V7 CH8
 
Enabling embedded security for the Internet of Things
Enabling embedded security for the Internet of ThingsEnabling embedded security for the Internet of Things
Enabling embedded security for the Internet of Things
 
ASA day 1.pptx
ASA day 1.pptxASA day 1.pptx
ASA day 1.pptx
 
Flak+technologies
Flak+technologiesFlak+technologies
Flak+technologies
 
Flak+technologies
Flak+technologiesFlak+technologies
Flak+technologies
 
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...
XPDDS18: Design Session - SGX deep dive and SGX Virtualization Discussion, Ka...
 
CCNP Switching Chapter 10
CCNP Switching Chapter 10CCNP Switching Chapter 10
CCNP Switching Chapter 10
 
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...
UKC - Feb 2013 - Analyzing the security of Windows 7 and Linux for cloud comp...
 
[9] Firewall.pdf
[9] Firewall.pdf[9] Firewall.pdf
[9] Firewall.pdf
 
Study notes for CompTIA Certified Advanced Security Practitioner
Study notes for CompTIA Certified Advanced Security PractitionerStudy notes for CompTIA Certified Advanced Security Practitioner
Study notes for CompTIA Certified Advanced Security Practitioner
 
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302)
 

Kürzlich hochgeladen

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 

Kürzlich hochgeladen (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 

Resilient IoT Security: The end of flat security models

  • 1. Resilient IoT Security: The end of flat security models Milosch Meriac IoT Security Engineer milosch.meriac@arm.com
  • 2. ©ARM 20152 “Securing a computer system has traditionally been a battle of wits: the penetrator tries to find the holes, and the designer tries to close them.” – Morrie Gasser,Author of “Building a Secure Computer System”
  • 3. ©ARM 20153 § Even simple IoT products require complex components § Secure server communication over complex protocols § Secure firmware updates over the air § Unclonable cryptographic device identities § Cryptography APIs and random number generation § Existing IoT solutions use flat address spaces with little privilege separation – especially on microcontrollers IoTeapot “Hello World” Example – The AttackerView Application Protocol TLS Library Diagnostics Secure Storage Crypto Keys Secure ID Crypto API WiFi Stack BLE Stack Device Management Firmware Update PRNG
  • 4. ©ARM 20154 IoTeapot “Hello World” Example – The AttackerView 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 likeTLS,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
  • 5. ©ARM 20155 “It ain’t what you don’t know that gets you into trouble. It’s what you know for sure that just ain’t.” – MarkTwain
  • 6. ©ARM 20156 Security Plus Time Equals Comedy: Plan for theWorst Case https://commons.wikimedia.org/wiki/File:Cret_Comedy_and_Tragedy.JPG § System security is dynamic over device lifetime § Devices last longer than expected § Likelihood of attacks underestimated as a result § If your system is successful,it will be hacked § Deployment costs of firmware updates in case of hacks often surpasses costs of new devices.As a result known-broken systems are kept in use § Developers must ensure secure,reliable and “cheap” update possibilities § Devices must be capable of remote recovery from an untrusted state back to a trusted state
  • 7. ©ARM 20157 § Split security domains into § exposed uncritical code § protected critical code § Keep footprint of critical code small to enable verification § Protect key material and system integrity using the ARMv7-M hardware memory protection § Public code operates on cryptographic secrets via defined private API – no access to raw keys IoTeapot “Hello World” Example – Mitigation Strategies Application Protocol TLS Library Diagnose WiFi Stack BLE Stack Device Management Secure Storage Crypto Keys Secure ID Crypto API Firmware Update PRNG Exposed Critical
  • 8. ©ARM 20158 IoTeapot “Hello World” Example – Mitigation Strategies Server Attacker Exposed Critical x x x x x Secure Storage Crypto Keys Secure ID Firmware Update Crypto API PRNG Application Protocol TLS Library Diagnose WiFi Stack BLE Stack Device Management § Attackers can compromise the exposed side without affecting critical code § Using cryptographic hashes the integrity of the exposed side can be verified § Triggered on server request § Protected security watchdog box allows remote control § Protected side can reliably reset exposed boxes to a clean state § The device attack surface is massively reduced as a result
  • 9. ©ARM 20159 Enable Fast Innovation § Modules on the critical side require strong security coding practices § Critical code rarely changes § Exposed code developed rapidly § Faster time to market § Quick innovation cycles for exposed boxes § Still a secure product § Simple recovery from programming bugs in exposed code using secure boxes Exposed Critical Secure Storage Crypto Keys Secure ID Firmware Update Crypto API PRNG Application Protocol TLS Library Diagnose WiFi Stack BLE Stack Device Management
  • 10. ©ARM 201510 The uVisor Design Principles Exposed Critical Secure Storage Crypto Keys Secure ID Firmware Update Crypto API PRNG Application Protocol TLS Library Diagnose WiFi Stack BLE Stack Device Management Future Versions of mbed OS will separate critical components like firmware update or raw cryptographic keys functions to ensure bugs in one secure module won’t affect other secure modules. § Ease of use § Hardware-enforced security sandboxes § Mutually distrustful security model § “Principle of Least Privilege” § Boxes are protected against each other § Boxes protected against malicious code from broken system components,driver or other boxes § EnforceAPI entry points across boxes § Box-APIs can be restricted to specific boxes § Per-box access control lists (ACL) § Restrict access to selected peripherals § Shared memories for box-box communication
  • 11. ©ARM 201511 § uVisor initialized first in boot process § Private stack and data sections § Private data sections in flash for storing secrets § Relocation of interrupts vector table into secure memory § Initialization of memory protection unit based on box ACL’s § Whitelist approach – only necessary peripherals are accessible to each box § Each box has private .bss data and stack sections § De-privilege execution, continue boot unprivileged to initialize C/C++ libraries The uVisor Boot Process on the ARMv7-MArchitecture
  • 12. ©ARM 201512 The uVisor Memory Model § uVisor allocates protected per-box stacks and detects under-/overflows during operation § Main box memory accessible to all boxes § All remaining per-Box data sections are protected by default: § Secure Per-Box Context Memory § Shared data/peripherals with other boxes on demand § uVisor resolvesACLs during boot and identifiesACL collisions § uVisor code sections visible to everybody § Empty flash memory is made available to the system as configuration storage – write access only through configurationAPI
  • 13. ©ARM 201513 “Developers, developers, …, developers” – Steve Ballmer
  • 14. ©ARM 201514 Enable uVisor and Share Peripherals Across Boxes #include <uvisor-lib/uvisor-lib.h> /* create background ACLs for the main box */ static const UvBoxAclItem g_background_acl[] = { {UART0, sizeof(*UART0), UVISOR_TACL_PERIPHERAL}, {UART1, sizeof(*UART1), UVISOR_TACL_PERIPHERAL}, {PIT, sizeof(*PIT), UVISOR_TACL_PERIPHERAL}, }; /* set uvisor mode (enable) */ UVISOR_SET_MODE_ACL(UVISOR_ENABLED, g_background_acl); #include <uvisor-lib/uvisor-lib.h> /* set uvisor mode (enable) */ UVISOR_SET_MODE(UVISOR_ENABLED); § enable uVisor – optionally with shared peripherals across boxes:
  • 15. ©ARM 201515 Setting up Protected Sandboxes /* create private box context */ typedef struct { uint8_t secret[SECRET_SIZE]; bool initialized; } BoxContext; /* create ACLs for the module */ static const UvBoxAclItem g_box_acl[] = { {RNG, sizeof(*RNG), UVISOR_TACL_PERIPHERAL}, /* a peripheral */ }; /*required stack size */ #define BOX_STACK_SIZE 0x100 /* configure secure box compartment */ UVISOR_BOX_CONFIG(my_box_name, g_box_acl, BOX_STACK_SIZE, BoxContext);
  • 16. ©ARM 201516 Define Function Call Gateways Across Security Boundaries uint32_t secure_gateway(box_name, uint32_t target_fn, ...)/*pre-processor macro*/ § Call box functions using the security context of the target box (“sudo”) § Secure call gateways support up to four arguments and a return value /* the box is configured here */ ... /* the actual function */ extern "C" uint32_t __secure_sum(uint32_t op1, uint32_t op2) { return op1 + op2; } /* the gateway to the secure function */ uint32_t secure_sum(uint32_t op1, uint32_t op2) { return secure_gateway(my_box_name, __secure_sum, op1, op2) }
  • 17. ©ARM 201517 Secure uVisor API void vIRQ_SetVector(uint32_t irqn, uint32_t vector); uint32_t vIRQ_GetVector(uint32_t irqn); void vIRQ_EnableIRQ(uint32_t irqn); void vIRQ_DisableIRQ(uint32_t irqn); void vIRQ_ClearPendingIRQ(uint32_t irqn); void vIRQ_SetPendingIRQ(uint32_t irqn); uint32_t vIRQ_GetPendingIRQ(uint32_t irqn); void vIRQ_SetPriority(uint32_t irqn, uint32_t priority); uint32_t vIRQ_GetPriority(uint32_t irqn); § Accelerated secure peripheral accessAPI with bit-levelACL’s § Security verified during installation on device or before firmware signing on the server § Attackers can’t create new peripheral access calls without writing to Flash § IRQAPI for unprivileged interrupt handling § Interrupts are executed unprivileged in the box security context of the owning box § CPU registers cleared for protecting the interrupted box against data leakage
  • 18. ©ARM 201518 #define MY_HANDLER_IRQn 42 void my_irq_handler(void) { ... } int register_my_irq_handler(void) { vIRQ_SetVector(MY_HANDLER_IRQn, (uint32_t) &my_irq_handler); vIRQ_EnableIRQ(MY_HANDLER_IRQn); } Secure uVisor InterruptAPI § Interrupt ownership is exclusive – multiple boxes cannot register for the same interrupt § Registration based on first-come-first-serve: sharing IRQ’s only possible via box API services § uVisor remembers association between Interrupt handler and box security context during registration: other boxes can’t access that interrupt till its released
  • 19. ©ARM 201519 “The Devil is in the details, but so is salvation” – Hyman G. Rickover, United States Navy Admiral
  • 20. ©ARM 201520 Call Gateway Internals forARMv7-M Systems § Call gateways only accepted from flash memory § attacker has no write access to flash controller § Metadata of call gateway at a fixed offset from uVisor gateway context switch – a supervisor call (SVC) § Contains pointer to target box configuration & target function § Guaranteed latency for cross-box calls § Can limit access to specific caller boxes § Security verified once during installation /* the actual secure gateway */ #define secure_gateway(dst_box, dst_fn, ...) ({ SELECT_ARGS(__VA_ARGS__) register uint32_t res asm("r0"); asm volatile ( "svc UVISOR_API_SVC_CALL_IDn" "b.n skip_metadata%=n" ".word UVISOR_SVC_GW_MAGICn" ".word dst_fnn" ".word dst_box##_cfg_ptrn" "skip_metadata%=:n” : "=r" (res) : ASM_INLINE_ARGS(__VA_ARGS__) ); res; })
  • 21. ©ARM 201521 § ARM mbed-OS uVisor security model of TrustZone for ARMv8M remains the same as the ARMv7-M security model § TrustZone for ARMv8M enables bus level protection in hardware § ARMv7-M requires software API filters for DMA access and other security critical operations § ARMv8-M can filter for DMA access for requests initiated by unprivileged code on bus level § TrustZone for ARMv8M MPU banking reduces complexity of secure target OS § Secure OS partition own a private MPU with full control § OS keeps the privileged mode for fast IRQs § Fast interrupt routing and register clearing in hardware § Fast cross-box calls on TrustZone for ARMv8M – optimized call gateways uVisor Outlook – Existing ARMv7-M vs.TrustZone for ARMv8M
  • 22. ©ARM 201522 Lifecycle Security mbed OS Secure Identity,Config and Update Secure Code Compartments mbed OS uVisor on ARMv7-M MPU Communication Security mbedTLS mbed OS:Architected Security from the Ground Up
  • 23. ©ARM 201523 Hardware Interfaces mbed OS uVisor mbed OS Drivers mbed OS Core Schedulers mbed OS API Communication Management Device Management mbed TLS mbed Client IP Stack BLE APIEvent TasksEnergy Device DriversCMSIS-Core Application Code Libraries uVisor Debug Support Lifecycle SecuritySecure Drivers ARMv7-M ARM Cortex-M CPU MCU Radio SensorCrypto SW Crypto ThreadWiFi BLE6LoWPAN Thread API Communication Security Lifecycle Security Device Security mbed OS:Architected Security from the Ground Up
  • 24. Secure IoT: Example Use Cases
  • 25. ©ARM 201525 § Trusted messages contain commands, data or firmware parts § Box security not affected by communication stack exploits or infections outside of trusted box § Payload delivery is agnostic of protocol stack § Resilient box communication over the available channels § Ethernet, CAN-Bus, USB, Serial § Bluetooth,Wi-Fi,ZigBee,6LoWPAN Case Study: Secure Server Communication Exposed box with communication stack Decrypt and verify using DTLS GAP Secured and trusted device process GATT AP BLE LL Trusted box without communication Stack Opaque Block Commands, Data, Firmware Blob Opaque Bluetooth Communication Stack ExposedApplicationCode IoT Device owned by user. Initial identity provisioned by System Integrator Messages delivered agnostic of communication stack
  • 26. ©ARM 201526 § Communication protected by mbed TLS § Raw message payloads decrypted and verified directly by protected code § mbed TLS box not exposed to communication protocol stack bugs § No interference by other boxes § Low attack surface § Authentication and encryption keys are protected against malware § Malware can’t interfere without knowing the encryption or signing keys Case Study: Secure Server Communication Exposed box with communication stack Decrypt and verify using DTLS TLS box handles only the SSL protocol Opaque BlockOpaque Initial keys provisioned by System Integrator. Messages decoded independent of stacks using mbed TLS in separate security context ExposedApplicationCode Decryption Keys Decrypted BlockDecrypted IP Stack
  • 27. ©ARM 201527 Case Study: Secure Remote Firmware Updates Exposed box with communication stack GAP GATT AP BLE LL Bluetooth Communication Stack Flash interface box protected by uVisor – without own communication stack CustomApplicationCode Opaque Block IoT device owned by user, Initial identity provisioned by System Integrator, Messages delivered independent of stacks Firmware update blocks FW005 Firmware Update Image Secure Storage, Firmware Update Blocks Re-flash Untrusted Application Upon Completion Opaque Secured and trusted device process Decrypt and verify using DTLS § Firmware manifest block augments existing firmware formats with safety and security features § Downgrade attacks prevented § Devices or device classes directly addressed by updates to improve safety § Efficient firmware distribution in mesh networks § Support for partial & chained firmware updates § Crypto watchdog box enforces remote updates even for infected devices § New firmware applied after all blocks are received,decrypted and verified § Trusted side updates itself using a boot loader
  • 28. ©ARM 201528 Case Study: Controlled Malware Recovery § Secure box detects malware infection § Enforces communication through the exposed side to the server § Receives latest security rules and virus behaviour fingerprints for detection § Shares detected pattern fingerprint matches with control server § Distributed detection of viruses and live infrastructure attacks § When communication with the server breaks for a minimum time, parts of the device stack are reset to a known-good state § Prevents malware from staying on the device § Switches to a safe mode to detect network problems or to remotely update the firmware
  • 29. ©ARM 201529 “The mantra of any good security engineer is: “Security is not a product, but a process”It's more than designing strong cryptography into a system;it's designing the entire system such that all security measures,including cryptography,work together.” – Bruce Schneier
  • 30. ThankYou – Questions? 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 © 2015ARM Limited Get the latest information on mbed security… https://www.mbed.com/en/technologies/security/ .... and follow uVisor development on github: https://github.com/ARMmbed/uvisor/ (uVisor is shared under Apache 2.0 license)