如果向最终用户显示
phpinfo()
转储,恶意用户利用该信息最糟糕的情况是什么?哪些领域最不安全?也就是说,如果您的 phpinfo()
被公开展示,在将其删除后,您应该在哪里关注/关注恶意利用?
了解文件系统的结构可能会允许黑客执行目录遍历攻击(如果您的网站容易受到攻击)。
我认为暴露 phpinfo() 本身不一定有风险,但与另一个漏洞结合可能会导致您的网站受到损害。
显然,黑客掌握的有关您系统的具体信息越少越好。禁用 phpinfo() 不会使您的网站安全,但会让他们变得更加困难。
除了能够查看
register_globals
是否打开以及文件可能位于 include_path 中的位置等显而易见的内容之外,还有所有 $_SERVER
($_SERVER["DOCUMENT_ROOT"]
可以提供定义 /etc/passwd
的相对路径名的线索)和$_ENV
信息(令人惊奇的是人们在$_ENV
中存储的内容,例如加密密钥)
配置良好、最新的系统可以无风险地暴露
phpinfo()
。
尽管如此,还是有可能掌握如此多的详细信息——尤其是模块版本,当新发现的漏洞出现时,这可以让破解者的工作变得更轻松——我认为而不是放弃它们是一个很好的做法。特别是在共享主机上,您对日常服务器管理没有影响。
最大的问题是,许多版本通过打印 URL 的内容和用于访问它的其他数据,使 XSS 攻击变得简单。
即使您的系统是最新的并且配置正确,仍然允许访问有什么好处?这很重要,如果极有可能它可能是一个漏洞,那么阻止访问是否不值得?
最好不要让phpinfo()函数被任何人使用,让用户查看结果是另外一种情况需要讨论。我无法发表评论,因为我刚刚注册。
黑客可以使用此信息来查找漏洞并攻击您的网站。
老实说,不多。就我个人而言,我经常将
phpinfo()
页向上。
如果您有一些严重的配置错误(例如 PHP 以 root 身份运行),或者您正在使用某些扩展或 PHP 本身的旧版本和易受攻击的版本,则此信息将更加暴露。另一方面,不暴露也不会保护你
phpinfo()
;相反,您应该注意让您的服务器保持最新状态并正确配置。