Earlier quoted context omitted.
Edera developer here, we use Styrolite to run containers with Edera Protect. Edera Protect creates Zones to isolate processes from other Zones so that if someone were to break out of a container, they'd only see the zone processes. Not the host operating system or the hardware on the machine. The key difference here between us and other isolation implementations is that there is no performance degradation, you don't…
What underlying primitives are you relying on to provide isolation, if not linux namespaces? How does your approach compare to Google's gVisor?
Building a Linux Container Runtime from Scratch
51–60 of 70 posts
Re: Building a Linux Container Runtime from Scratch
#52I loved this hands-on presentation Containers From Scratch by Liz Rice from few years ago https://www.youtube.com/watch?v=8fi7uSYlOdc . Today, Linux containers in (less than) 100 lines of shell by Michael Kerrisk was published https://www.youtube.com/watch?v=4RUiVAlJE2w .
Re: Building a Linux Container Runtime from Scratch
#53Earlier quoted context omitted.
What underlying primitives are you relying on to provide isolation, if not linux namespaces? How does your approach compare to Google's gVisor?
gVisor emulates a kernel in userspace, providing some isolation but still relying on a shared host kernel. The recent Nvidia GPU container toolkit vulnerability was able to privilege escalate and container escape to the host because of a shared inode. Styrolite runs containers in a fully isolated virtual machine guest with its own, non-shared kernel, isolated from the host kernel. Styrolite doesn't run a userspace ke…
Re: Building a Linux Container Runtime from Scratch
#54Earlier quoted context omitted.
> Edera Protect creates Zones to isolate processes from other Zones What do you mean by "zone" exactly?
A zone is jargon for a virtual machine guest environment (an homage to Solaris Zones). Styrolite and Edera runs containers inside virtual machine guests for improved isolation and resource management.
Re: Building a Linux Container Runtime from Scratch
#55Earlier quoted context omitted.
Once you have set up the namespaces you drop all capabilities so if the program gets hacked while it's running it can do very little.
honest question: how is this any better than running non-root containers? They can do very little anyway, that way.
Re: Building a Linux Container Runtime from Scratch
#56Earlier quoted context omitted.
> This is what the entire public cloud is built on. Well... The entire public cloud except Azure. They've been caught multiple times for vulnerabilities stemming from the lack of hardware backed isolation between tenants.
Azure has the same level of isolation for VMs at a hardware level as AWS.
[1] https://unit42.paloaltonetworks.com/azure-container-instance...
[2] https://www.wiz.io/blog/chaosdb-explained-azures-cosmos-db-v...
Re: Building a Linux Container Runtime from Scratch
#57Isn’t the gold standard of containerisation gVisor? Can’t get much more restrictive than proxying and filtering syscalls. As far as I remember it’s the default runtime on GKE.
Edera developer here. gVisor is restrictive, but its at a cost of performance. Personally, I'd say Edera Protect is one level deeper. We create Edera Protect Zones to provide isolation, so we create a Zone that is isolated from the OS and hardware of the machine running the container. So we don't proxy or filter syscalls, as the isolation is a layer deeper. We are also focused on ensuring that Edera Protect is as per…
Re: Building a Linux Container Runtime from Scratch
#58Earlier quoted context omitted.
Anyone know if it's possible to update the Linux kernel so that namespaces are hard security boundaries? I wonder what that would entail.
When we speak of 'hard security boundaries' most people, in this space, are comparing to existing hardware backed isolation such as virtual machines. There are many container escapes each year because the chunk of api that they are required to cover is so large but more importantly it doesn't have isolation at the cpu level (eg: intel vt-x such as VMREAD, VMWRITE, VMLAUNCH, VMXOFF, VMXON). This is what the entire pub…
What API? The kernel syscall API?
If we assume for a moment, that there are no bugs in the Linux namespace implementation, would containers be as safe as virtual machines?
Re: Building a Linux Container Runtime from Scratch
#59Earlier quoted context omitted.
When we speak of 'hard security boundaries' most people, in this space, are comparing to existing hardware backed isolation such as virtual machines. There are many container escapes each year because the chunk of api that they are required to cover is so large but more importantly it doesn't have isolation at the cpu level (eg: intel vt-x such as VMREAD, VMWRITE, VMLAUNCH, VMXOFF, VMXON). This is what the entire pub…
> There are many container escapes each year because the chunk of api that they are required to cover is so large What API? The kernel syscall API? If we assume for a moment, that there are no bugs in the Linux namespace implementation, would containers be as safe as virtual machines?
Re: Building a Linux Container Runtime from Scratch
#60Earlier quoted context omitted.
> There are many container escapes each year because the chunk of api that they are required to cover is so large What API? The kernel syscall API? If we assume for a moment, that there are no bugs in the Linux namespace implementation, would containers be as safe as virtual machines?
No. As I'm responding to this Qualys just announced three new bypasses as of today: https://seclists.org/oss-sec/2025/q1/253 .