disable_functions 在 PHP 中采用什么威胁模型?

问题描述 投票:0回答:1

disable_functions
允许禁用 PHP 中被视为“危险”的某些函数。然而,我发现很难掌握这样的功能假设了什么样的威胁模型。

如果您禁用某些功能来防止自己的应用程序代码受到攻击,那么这充其量只是一个用胶带解决方案来修补编写不佳的代码库。

另一方面,如果您使用

disable_functions
来限制 RCE 攻击的范围,那么这是毫无意义的努力,因为在很多情况下,您的数据可以使用本文中不存在的“简单”功能来窃取黑名单。

在我看来,定义这样的黑名单只会提供一种错误的安全感。如果 RCE 攻击成功,那么您的执行上下文已经被破坏,将某些功能列入黑名单感觉像是一场失败的战斗。

我所缺少的

disable_functions
有任何真正的安全优势吗?

php security rce
1个回答
0
投票

以下是可能的用例:

  1. 配置共享主机以防止执行任意操作系统命令、操纵文件路径等。示例:

    exec, shell_exec, passthru, popen, link
    。或者临时阻止,例如,当
    mail
    函数的使用违反了允许的行为算法时。

  2. 为了简化组织中的代码控制,当更容易禁止使用功能而不是监视它们(或为此编写自动规则),然后花时间在代码中重写它们时。

  3. 满足某些安全合规性(PCI DSS、SOX、HIPAA 等)。支持您安全的论据越多,就越容易获得所需的状态。

  4. 也许有人喜欢禁止自己使用某些东西。各种形式的自由,你知道;)

© www.soinside.com 2019 - 2024. All rights reserved.