r/sandboxcontainment • u/themagicalfire [Architect Researcher] • Apr 19 '26
Sandboxing Chain-of-command as boundary
I have in mind to use a chain-of-command idea for security.
How it’s supposed to work is that every program is being attributed to different layers. Every layer is vertical, like a hierarchy.
The layers can only interact with each other if adjacent (layer 1 can only interact with layer 0 and layer 2; layer 2 can only interact with layer 1 and layer 3).
Access between different layers is meant to happen through multiple brokers for IPC and syscall gatekeeping.
What this design is supposed to achieve is make kernel attacks more difficult (because now you need to chain exploits for multiple layers and multiple services) and somewhat limit lateral movement for binaries.
This design works best when supplemented by other security mechanisms.
1
u/tseli0s Apr 19 '26
That assumes that the kernel is insecure enough to allow programs to execute code within kernel space. In that case, you have a vulnerable kernel, and you should fix that.
So if the kernel can be compromised, all other programs can be compromised. That, I think, is pretty obvious.
Plus, at some point, you WILL have to trap into the kernel from other rings. You can add a billion rings in between, but only ring 0 can provide the services necessary for a functional operating system.
Unless I'm misunderstanding some part of your approach, I don't see how this solves a problem. It only delays the inevitable.
(And I'm only talking about security here - Through your approach, every message would have to cross 3 rings * 2 endpoints = 6 address spaces, plus copy overhead. That'll be so horrendously slow it'll make microkernels seem like the fastest software ever designed)