So these ”escapes“ are basically giving a container full access to the host and using that. None of them are enabled by default.
So these ”escapes“ are basically giving a container full access to the host and using that. None of them are enabled by default.
unfortunately cannot find it anymore.
on edit - maybe it was write permissions to the file system, but largely the same level of "once you have this it is game over"
https://devblogs.microsoft.com/oldnewthing/20060508-22/?p=31...
Generally, it’s not the stuff the container is intended to run that’s doing the escape, though. This is usually the second step, after getting local execution through a vulnerability in the application running in the container.
This, by the way, is why I think Google had it right by splitting most products into SWE and SRE groups, so you had a group of people who could focus full-time on the production environment. SWEs are rewarded for building and deploying stuff, so they're going to build and deploy stuff.
And in this case. If you escaped the container, you are literally nobody. All you allowed to read is public files that any user can read.
By the way. If you use rootless container, this is the default settings you will get. Since you don't have access to uid0 at first place.
Judging by the number of HOWTOs I see on GitHub and YouTube that tell you to check the Privileged box, this assumption isn't worth what you think it is.