The ideal versus the real: a brief history of secure isolatoo io virtual machioes aod cootaioers
Allisoo Raodal University of Cambridge
Except where otherwise ooted, liceosed uoder Creatve Commoos Atributoo ShareAlike 4.0 Ioteroatooal.
The ideal versus the real: a brief history of secure isolatoo io - - PowerPoint PPT Presentation
The ideal versus the real: a brief history of secure isolatoo io virtual machioes aod cootaioers Allisoo Raodal University of Cambridge Except where otherwise ooted, liceosed uoder Creatve Commoos Atributoo ShareAlike 4.0 Ioteroatooal. Between
Except where otherwise ooted, liceosed uoder Creatve Commoos Atributoo ShareAlike 4.0 Ioteroatooal.
Host OS OS OS OS OS OS OS OS OS OS Host OS OS OS OS OS OS OS OS OS OS
Host OS OS OS OS OS OS OS OS OS OS Host OS OS OS OS OS OS OS OS OS OS
Host OS OS OS OS OS OS OS OS OS OS Host OS OS OS OS OS OS OS OS OS OS
Host OS OS OS OS OS OS OS OS OS OS
Host OS OS OS OS OS OS OS OS OS OS
Plessey System 250 UNIX Chicago Magic Number Machine VMware Disco VM/370 CP-67/CMS capabilities B5000 CP-40/CMS multiprogramming M44/44X 1950 1960 1970 1980 1990 2000 2010 today chroot CAP Linux CAL-TSS MINIX Multics BSD POSIX.1e POSIX LXC Docker Capsicum OCI KVM QEMU Xen ukvm LightVM Kata Denali System/38 Kubernetes Borg NEMU AWS hvt jails SunOS Solaris Zones VServer OpenVZ iAPX 432
Plessey System 250 UNIX Chicago Magic Number Machine VM/370 CP-67/CMS capabilities B5000 CP-40/CMS multiprogramming M44/44X 1950 1960 1970 1980 1990 chroot CAP Linux CAL-TSS MINIX Multics BSD PO POSIX System/38 SunOS Solar iAPX 432
– multtaskiog – multprocessiog: I/qO processors aod multple CPUs – tme-shariog – iocrease utlizatoo – risk of disruptoo – complex to program
PDP-1, (C) 2006, Mathew Hutchiosoo, CC BY 2.0
STRETCH: Feasibility Coosideratoos. Communicatons of the ACM, 2(11):13–17,
1959.
Proceedings of the Natonal Computer Conference and Expositon, AFIPS ’73, 291– 299, 1973.
Plessey System 250 UNIX Chicago Magic Number Machine VM/370 CP-67/CMS capabilities B5000 CP-40/CMS multiprogramming M44/44X 1950 1960 1970 1980 1990 chroot CAP Linux CAL-TSS MINIX Multics BSD PO POSIX System/38 SunOS Solar iAPX 432
– B50001 descriptors – theoretcal2 protected
– MIT implemeotatoo oo
– Chicago Magic Number
– CAL-TSS4 – Provably Secure Operatog System5 6
Burroughs B5000, origio uokoowo htp:/q /qwww.retrocomputogtasmaoia.com/qhome/qprojects/q burroughs-b5500/qb5000_b5500_gallery
(SOSP ’67), 5.1–5.10, 1967.
– M44/q44X1 virtual memory – CP-40/qCMS2, CP-67/qCMS3 for IBM System/q360
– Multcs4 – Uoix5
3Control Program-67 Cambridge Monitor System. IBM Type III Release No. 360D-05.2.005. IBM Corporatoo, Oct. 1971.
Plessey System 250 UNIX Chicago Magic Number Machine VMware Disco VM/370 CP-67/CMS capabilities B5000 CP-40/CMS ming M44/44X 1960 1970 1980 1990 2000 chroot CAP Linux CAL-TSS MINIX Multics BSD POSIX.1e POSIX System/38 jails SunOS Solaris VSer O iAPX 432
– Plessey System 2501
– CAP2 hardware aod OS – Iotel iAPX 4323
– IBM System/q385
CAP, (C) 2004, Daderot, CC BY-SA 3.0
10, Nov. 1977. ACM.
3iAPX 432 General Data Processor Architecture Reference Manual. Iotel Corporatoo, 1981.
1982.
341–348, 1981. IEEE.
– VM/q3701 for IBM System/q370 virtual memory hardware – “Sioce a privileged sofware oucleus has, io priociple, oo
– BSD3 – chroot4 flesystem oamespaces
Proceedings of the European UNIX Users Group, Apr. 1989.
Plessey System 250 UNIX Chicago Magic Number Machine VMware Disco VM/370 CP-67/CMS capabilities CP-40/CMS 44/44X 1970 1980 1990 2000 chroot CAP Linux CAL-TSS MINIX Multics BSD POSIX.1e POSIX LXC Caps KV QEMU Xen Denali System/38 Borg AWS jails SunOS Solaris Zones VServer OpenVZ iAPX 432
IMSAI 8080 from “WarGames”, (C) 1983, MGM/qUA
IEEE.
Plessey System 250 UNIX ber Machine VMware Disco VM/370
1970 1980 1990 2000 2010 chroot CAP Linux CAL-TSS MINIX BSD POSIX.1e POSIX LXC Docker Capsicum OCI KVM QEMU Xen Denali System/38 Kubernetes Borg AWS jails SunOS Solaris Zones VServer OpenVZ iAPX 432
– POSIX.1e capabilites1 – Lioux Keroel capabilites2 – Plao 9 oamespaces3 flesystem,
– Disco4 bioary traoslatoo – VMware5
Google data ceoter order form, 1998 htps:/q /qplus.google.com/q+UrsH%C3%B6lzle/q posts/qUseioB6wvmh
1Protecton, Audit and Control Interfaces. Draf POSIX Staodard 1003.1e, IEEE, Oct. 1997. 2capabilites(7) man page, htp:/q
/qmao7.org/qlioux/qmao-pages/qmao7/qcapabilites.7.html.
VMware Disco 1980 1990 2000 2010 today hroot Linux MINIX POSIX.1e POSIX LXC Docker Capsicum OCI KVM QEMU Xen ukvm LightVM Kata Denali /38 Kubernetes Borg NEMU AWS hvt jails SunOS Solaris Zones VServer OpenVZ
– Deoali1 2 paravirtualizatoo – Xeo3 multteoaocy as a busioess – Amazoo Web Services4
– x86 hardware virtualizatoo5
AWS availability zooes, (C) 2016, Amazoo.com, Ioc. CC BY-SA 4.0
Symposium on Operatng Systems Principles (SOSP ’03), 164–177, 2003.
/qaws.amazoo.com/qblogs/qaws/qamazoo_ec2_beta. 2006.
144, 2000.
– FreeBSD Jails1 & Solaris Zooes2
– Lioux VServer3 aod OpeoVZ4 – Lioux oamespaces5 flesystem, process, IPC, oetwork – Lioux cgroups6 resource/qprocess cootrol – LXC7 cgroups, oamespaces, capabilites
1P.-H. Kamp aod R. N. M. Watsoo. Jails: Coofoiog the omoipoteot root. In Proceedings of the 2nd Internatonal SANE Conference, 2000.
Administraton (LISA ’04), 241–254, 2004.
In Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems, 275–287, 2007.
Virtualizatoo Systems. In Proceedings of the 2007 Workshop on Experimental Computer Science, 2007.
/qlwo.oet/qArtcles/q236038/q. 2007.
7Á. Kovács. Comparisoo of difereot Lioux cootaioers. In 2017 40th Internatonal Conference on Telecommunicatons and Signal Processing, 47–51, 2017.
Coofereoce oo Computer Systems (EuroSys ’15), 18:1–18:17, 2015.
VMware Disco 1980 1990 2000 2010 today hroot Linux MINIX POSIX.1e POSIX LXC Docker Capsicum OCI KVM QEMU Xen ukvm LightVM Kata Denali /38 Kubernetes Borg NEMU AWS hvt jails SunOS Solaris Zones VServer OpenVZ
– Docker1 mass adoptoo – Lioux user oamespaces2 – Kuberoetes3 workload orchestratoo
1Á. Kovács. Comparisoo of difereot Lioux cootaioers. In 2017 40th Internatonal Conference on Telecommunicatons and Signal Processing, 47–51, 2017.
16), 6, 2016.
Symposium on Operatng Systems Principles (SOSP ’17), 218–233, 2017.
3htps:/q
/qgithub.com/qiotel/qoemu
– QEMU+KVM
– keroel – devices – syscall flteriog
1htps:/q
/qkatacootaioers.io/q
/qlwo.oet/qArtcles/q644675/q. 2015.
3htps:/q
/qgithub.com/qgoogle/qgvisor
2014.
IEEE/IFIP Internatonal Conference on Dependable Systems and Networks. 237–248, 2017.
Security Paradigms Workshop, 51–60, 2010.
– source: VM guest (Xeo 71%, KVM 66%) – target: Riog -1, Dom0, host (Xeo 80%, KVM 76%)
Security io Cloud Computog, 3–10, 2013.
(EuroSec’18), 7:1–7:6, 2018.
Security Paradigms Workshop, 51–60, 2010.
– Spectre, NetSpectre1 2 – Meltdowo3 – Foreshadow, L1TF4 5
Spectre, Meltdowo, aod Foreshadow icoos, (C) 2018, Natascha Eibl, CC0
arXiv:1801.01203 [cs], Jao. 2018.
2018.
SGX Kiogdom with Traosieot Out-of-Order Executoo. In 27th USENIX Security Symposium, 991–1008, Baltmore, Aug. 2018.
Abstracton with Transient Out-of-Order Executon. Techoical report, Aug. 2018.
(Common translaton: Abandon all hope, ye who enter here)
– Capsicum1 – CHERI2 – Fuchsia3
– RISC-V4 – Opeo Titao5
– OpeoBSD pledge6, uoveil7
DE4 prototype tablet computer ruooiog CHERI, origio uokoowo, htps:/q /qwww.cl.cam.ac.uk/qresearch/qcomparch/qopeosource/qde4t ablet/qtablet-bootog-cheri.jpg
ao Age of Risk. In Proceedings of the 41st Annual Internatonal Symposium on Computer Architecuture, 457–468, 2014.
/qfuchsia.googlesource.com/qdocs/q+/qHEAD/qthe-book/qREADME.md.
6pledge(2) maopage, htps:/q
/qmao.opeobsd.org/qpledge.2
7uoveil(2) maopage, htps:/q
/qmao.opeobsd.org/quoveil.2
Futuristc data ceoter, origio uokoowo, htps:/q /qoo.rt.com/qlu029w
Plessey System 250 UNIX Chicago Magic Number Machine VMware Disco VM/370 CP-67/CMS capabilities B5000 CP-40/CMS multiprogramming M44/44X 1950 1960 1970 1980 1990 2000 2010 today chroot CAP Linux CAL-TSS MINIX Multics BSD POSIX.1e POSIX LXC Docker Capsicum OCI KVM QEMU Xen ukvm LightVM Kata Denali System/38 Kubernetes Borg NEMU AWS hvt jails SunOS Solaris Zones VServer OpenVZ iAPX 432