Memor
- ry D
y Defen enses es
The Elevation from Obscurity to Headlines
Rajeev Balasubramonian School of Computing, University of Utah
Memor ory D y Defen enses es The Elevation from Obscurity to - - PowerPoint PPT Presentation
Memor ory D y Defen enses es The Elevation from Obscurity to Headlines Rajeev Balasubramonian School of Computing, University of Utah 2 Image sources: pinterest, gizmodo Spectre Overview x is controlled Thanks to bpred, x can be
Rajeev Balasubramonian School of Computing, University of Utah
Image sources: pinterest, gizmodo
2
Victim Code
x is controlled by attacker array1[ ] is the secret Access pattern of array2[ ] betrays the secret Thanks to bpred, x can be anything
3
4
5
6
7
VM 1 CORE 1 VM 2 CORE 2
MC
Two VMs sharing a processor and memory channel Attacker Victim
8
VM 1 CORE 1 VM 2 CORE 2
MC
Attack 1: Bits in a key influence memory accesses Attack 2: A victim can betray secrets through memory activity Attack 3: A covert channel attack
9
VM 1 CORE 1 VM 2 CORE 2
MC
A covert channel Electronic health records 3rd party document reader Conspirator
10
VM-1 has its data in Rank-1 VM-2 has its data in Rank-2 … VM-8 has its data in Rank-8 Time (in cycles) VM-1 begins memory access VM-2 begins memory access VM-8 begins memory access VM-1 begins memory access
7 49 56
11
all writes (worst-case encountered once per batch)
bank alternation
12
1 2 3 4 5 6 7
15
1 2 3 4 5 6 7
3x15 = 45 > 43
Red: Bank-id mod 3 = 0 Blue: Bank-id mod 3 = 1 Green: Bank-id mod 3 = 2
13
Increased OS complexity
RANK PARTITIONING NO PARTITIONING BANK PARTITIONING PERFORMANCE NON-SECURE BASELINE 1.0 0.74 0.48 0.43 0.20 0.40 FS FS: RD/WR-REORDER FS: TRIPLE ALTERNATION TP TP
14
15
Image sources: vice.com
16
Image sources: vice.com
17
18
Authenticated buffer chip
MC
All buses are exposed Buffer chip and processor communication is encrypted
Processor
ORAM operations shift from Processor to SDIMM. ORAM traffic pattern shifts from the memory bus to on- SDIMM “private” buses.
19
MC Processor
subtree of the ORAM tree.
memory channel: CPU requests and leaf-id re- assignments.
number of SDIMMs.
20
MC Processor
subset of every node.
processor.
SDIMMs how to shuffle data.
request, but lower parallelism as well.
the best balance of latency and parallelism
Execution time overheads from 5.2x 2.7x
21
22
23
Enclave 1 Intel SGX Enclave N … Memory EPC 96MB
Non-EPC Sen Non-EPC NSen
from malicious OS/operator.
protects EPC.
protects non-EPC Sen.
and capacity) of integrity tree low.
between EPC and non-EPC.
24
Enclave 1 Intel SGX Enclave N … Memory EPC 96MB
Non-EPC Sen Non-EPC NSen
from malicious OS/operator.
protects EPC.
protects non-EPC Sen.
and capacity) of integrity tree low.
between EPC and non-EPC.
VAULT: Unify EPC and non-EPC to reduce paging. New integrity tree for low bw. Better metadata for capacity.
25
26
Hash Hash Hash Hash Hash Hash 512 bits 64 bits
Leaf hashes Intermediate Hashes Data Block 64+512 bits
Data Block
512 bits for 64 counters MAC MAC Arity=64 Arity=8 7b … 64b Shared global counter Local counter 7b
Root block in processor
27
high arity, compact/shallow tree, better cacheability.
manage overflow.
for integrity verification.
28
4 blocks reduces storage, but incr bw.
and the MAC is embedded in the block reduces bw and storage.
because of lower paging overheads
and a more scalable tree (34% better than the SGX tree)
29
VAULT+SMC
… and strategic given latent vulnerabilities
30
Acks: Ali Shafiee, Meysam Taassori, Akhila Gundu, Manju Shevgoor, Mohit Tiwari, Feifei Li, NSF, Intel.