logoalt Hacker News

ijustlovemathtoday at 7:11 AM6 repliesview on HN

I've found it interesting that systemd and Linux user permissions/groups never come into the sandboxing discussions. They're both quite robust, offer a good deal of customization in concert,and by their nature, are fairly low cost.


Replies

nextaccountictoday at 8:30 AM

Unix permissions were written at a time where the (multi user) system was protecting itself from the user. Every program ran at the same privileges of the user, because it wasn't a security consideration that maybe the program doesn't do what the user thinks it does. That's why in the list of classic Unix tools there is nothing to sandbox programs or anything like that, it was a non issue

And today this is.. not sufficient. What we require today is to run software protected from each other. For quite some time I tried to use Unix permissions for this (one user per application I run), but it's totally unworkable. You need a capabilities model, not an user permission model

Anyway I already linked this elsewhere in this thread but in this comment it's a better fit https://xkcd.com/1200/

show 4 replies
moezdtoday at 7:24 AM

This assumes people know more than just writing Dockerfiles and push straight to production. This is still a rarity.

show 1 reply
vbezhenartoday at 8:37 AM

Linux kernel is ridden with local privilege escalation vulnerabilities. This approach works for trusted software that you just want to contain, but it won't work for malicious software.

show 1 reply
pjmlptoday at 7:30 AM

Because that is actually UNIX user permissions/groups, with a long history of what works, and what doesn't?

hendrytoday at 8:56 AM

Agreed! systemd nspawn is actually pretty awesome, though not many people use it.

ape4today at 7:51 AM

cgroups are part of whats used to implement docker and podman

show 1 reply