使用 Burp 拦截流量并注入代码 我们发现了一个网站中的远程代码执行漏洞 在表单的输入字段中输入数据并单击提交后,流量被拦截,并且在输入字段的值中的请求中添加了以下命令%27%2bsystem(%22id%22)%2b%27 要修复它,我们已经完成了建议的强化 1. 在所有输入字段上,我们已经完成了输入清理我们只允许数字并限制了数字允许的数字。我们还使用了 htmlspecialchars、escapeshellcmd、escapeshellargs 等函数。
这没有帮助。
因此,当我们能够拦截流量并注入系统命令时,我们检查了用户 ID 并删除了该用户 ID 的 shell 访问 在 etc/passwd 中,该用户是 /bin/bash,我们删除了访问并验证它已更新为 /bin /false 这个用户
这也没有帮助
使用代码注入显示 id 的用户是网站主目录的所有者。我们没有尝试更改所有权,但我们尝试在主目录上删除此用户的执行权限,但随后站点本身变得无法访问并给出 403 禁止错误。
因此保留了该用户和同一组中其他用户的执行权限
我们在 php.ini 中使用了 disable_functions 来禁用大部分推荐的功能,例如 exec、system 等 重新启动 httpd ,我希望这可以解决问题,但问题仍然存在 我们还使用了其他指令,例如 Session cookie secure ,Cookie httponly,session.referer_check,session.use_strict_mode 等但都是徒劳的
- 我们现在计划尝试为除 root 以外的所有用户删除 /usr/bin 的执行权限。
这是一件好事吗,这会限制网站所有者用户执行的系统命令吗
如果还有什么我可以尝试的,你能告诉我吗?