欢迎来到 Xiuno BBS

Xiuno BBS 审计之问题13:管理员发帖 doctype=0 时存储型 XSS

问题:管理员发帖 doctype=0 时存储型 XSS(绕过 htmlspecialchars)

此文章为XIUNOX版本重构审计时发现问题,XIUNOX版本已优化修复此问题。分享出来方便后续想基于xiuno bbs4.0.4版本制作维护版本或插件模板等需求的开发者和站长参考。

现象

Xiuno BBS 4.0.4 在帖子内容入库格式化时,对 doctype=0(HTML 类型)的处理存在特权分支:当发帖人 gid==1(管理员组)时,原文 message 未经 htmlspecialchars 也未经 xn_html_safe 白名单过滤,直接赋值给 message_fmt 入库。前台模板 post_list.inc.htmthread.htm 又以 原样输出,未做二次转义。

攻击者只要拿到管理员账号(或通过弱口令、CSRF 劫持后台),即可在帖子中植入任意