Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/
-
@cwebber@social.coop we need microkernel based operating systems with capability-based security enforcement, isolation of components from each other as a baseline assumption, and formal verification of the whole thing at both the code and spec level, and we need all of this quite urgently
-
@dlakelan@mastodon.sdf.org @cwebber@social.coop kernel is the bare minimum, i'd also want verification of at least specs around the hardware abstraction layer and how hardware related daemons talk to everything else. but it should definitely be possible for common system components and daemons as well, and i think should be mandatory for trusted daemons that supervise or manage other untrusted ones
i doubt everything will be formally verified, but it is nonetheless a goal that should be worked towards, while finding ways to develop standard practices and make it easier to apply everywhereI agree it would be nice to have, but I honestly think it primarily prevents progress. We'd be wildly better off with microkernel OSes that are at the same level of hackiness as the Linux kernel, and maybe have decent interfaces that could get replaced piecemeal as people came up with alternative implementations in memory safe languages, and then maybe formally verified at a later date.
Right now, you have to be comfortable working in kernel space to even do anything
-
@BetaRays@p.changeme.fr.eu.org @cwebber@social.coop this would be part of my vision, yes
-
@navi @dalias Yeah, the way most people write C with pointers everywhere - because that's what they've been taught - isn't very compatible with that. Again, it comes down to: the way we teach C is really, really bad.
Will you co-author my C book, that I'll write when I retire from coding? (that probably means in two decades or more
) -
I agree it would be nice to have, but I honestly think it primarily prevents progress. We'd be wildly better off with microkernel OSes that are at the same level of hackiness as the Linux kernel, and maybe have decent interfaces that could get replaced piecemeal as people came up with alternative implementations in memory safe languages, and then maybe formally verified at a later date.
Right now, you have to be comfortable working in kernel space to even do anything
@dlakelan@mastodon.sdf.org @cwebber@social.coop right now, this minute, you can go download SculptOS and have a microkernel-based OS with capability security that can run on a laptop and use its iGPU and run a web browser and virtualize linux and build itself using the Genode framework it is based on. and you can use that framework to swap out the process-level-virtualization-based default microkernel (NOVA iirc) with the formally verified seL4 (or other L4 family kernels) and never have to care about the API/ABI differences between microkernels because it abstracts that for you, nor the code inside the kernel. -
Significant raise of reports (on the Linux Kernel Mailing List) https://lwn.net/Articles/1065620/
Here's something I think we all will have to contend with, whether you're an AIgen enthusiast or not: attacking is easier than defending, and these things don't get tired and they *are* very good at finding exploits. None of us will be able to ignore that, and we will probably have to listen to real genuine reports from them, even if we reject AIgen input.
However, I don't think that's actually the right solution, and I don't think it's sustainable. 🧵
@cwebber "- people will finally understand that security bugs are bugs, and that the only sane way to stay safe is to periodically update, without focusing on "CVE-xxx""
I am not sure how this is going to work. How can be sure that the newest update is not a troyan horse (cf. recent axios breach)?
-
@dlakelan@mastodon.sdf.org @cwebber@social.coop right now, this minute, you can go download SculptOS and have a microkernel-based OS with capability security that can run on a laptop and use its iGPU and run a web browser and virtualize linux and build itself using the Genode framework it is based on. and you can use that framework to swap out the process-level-virtualization-based default microkernel (NOVA iirc) with the formally verified seL4 (or other L4 family kernels) and never have to care about the API/ABI differences between microkernels because it abstracts that for you, nor the code inside the kernel.
-
@dlakelan@mastodon.sdf.org @cwebber@social.coop right now, this minute, you can go download SculptOS and have a microkernel-based OS with capability security that can run on a laptop and use its iGPU and run a web browser and virtualize linux and build itself using the Genode framework it is based on. and you can use that framework to swap out the process-level-virtualization-based default microkernel (NOVA iirc) with the formally verified seL4 (or other L4 family kernels) and never have to care about the API/ABI differences between microkernels because it abstracts that for you, nor the code inside the kernel.@dlakelan@mastodon.sdf.org @cwebber@social.coop this is to say, what you are asking for exists, and has existed in a usable state for well over a decade, and is in some cases more feature complete than some other open source operating systems that people use and even daily drive
you can run it on a pinephone, too -
I'd set aside the formal verification requirement to get the rest of it. I really do think microkernels were the right way to go, it's just that in 1992 or whatever the consumer hardware wasn't up to the task. I think probably around 2005 or so the hardware started to be able to afford to do that. But that's approximately the time that VMs and containers took off. Now we have this giant mess.
-
@cwebber "- people will finally understand that security bugs are bugs, and that the only sane way to stay safe is to periodically update, without focusing on "CVE-xxx""
I am not sure how this is going to work. How can be sure that the newest update is not a troyan horse (cf. recent axios breach)?
-
@dlakelan@mastodon.sdf.org @cwebber@social.coop this is to say, what you are asking for exists, and has existed in a usable state for well over a decade, and is in some cases more feature complete than some other open source operating systems that people use and even daily drive
you can run it on a pinephone, too -
I don't think human reviewers are going to be able to keep up with the number of vulnerabilities we're seeing appear. I really don't. Humans won't be able to review at scale, and I also think that there's serious risks for blindly accepting AIgen patches, which for critical infrastructure could also be a path to *inserting new* vulnerabilities.
We need to attack this systemically.
I have more to say. More later. But that's the gist for now.
Also see: https://marc.info/?l=openbsd-tech&m=171817275920057&w=2
(Wherein Theo de Raadt of OpenBSD responds to someone proposing 10,000 kernel changes due to A"I" identifying possible bugs; this was circa 2024. Thankfully, the individual who proposed such changes? Appears to have not updated their GitHub fork in the ensuing years.)
-
@cwebber@social.coop we need microkernel based operating systems with capability-based security enforcement, isolation of components from each other as a baseline assumption, and formal verification of the whole thing at both the code and spec level, and we need all of this quite urgently(se)L4 I think fits such criteria? It is already widely deployed (e.g. Apple's Secure Enclave).
Problematically? I don't think any of the L4 kernels were "self hosting" last I checked? Maybe that has changed.
BS such as that, would have received failing grades in the 1980s.
Alas, we live in a different era now, where cross compiling is de rigueur even if it is awful in practice.
If I had a wish granting fairy or whatever? I would totally task someone(s) to make the L4 microkernel family self-hosting, so it doesn't need a Linux to boot strap.
CC: @cwebber@social.coop
-
(se)L4 I think fits such criteria? It is already widely deployed (e.g. Apple's Secure Enclave).
Problematically? I don't think any of the L4 kernels were "self hosting" last I checked? Maybe that has changed.
BS such as that, would have received failing grades in the 1980s.
Alas, we live in a different era now, where cross compiling is de rigueur even if it is awful in practice.
If I had a wish granting fairy or whatever? I would totally task someone(s) to make the L4 microkernel family self-hosting, so it doesn't need a Linux to boot strap.
CC: @cwebber@social.coop@teajaygrey@snac.bsd.cafe @cwebber@social.coop yes, see further downthread -
@teajaygrey@snac.bsd.cafe @cwebber@social.coop yes, see further downthread@teajaygrey@snac.bsd.cafe @cwebber@social.coop and go learn about Genode / SculptOS
-
Sculpt/Genode seems really cool. I have long wanted to be able to hack OS components by working in userspace with languages like Scheme/LISP or Julia or Erlang or whatever. We have enough speed that we could let say firewalling / bridging / Routing be done in slightly less close-to-the-metal languages and gain tremendous flexibility. We can already see this kind of happening with eBPF and nftables and whatnot.
-
I'd set aside the formal verification requirement to get the rest of it. I really do think microkernels were the right way to go, it's just that in 1992 or whatever the consumer hardware wasn't up to the task. I think probably around 2005 or so the hardware started to be able to afford to do that. But that's approximately the time that VMs and containers took off. Now we have this giant mess.
"I really do think microkernels were the right way to go, it's just that in 1992 or whatever the consumer hardware wasn't up to the task."
100% microkernels were the right way to go!
They still are.
Alas, something threw a very angry GURU MEDIATION at the "in 1992 or whatever the consumer hardware wasn't up to the task" part of your statement. Amiga Workbench (a microkernel derived from the TripOS provenance) was absolutely the bees' knees on economical consumer hardware in the 1980s, and Commodore hadn't yet declared bankruptcy in 1992.
Heck, it's 2026 and I am pretty sure that there will probably still be Amiga related entries at @revisionparty@icosahedron.website
this weekend (wish I were there, alas $12,000ish USD in debt and it was going to cost around $2k USD just to fly there and have lodgings, so not this year).
Admittedly, the Amigas were pretty awesome insomuch as you could bypass the OS entirely. Kickstart was hella fast. Still is! Pretty sure my Amiga 2000 booted faster decades ago, with a SCSI hard drive (and my A1200 with IDE) than any contemporary "consumer" grade hardware shipping today, despite the Ghz in CPU clockspeeds these days (my Amigas' CPUs were measured in MHz and still sooooo speedy and usable).
CC: @linear@nya.social @cwebber@social.coop
-
M mttaggart@infosec.exchange shared this topic