提问人:Onion 提问时间:11/6/2023 更新时间:11/6/2023 访问量:71
disable_functions PHP 中假设什么威胁模型?[关闭]
What threat model does disable_functions assume in PHP? [closed]
问:
disable_functions
允许禁用PHP中某些被认为是“危险”的功能。但是,我发现很难掌握这种功能假设了什么样的威胁模型。
如果您禁用某些功能来防止您自己的应用程序代码,那么这充其量只是一个胶带解决方案,用于对编写不佳的代码库进行猴子修补。
另一方面,如果您使用限制 RCE 攻击的范围,那么这是一项毫无意义的努力,因为在很多情况下,您的数据可以使用此黑名单中不存在的“简单”功能泄露。disable_functions
在我看来,定义这样的黑名单只会提供一种虚假的安全感。如果 RCE 攻击成功,那么您的执行上下文已经被破坏,将某些函数列入黑名单感觉就像是一场失败的战斗。
我缺少的有什么真正的安全优势吗?disable_functions
答:
2赞
vodevel
11/6/2023
#1
以下是可能的用例:
配置共享主机以防止执行任意操作系统命令、操纵文件路径等。示例: .或者,例如,当函数的使用违反了允许的行为算法时,暂时阻止该函数。
exec, shell_exec, passthru, popen, link
mail
为了简化组织中的代码控制,当禁止使用函数而不是监视它们(或为此编写自动规则)更容易时,然后花时间在代码中重写它们。
满足某些安全合规性(PCI DSS、SOX、HIPAA 等)。你拥有的支持你的安全的论据越多,就越容易获得所需的状态。
也许有人喜欢禁止自己使用某些东西。各种形式的自由,你知道;)
评论
0赞
Onion
11/6/2023
关于 1),对于现在使用容器、LVE 或其他形式的虚拟化的共享主机来说,这仍然是一个问题吗?disable_functions 似乎是 2000 年代共享主机安装的工具。
1赞
vodevel
11/6/2023
我不争辩,但共享主机是一个独立的收入世界,如果其中有相当多的人自 2000 年代以来一直没有改变,我不会感到惊讶
上一个:具有权限的 JWT
评论