为什么我不应该为 /var/www 设置 777 权限?

为什么我不应该为 /var/www 设置 777 权限?

我知道我不是第一个问这个问题的人,但我仍然不清楚。我的意思是,这个帖子我们可以读到

777 通常是一个错误的权限,我会告诉你为什么。

尽管在赌场或拉斯维加斯看起来 777 是个好东西,但这并不意味着您会中大奖。相反,对于任何想要修改您的文件的人来说,这都是大奖。777(及其丑陋的表亲 666)允许其他人拥有读取和写入权限(在 777 的情况下,是执行权限)。您可以了解有关文件权限如何工作的更多信息,但简而言之,权限分为三组:所有者、组和其他。通过将其他人的权限设置为 6 或 7(rw- 或 rwx),您可以让任何用户编辑和操作这些文件和文件夹。通常,您可以想象,这对安全不利。(...)

但在示例中,我们可以看到其他用户仍在同一台 PC 上。网络上的危险是什么?任何人都可以远程访问或修改您的数据文件吗?(在我的情况下,我指的是静态网站。)

答案1

如果任何如果您计算机上与外界连接的程序存在任何类型的漏洞,入侵者就可以劫持该程序并执行允许的任何操作。例如,即使您正在运行静态网站,Apache 或 Nginx 或您正在使用的任何程序中也可能存在漏洞,这些漏洞允许攻击者发送精心设计的 HTTP 请求,从而溢出缓冲区或类似的东西,并用自己的代码替换程序正在运行的代码。

如果运行 Web 服务器的帐户具有写入权限/var/www,那么攻击者就可以转身并悄悄地将恶意软件插入您的网页。

当在主要的网络服务器中发现此类漏洞时,您可以指望人们第二天会运行脚本,自动登录他们能找到的每个服务器并尝试应用这些漏洞。

如果你面对的是公共互联网,并且有一个指向你网站的链接任何地方,查看您的 httpaccess 日志,您会看到各种各样针对您的服务器的非常愚蠢的自动攻击,例如有人寻找已安装的 phpmyadmin 副本并运行数百个常用密码。

另一方面,如果 Web 服务器在无法写入计算机上任何关键位置的帐户下运行,则风险会大大降低。

相关内容