427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Security ¡through ¡Distrusting
Joanna ¡Rutkowska Invisible ¡Things ¡Lab & ¡Qubes ¡OS Project
Black ¡Hat ¡EU, ¡London, ¡UK, ¡December ¡7, ¡2017
Security through Distrusting Joanna Rutkowska Invisible Things - - PowerPoint PPT Presentation
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494 Security through Distrusting Joanna Rutkowska Invisible Things Lab & Qubes OS Project Black Hat EU, London, UK, December 7, 2017 427F11FD
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Joanna ¡Rutkowska Invisible ¡Things ¡Lab & ¡Qubes ¡OS Project
Black ¡Hat ¡EU, ¡London, ¡UK, ¡December ¡7, ¡2017
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
more ¡desired
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494 § Mics sniff ¡our ¡activities, ¡including ¡keystrokes, ¡etc. § Mics are ¡difficult ¡to ¡neutralize § Mics naturally ¡“cross“ ¡security ¡boundaries
mic 1 mic 2 mic 3
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
mic 1 mic 2
§ Mics sniff ¡our ¡activities, ¡including ¡keystrokes, ¡etc. § Mics are ¡difficult ¡to ¡neutralize § Mics naturally ¡“cross“ ¡security ¡boundaries
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Persist § Store ¡secrets § PII
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Persist § Store ¡secrets § PII
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Persist § Store ¡secrets § PII
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Trusted ¡Stick
§ Firmware ¡infections ¡prevented § No ¡places ¡to ¡store ¡stolen ¡secrets § Reliable way ¡to ¡verify ¡firmware § Reliable ¡way ¡to ¡choose ¡firmware § Boot ¡multiple ¡environments § Share ¡laptops ¡with ¡others
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Photo ¡via ¡Peter ¡Todd ¡(@petertoddbtc)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Create
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries)
(… ¡& ¡sign!)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
Attacker ¡(back-‑/bug-‑door ¡injection)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
Attacker ¡(back-‑/bug-‑door ¡injection)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
Attacker ¡(back-‑/bug-‑door ¡injection)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) vendor Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) Vendor ¡#1 Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
(e.g. ¡updates)
(e.g. ¡updates) Vendor ¡#3 Vendor ¡#2 Sign Sign Sign
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(e.g. ¡updates)
Building Sign Distribution end ¡user developer(s) Vendor ¡#1 Verify Create
(https, ¡signed ¡binaries) (git push)
(… ¡& ¡sign!)
(e.g. ¡updates)
(e.g. ¡updates) Vendor ¡#3 Vendor ¡#2 Sign Sign Sign One ¡binary, ¡multiple ¡signatures!
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(buggy/backdoored or ¡
Your ¡data…!
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(buggy/backdoored or ¡
Your ¡data…!
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(buggy/backdoored or ¡
Your ¡data…!
Windows ¡laptop ¡(compromised ¡or ¡backdoored)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(buggy/backdoored or ¡
Your ¡data…!
Windows ¡laptop ¡(compromised ¡or ¡backdoored) Different ¡device ¡(or ¡VM?)
§ Qubes ¡TorVM (2011) § The ¡Grugq ‘s ¡P.O.R.T.A.L. ¡(2012) § Whonix (2012 – present) § Whonix for ¡Qubes ¡(2014 ¡– present) § Tor-‑enabled ¡routers ¡(multiple ¡ projects/products)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Updates server
User ¡data
Download ¡updates, ¡etc
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Very ¡simple ¡(& ¡trusted) ¡code!
Very ¡simple ¡format ¡(& ¡easy ¡to ¡verify ¡if ¡indeed) Very ¡complex ¡format ¡(risky ¡to ¡parse!) Very ¡complex ¡parsing ¡(very ¡risky!)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
Networking ¡ stacks USB ¡& ¡ Bluetooth ¡ stacks Graphics ¡& ¡ UI VPNs ¡& ¡ firewalling
Corporate ¡ management
Root ¡of ¡trust (admin)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Access ¡to ¡their ¡data § Can’t ¡modify ¡policies § Can’t ¡modify ¡software/VM ¡images Admin User
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Access ¡to ¡their ¡data § Can’t ¡modify ¡policies § Can’t ¡modify ¡software/VM ¡images Admin User
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Access ¡to ¡their ¡data § Can’t ¡modify ¡policies § Can’t ¡modify ¡software/VM ¡images
§ No ¡access ¡ ¡to ¡user ¡data § Can ¡modify ¡policies § Can ¡ ¡install ¡software/VM ¡images
Admin User
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
§ Access ¡to ¡their ¡data § Can’t ¡modify ¡policies § Can’t ¡modify ¡software/VM ¡images
§ No ¡access ¡ ¡to ¡user ¡data § Can ¡modify ¡policies § Can ¡ ¡install ¡software/VM ¡images
Admin User
work-‑related personal
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(files, ¡disks)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(files, ¡disks)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
(CPU, ¡memory, ¡disk)
(well ¡thought ¡ architecture ¡& ¡ APIs, ¡difficulty ¡ adding ¡new ¡ features)
§ Mics § Multisigs for ¡wallets § Compartmentalization (?) § Compartmentalization § Stateless ¡laptop ¡(BOM ¡costs) § Compartmentalization § Multisigs for ¡binaries § Stateless ¡laptop ¡(BOM ¡costs)
427F11FD 0FAA4B08 0123F01C DDFA1A3E 36879494
*** https://qubes-‑os.org https://invisiblethingslab.com https://blog.invisiblethings.org https://github.com/rootkovska ¡ @QubesOS ¡// ¡Twitter ¡for ¡Qubes ¡OS @rootkovska ¡// ¡Personal ¡Twitter 427F11FD0FAA4B080123F01CDDFA1A3E36879494 ¡ ¡// ¡Qubes ¡Master ¡Key ED727C306E766BC85E621AA65FA6C3E4D9AFBB99 ¡// ¡Personal ¡Master ¡Key
This ¡presentation ¡made ¡in ¡MS ¡Office ¡on ¡Qubes ¡OS ¡3.2