本仓库展示了我发现的这个漏洞的一些信息。
以下是官方给出的描述: 适用于 WordPress 的 archive-tainacan-collection 主题在 2.7.2 版本中,由于在 URL 上使用 add_query_arg 时未进行适当的转义,因而容易受到反射型跨站脚本(Reflected Cross-Site Scripting)攻击。这使得未经身份验证的攻击者能够在页面中注入任意 Web 脚本,如果攻击者能够成功诱骗用户执行点击链接等操作,这些脚本就会执行。
因此,基本上可以通过发送恶意链接来利用此漏洞。问题在于,当页面加载时,如果有额外的参数被发送到服务器,这些附加内容就会被写入网页。
易受攻击的端点是 /collections/。因此,如果你在 GET 请求中发送以下载荷,可能会弹出 XSS 警报: /collections/?teste.com/%3E%3Cscript%3Ealert(%27XSS%20CAIS%27)%3C/script%3E
因此,如果 Web 应用程序运行在 https://souvulneravel.com 上,以下链接非常适合用于钓鱼: https://souvulneravel.com/collections/?teste.com/%3E%3Cscript%3Ealert(%27XSS%20CAIS%27)%3C/script%3E
在测试过程中,我发现应用程序会进行一些字符串替换。空格和其他字符会被替换为 '_'。因此,要进行完整的利用,需要使用额外的 JavaScript 函数来绕过这个字符串替换问题。我现在没有时间做进一步说明,但可以使用类似 atob 之类的函数。