近期需要测试个XSS漏洞,为了快速方便就在github找了个开源的平台进行搭建测试,发现本平台存在一个代码写法错误导致密码重置漏洞
github地址:https://github.com/78778443/xssplatform
代码clone下来后,简单看了下安装目录代码逻辑,漏洞问题代码在\install\common.PHP中,从代码中看逻辑是没问题的,但是判断install.lock安装目录写错了。。。应该是判断当前文件就可以,这里多写了个install目录
然后再来看看step1.PHP、step2.PHP,都是统一包含common.PHP来进行判断执行的
这样一来如果使用者用这套代码安装完后未删除install的话攻击者只要执行install/step1.PHP就可进行重新安装操作
修复方法:\install\common.PHP修改为如下,或者删除install文件:
<?PHP
if (file_exists("install.lock")) {
header("location:/index.PHP");
exit("已安装,程序不再往下执行");
}
$project = 'Permeate渗透测试系统 XSS管理平台';
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。