Si está buscando mitigar este tipo de problemas, podría estar interesado en ejecutar su servidor web como un usuario no root dentro de un Docker contenedor o contenedor LXC.
Esto mitiga la amenaza en la forma en que funciona Docker. Los contenedores Docker son entornos Linux aislados que, para todos los fines intensivos, son sistemas operativos autónomos. Sin embargo, son increíblemente ligeros y no son lo mismo que la virtualización de ninguna manera.
Ejecutar su servidor web dentro de un contenedor Docker como usuario no root significa que en el mejor de los casos un atacante solo puede acceder a la memoria del contenedor Docker y nunca a la memoria de la máquina host, siempre que Docker y LXC se ha implementado correctamente (y el soporte de LXC en el kernel ha estado vigente durante bastante tiempo).
Al utilizar el soporte de red de Docker, puede "exponer" el servidor web a su propio puerto local 80/443, que básicamente utiliza el reenvío de puertos para reenviar todo el tráfico en esos puertos para seleccionar puertos en el contenedor de Docker (es decir, 8080). y 8443, porque no puede enlazar a 80 y 443 como un usuario no root).
Para el usuario final, en efecto, nada ha cambiado. Todo el tráfico se reenvía a un servidor web real que se ejecuta en un contenedor LXC. Sin embargo, si un atacante logra obtener la ejecución remota de código, estará increíblemente limitado en lo que podrá hacer (nuevamente, si Docker y LXC se han implementado correctamente).