关于PHP-CGI漏洞问题

不留名
2021-06-09 / 0 评论 / 501 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年06月09日,已超过1292天没有更新,若内容或图片失效,请留言反馈。

在昨天淘宝上一客户发来一个需求,漏洞修复。

PHP-CGI 远程代码执行
漏洞描述在地址后面加入【?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input】POST访问传入 任意PHP代码就能执行。
搜索资料得知不是网站代码的问题,由于是新网的虚拟主机,不能修改服务器配置,下了工单后解决了。大致解决思路是修改Apache或者Ngix配置文件
这个大致原理是
-d 指定配置项
%3d 代替 =
allow_url_include=1 修改php置,允许url包含文件
auto_prepend_file=hp://input 在访问php文件前加入 POST传入的内容做为PHP文件,从而达到远程执行PHP代码。

Apache开启URL过滤,把危险的参数过滤掉

RewriteEngine on
RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC]
RewriteRule ^(.*) $1? [L]
0

评论 (0)

取消