Remote Attestation of IoT Devices via SMARM: Shuffled Measurements Against Roving Malware
Xavier Carpent, Norrathep (Oak) Rattanavipanon, Gene Tsudik nrattana@uci.edu SPROUT Lab: sprout.ics.uci.edu University of California, Irvine
1
Remote Attestation of IoT Devices via SMARM: Shuffled Measurements - - PowerPoint PPT Presentation
Remote Attestation of IoT Devices via SMARM: Shuffled Measurements Against Roving Malware Xavier Carpent, Norrathep (Oak) Rattanavipanon , Gene Tsudik nrattana@uci.edu SPROUT Lab: sprout.ics.uci.edu University of California, Irvine 1
Remote Attestation of IoT Devices via SMARM: Shuffled Measurements Against Roving Malware
Xavier Carpent, Norrathep (Oak) Rattanavipanon, Gene Tsudik nrattana@uci.edu SPROUT Lab: sprout.ics.uci.edu University of California, Irvine
1Internet-of-things (IoT)
2Remote Attestation (RA)
(1) Challenge (3) Response (2) Authenticate challenge and measure memory (4) Verify response
Verifier Prover
5Adversarial Model [DAC’15]
Adversarial Model [DAC’15]
RA Techniques
devices
Examples of hybrid RA
RA vs Safety-Critical Operations
SMART-BASED MSP430 @ 8MHZ 4.5 seconds to measure 48KB of flash HYDRA-BASED ODROID @ 2GHZ 7 seconds to measure 1GB of RAM
Atomicity negatively impacts device’s availability to critical app.
10Why Atomicity is Needed?
1 2 3 4 5 6
Memory Blocks
11Why Atomicity is Needed?
1 2 3 4 5 6
Memory Blocks
1 2 3 4 5 6
11Why Atomicity is Needed?
1 2 3 4 5 6
Memory Blocks
11Why Atomicity is Needed?
1 2 3 4 5 6
Memory Blocks
Roving Malware
Conflict
Measurement result reflects malware-free state!
11Target Devices for Our Solution
Our Solution
Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
13Our Solution
random/secret permutation
14Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts KFC Future coverage HW/SW side-channel
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts KFC Future coverage HW/SW side-channel
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts KFC Future coverage HW/SW side-channel KFO Future order Leakage of permutation
15Roving malware’s knowledge?
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Type Knowledge of How to obtain KFV Future volume Time when measurement starts KFC Future coverage HW/SW side-channel KFO Future order Leakage of permutation
15Best Strategy of KFV Roving malware
❖ Assume malware is contained in one memory block ❖ Knows how many blocks have/have not been measured ❖ Can interrupt right after measurement of each block
Best strategy: interrupt and relocate
16Probability of Malware Evasion
16SMARM Implementation
17SMARM Implementation (without secure storage)
18Related Work
❖ ERASMUS [DATE’17], SeED [WiSec’17]
❖ Self-measurements ❖ Schedule measurement to whenever Prover is available ❖ Require secure clock
❖ Temporal Consistency [AsiaCCS’18]
❖ Allow interrupts by locking memory ❖ Require hardware support for locking memory
❖ Reconciling RA and Safety-Critical Operation on IoT Devices [DAC’18]
❖ Survey techniques that aim to resolve this conflict
19Conclusion
security properties in RA
41% 10,636% n = 2048 t = 0.006s
39n = 32 t = 0.4s 0.8% 40%
Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
40Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Get Caught!
41Our Solution
1 2 3 4 5 6
Permutation = {3, 2, 5, 6, 1, 4}
Successfully Escape
42