【问题标题】:Turning expose_php OFF in php.ini在 php.ini 中关闭 Expose_php
【发布时间】:2012-03-25 22:21:01
【问题描述】:

我被告知在我的 php.ini 中包含 expose_php = On 是一个安全问题,因此不符合 PCI 标准。

到目前为止,我对它的研究表明,将其关闭是低风险的,并且基本上会停止在标头中发回 PHP 版本,但是我想知道在此更改之后是否可能会出现任何问题.

我正在考虑的潜在问题是第三方服务(支付提供商、电子邮件跟踪系统、视频流 API),它们希望您使用标头进行响应,表明您正在运行一个 PHP 版本,可能超过某个版本?

这应该是无缝更改还是会出现问题?

【问题讨论】:

    标签: php pci-compliance


    【解决方案1】:

    没错。

    设置expose_php = Off 只是阻止网络服务器发回X-Powered-By 标头。

    虽然可以说潜在的黑客可能会寻找带有安全漏洞的过时版本的 PHP,但即使标头已关闭,他们也可能会这样做。在我看来,这是一件好事,但不要指望它能提供太多保护。

    在与第三方服务交互方面,他们不必关心您使用的是哪个版本的 PHP。它们应该能够以与平台无关的格式(例如 JSON、XML 等)提供内容,以便任何平台都可以使用这些服务,而不仅仅是 PHP。

    无论如何,对于他们来说,依赖“消费者”的 PHP 版本是没有用的,因为标头可以很容易地关闭,甚至可能被服务器管理员操纵。

    因此,关闭它应该不是问题。

    【讨论】:

      【解决方案2】:

      禁用expose_php 应该不会产生负面影响。

      它所做的只是删除 X-Powered-By 标头并阻止 GET 参数返回 PHP 信用和图像。

      依赖标头的任何第三方应用程序都是狡猾的。如果需要,您可以随时欺骗标头。

      【讨论】:

        【解决方案3】:

        不存在任何安全威胁,但暴露过时的 PHP 版本可能会邀请黑客尝试利用过去版本中记录良好的“漏洞”。

        关于第三方服务,它们是独立于平台的,不必关心我们使用的是哪个版本的 PHP。如果需要,我们可以简单地设置一个空标题或如下所示。

        header('X-Powered-By: Venu');
        

        【讨论】:

        【解决方案4】:

        打开或关闭此选项绝对没有害处。

        虽然关闭它不会为您的网站增加任何安全性。 那些脚本小子工具是如此愚蠢,以至于他们从不费心将一个平台与另一个平台区分开来。

        更不用说,如果您的网站是基于某些框架/CMS 的,那么隐藏 PHP 的存在是没有用的。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-04-16
          • 1970-01-01
          • 1970-01-01
          • 2011-10-03
          • 2014-08-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多