具有公共phpinfo()页面的安全风险?


10

我有一个可公开访问的页面

<?php phpinfo(); >

在测试版中,我将其用于调试目的,但是当它处于活动状态时,保持可访问性是否有害?

Answers:


11

这完全取决于您对PHP安装的信心。如果您认为这是坚如磐石,即使攻击者知道有关PHP安装的所有信息,也可以将其保留在原位。

但是,实际上,您为什么仍要将它留在生产系统上?在您的PHP版本中可能没有您发现的漏洞-人们现在或将来可能会扫描您的PHP版本或您已启用的特定选项,因为他们知道如何进行这些漏洞。因此,通过公开保持此状态,您将自己添加到了他们的命中列表中。

如果要保留它,可以将其放在受密码保护的目录中,也可以在需要时将其打开。鉴于这些选择的成本很小,我不会冒将其公开的风险。


2
将函数调用包装在有条件的代码中通常可以解决问题-即<?php if ( $_SERVER['REMOTE_ADDR'] == '1.2.3.4' ) phpinfo(); ?>1.2.3.4您的IP地址在哪里)
danlefree 2010年

感谢@dunxd-感谢@danlefree的提示...还有很多站点仍然公开其phpinfos!
Siliconpi 2010年

1
有很多网站也暴露phpmyadmin-不要遵循其他人安全性低的示例。他们可能不会像您重视自己的数据那样重视自己的数据或服务器的完整性。
dunxd

尽管@dunxd的解决方案是彻底和完善的,但我非常喜欢@danlefree的解决方案。我不确定为什么我以前从未想到过这一点,因此我将继续使用此模型。为了保持话题,我还想补充一点,我认为在phpinfo()函数中公开公开PHP 不是一个明智的主意。
justinhartman
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.