[Typecho漏洞]Typecho博客程序v1.2.1-rc仍然存在XSS漏洞

道锋潜鳞
2023-04-23 / 3 评论 / 262 阅读 / 正在检测是否收录...

在Typecho发布1.2.1-rc版本修复了作者评论的URL字段中的一个XSS攻击漏洞后,我发现作者的email字段中仍然存在漏洞。我能够绕过验证器并进行存储型 XSS 攻击,可以利用它来窃取 cookie。

为了重现该问题,我构造了一个评论提交 POST 请求,并将电子邮件字段设置为以下值:

"></a><script>alert('hacked')</script>"@example.com

受影响的版本

由 FaithPatrick 在 GitHub上反馈该问题 issues#1560 issues#1561
202304230901403450.webp
202304230902003100.webp

根本原因位于 var/Typecho/Validate.php . 该filter_var()函数不应该用于验证,因为它只返回所提供的 URL 或电子邮件的净化副本,这不够严格。

考虑到您网站的安全,站长建议使用Typecho(1.2.0 ~ 1.2.1-rc) 的用户暂时关闭评论,直到问题在新版本中完全修复。或使用临时解决方案

可以将 var/Typecho/Validate.php 第99行临时使用则表达式替换使用,这只针对邮箱


return filter_var($str, FILTER_VALIDATE_EMAIL) !== false;

改为

return preg_match("/^[A-Za-z0-9]+([_\.][A-Za-z0-9]+)*@([A-Za-z0-9\-]+\.)+[A-Za-z]{2,6}$/",$str) === 1;
1

评论 (3)

取消
  1. 头像
    小黄泊
    Windows 8.1 · Google Chrome

    厉害啊,居然能发现XSS漏洞(话说typecho居然还有这种漏洞,惊了)

    回复
  2. 头像
    瑞龙同学
    Android · Google Chrome

    厉害

    回复
  3. 头像
    老方
    Android · Google Chrome

    回复