I find it makes my life easier, personally, because I can set up and tear down environments I’m playing with easily.
As for your user & permissions concern, are you aware that docker these days can be configured to map “root” in the container to a different user? Personally I prefer to use podman though, which doesn’t have that problem to begin with
While that sort of analysis probably isn’t impossible, it is computationally unrealistic to do in realtime on a language which wasn’t designed for it.
It’s the sort of thing which is simple in 99% of cases, but the last 1% might well be impossible. Sadly it’s the last 1% you need to worry about, because anyone trying to defeat your system is going to find them