我正在阅读uWSGI文档,它警告始终避免以root身份运行uWSGI实例。这背后的原因是什么?如果它是在docker容器中作为除nginx之外唯一运行的进程,用于提供flask应用程序,那么这是否有影响?
一般来说,安全理论认为以root身份运行是不好的。如果存在任何类型的漏洞,例如允许任何人执行任意代码的代码执行漏洞,他们将能够摧毁整个系统。如果您不以root身份运行进程,则任何代码执行漏洞都需要与次要特权升级漏洞配对,以便摧毁您的系统。在docker容器中,这在一定程度上得到了缓解,因为您可以相对轻松地恢复旧系统,但通常仍然是一个不好的做法或习惯,因为恶意攻击者可以并且会窃取可能存在于您的服务器上的信息,或将您的服务器变成恶意软件传递机制。