unicorn:(two+factor(attestation(for( data(security(trj1/cse544-s13/slides/mannan... · m. mannan...
TRANSCRIPT
![Page 1: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/1.jpg)
ACM CCS - Oct. 18, 2011
Unicorn: Two-‐Factor Attestation for Data Security
M. Mannan Concordia University, Canada
B. Kim, A. Ganjali & D. Lie University of Toronto, Canada
1
![Page 2: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/2.jpg)
Unicorn – target systems
2
q High value data q overkill for casual Facebook profile
q Requires:
q hardware support q PSD: personal security device q custom application package
![Page 3: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/3.jpg)
Goal – malware
3
q Protect entire user session
q Not limited to login & other credentials
![Page 4: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/4.jpg)
Goal – “phishing”
4
q Protect Unicorn credentials q Less reliance on user diligence during authentication
www.bank.com
wwwbank.com
![Page 5: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/5.jpg)
Goal – “automatic” security
5
q Unicorn: access to data depends on system state
q Ideal: functionality tied to system health – avoids the “unmotivated user” problem
![Page 6: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/6.jpg)
Dealing with Phishing
q Use security token q generate one time passwords or do challenge response
q adversary must steal/clone a token q or: hack RSA J
But no protection against malware!
6
![Page 7: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/7.jpg)
Dealing with malware q Use trusted computing hardware to verify
the integrity of a computer (TPM, Intel TXT, AMD SVM) q compute hashes of BIOS, boot loader, OS, … q sign hashes to prove that computer is not
running unwanted code
Notifying the current system state to users isn’t easy [Libonati, NDSS 2011]
7
![Page 8: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/8.jpg)
Combine the two?
8
q Unicorn: security token + trusted computing q Unicorn applications are called uApps q uApp: small OS + one application q User OS: open, uApps: closed
![Page 9: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/9.jpg)
Unicorn design
9
q Token is used to verify attestations q only releases authentication credentials if
system is malware free q verifies: system memory + disk image
q Attacker must q clone or steal the token q physical access to user’s computer q assumption: no vulnerabilities in Unicorn
![Page 10: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/10.jpg)
Unicorn example – setup
10
PCRs, Auth AIK
User diligence is needed
q Security tokens currently not capable of attestation q smartphone as PSD
![Page 11: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/11.jpg)
Unicorn example – steps
11
Verify
![Page 12: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/12.jpg)
Starting a uApp q Suspend, save user OS state
q option 1: reboot into uApp q option 2: use DRTM
q User OS as the bootloader
q Resume: q direct transfer back to user OS
Save state
Hardware Reset
BIOS
Boot loader
uApp OS
12
![Page 13: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/13.jpg)
uApp usage scenarios
q Two example cases q data stored on a remote server q data stored encrypted on local machine
q Token is initialized with a secret key q remote server case: signing/MAC key q local machine: encryption sub-‐key
13
![Page 14: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/14.jpg)
Remote server case
Nonce, PCRs
Quote(Nonce, PCRs)
MAC(Quote(Nonce, PCRs))
14
(MAC key) (TPM keys)
![Page 15: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/15.jpg)
Local machine case
q Encryption key consists of two subkeys: q subkey 1: on smartphone q subkey 2: sealed into computer’s TPM
Nonce, PCRs
Quote(Nonce, PCRs)
Subkey
15
![Page 16: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/16.jpg)
Unicorn prototype
q Extensions to Linux 2.6.34 kernel q one line change in user OS kernel
q Transfer directly to uApp OS via kexec q loads uApp kernel image into memory q saves state & transfer control to uApp loader
q uApp loader based on tboot package q sets up a measured launch environment (MLE) q measures the loaded kernel q kernel measures the disk image during boot
16
![Page 17: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/17.jpg)
uApp images
q uApp image should be small q smaller attack surface & faster verification
q we use a small Linux distro with a space efficient file system (squashfs)
q uApp is network restricted q communicate only with remote server
q help against TPM relaying attacks q SSL cert: only one trusted CA
17
![Page 18: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/18.jpg)
TPM relaying
q Attacker relays attestation requests to legitimate machine q but legitimate uApp will only communicate with
remote server
x x 18
![Page 19: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/19.jpg)
Switching between commodity OS & uApp
Task Time (seconds)
Suspend of user OS 11.16
uApp Loader 3.29
Kernel boot and Xserver startup 7.20
OS hash 3.85
Unicorn Total 25.50
Switching via reboot 47.70
19
q Majority of cost: suspending the user OS and kernel boot q uApp loader is slow because TPM is slow
![Page 20: Unicorn:(Two+Factor(Attestation(for( Data(Security(trj1/cse544-s13/slides/mannan... · M. Mannan Concordia University, Canada B. Kim, A. Ganjali & D. Lie University of Toronto, Canada](https://reader034.vdocuments.net/reader034/viewer/2022042709/5f47736168be1b63d6548b8c/html5/thumbnails/20.jpg)
Conclusion
q Unicorn for two-‐factor data protection q physical access to user PC & compromised token q for users: no passwords to remember or judge the
safety of their computing environment q switching: skip hardware reset and BIOS
q ~45% reduction in switching time vs. previous methods
q Enable “automatic” security
20