Linux for Chromebooks: Secure Development (Google I/O ’19)
Chrome for Developers1 HN recommender · recommended in 1 month, 2019-2024
239K views · 7 years ago · talk · dated
A Google I/O 2019 talk explaining the architecture of Linux on Chromebooks (Crostini), a sandboxed Linux development environment built on containers inside a VM, with demos and design rationale.
Referenced in security discussions as an example of defense-in-depth sandboxing for a desktop Linux environment.
45:47The State of Kernel Self Protection Project by Kees Cook, Google
The Linux Foundation
7K views • 9 years ago
9:03NixOS VM on Mac Setup
Mitchell Hashimoto
31K views • 5 years ago
34:51Capsicum: Practical Capabilities for UNIX
USENIX
11K views • 16 years ago
20:11Containers and Steam: Putting games under pressure | FOSDEM 2020
Collabora
13K views • 6 years ago
38:03Replace Your Exploit-Ridden Firmware with Linux - Ronald Minnich, Google
The Linux Foundation
73K views • 9 years ago
54:25Cgroups, namespaces, and beyond: what are containers made from?
Docker
268K views • 10 years ago
47:18The Tragedy of systemd
linux.conf.au
1.3M views • 7 years ago
58:11The new Windows subsystem for Linux architecture: a deep dive - BRK3068
Microsoft Developer
188K views • 7 years ago
41:12Run containers on bare metal already!
Bryan Cantrill
40K views • 11 years ago
38:50Container Hacks and Fun Images
Jessie Frazelle
40K views • 8 years ago
2:13:32The Cantrill Strikes Back | BSD Now 117
Jupiter Broadcasting
9K views • 10 years ago
35:16Filesystem in Rust - Kent Overstreet
The Linux Foundation
124K views • 2 years ago
42:54Containers From Scratch • Liz Rice • GOTO 2018
GOTO Conferences
321K views • 8 years ago
53:11EFI and Linux: the future is here, and it's awful - Matthew Garrett
Linux.conf.au 2012 -- Ballarat, Australia
77K views • 14 years ago
51:13Qubes OS: The Operating System That Can Protect You Even If You Get Hacked
Micah Lee
63K views • 8 years ago
1:44:56illumos day 2014: The Dream is Alive! Running Linux containers on an illumos kernel
illumos
15K views • 12 years ago
1:11:44DebConf 14: QA with Linus Torvalds
Adnan Hodzic
737K views • 12 years ago
32:30Benno Rice: The Tragedy of systemd -- BSDCan 2018
BSDCan
25K views • 8 years ago
43:28Leaping the chasm from proprietary to open: A survivor's guide
Bryan Cantrill
14K views • 11 years ago
1:45:47Bryan Cantrill on Jails and Solaris Zones
PapersWeLove
34K views • 10 years ago
9 comments from Hacker News
Even when you enable “developer mode” which is essentially Debian in a VM the level of care that went into making sure that no matter what happens there you will never suffer a full system compromise is truly impressive. To give you a sense of where they were half a decade ago you can already see that it’s as I described miles in front of anything that exists even today in this video: ▶ this video When we get to talking about when they went for a total ground up first principles approach with Fuchsia as a next generation operating system that is something else entirely on a different level again. I genuinely didn’t have a hint of irony in my original comment. They are actually that much better when it comes to security.
That is a VM, similar in concept to WSL on Windows, with the difference that the host is also Linux based. "Linux for Chromebooks: Secure Development" ▶ this video link link
You're likely not even safe from this if you are using Chrome OS. It does sandbox the localhost web server [1] [2], but it does not restrict access to it from the host. [1]: ▶ this video [2]: link
Chrome OS is a very secure Linux distro. While the base system is very restricted, they also support Linux sandboxes, making it secure for you to use the computer both for online banking and for downloading random code from the internet. Check out the talk "Linux for Chromebooks: Secure Development": ▶ this video
Back when Chrome was based on WebKit, IIRC Chrome team found and fixed oodles and oodles of bugs in WebKit, because WebKit wasn't even using fuzzing, or not enough fuzzing. Even as late as 2017, fuzzing was still finding significantly more security issues in Safari than other browsers: link Also, when discussing iCloud, you need to distinguish between the backend service, and the frontend service. There have been significant CVEs found in the front-end client. Apple doesn't run many front end Web services, so there's less to exploit. They also don't allow you to host executable code like AWS, Azure, and GCP, so the attack surface is much more confined. That Google has exposed their infrastructure to the unforgiving nature of the Web for 2 decades, with exploits few and far between, is a testament to the quality of the security engineers. The most secure device on the planet, isn't iOS, it's Chromebooks. Look at the defense-in-depth used on Chromebooks to isolate execution: ▶ this video
You can now have sandboxes where you can install desktop tools without having to enable stuff like developer mode: ▶ this video Sandboxing this stuff away is in general a good idea for protecting "normal" users. People often want to install pirated games or whatever and that's abused as a vector to get malware onto those devices. If that's not enough you can install entirely different operating systems and even bootloaders (if you want to).
Regarding ChromeOS: "Linux for Chromebooks: Secure Development" > Learn how Linux for Chromebooks (Crostini) gives you a secure sandbox for development. Through a variety of demos, this talk will explain the architecture underlying Linux for Chromebooks and the design decisions that keep it easy to use. ▶ this video And Android: "Adopting the Arm Memory Tagging Extension in Android" link " link link "Improving Stability with Private C/C++ Symbol Restrictions in Android N" link "Android NDK Native APIs" link
Well, you can see how they are locking it down with containers sandboxing from an IO talk, by making use of gVisor and a Rust based containers. "Linux for Chromebooks: Secure Development" ▶ this video
Video of the talk: Linux for Chromebooks, (A.K.A Crostini): Secure Development presented by Sudha Broslawsky, Tom Buckley, and Dylan Reid at Google I/O 2019 ▶ this video Some technical details: * Container: Crostini (default is Debian 9) * Guest: Termina VM: LXD [1], Linux Kernel * Host: CrOS: crosvm, Linux Kernel Drivers are run in "minijails" to minimize exposure. Files are shared from container to OS via 9P [2]. Google is calling theirs "9S" Edit: I think this in-depth document may be up to date: "Running Custom Containers Under Chrome OS" link [1] from Canonical, see link [2] link