探索挖掘xss中括号被转义的绕过措施(续)

admin 2025年3月11日11:00:22评论12 views字数 635阅读2分7秒阅读模式

0x00 前言

临时更一篇,这篇文章本不在更新计划中,直到上周有师傅留言:

探索挖掘xss中括号被转义的绕过措施(续)

其实我那篇文章中有简单提到过:

探索挖掘xss中括号被转义的绕过措施(续)

但是我没细讲,给出的payload也只是弹窗和打印,没有什么太大危害:

探索挖掘xss中括号被转义的绕过措施(续)

所以如果大家想要危害比较大的,比如获取cookie,那么请看下文。

0x01 正文

在模板字面量中,使用如下的格式包裹变量:

let expression'test';`string ${expression} string;`
探索挖掘xss中括号被转义的绕过措施(续)

也就是形如${}的形式,在大括号中包裹变量,这样就能将变量插入到字符串中。

下面这段payload就是我上文给留言区师傅的那个:

console.log`${document.cookie}`

效果:

探索挖掘xss中括号被转义的绕过措施(续)
探索挖掘xss中括号被转义的绕过措施(续)

至于为什么会有一个多余的数组,读者朋友如有兴趣可自查MDN文档,这不是本文重点所以掠过(https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Template_literals):

探索挖掘xss中括号被转义的绕过措施(续)

这也是为什么alert弹不出内容的原因:

alert`${document.cookie}`
探索挖掘xss中括号被转义的绕过措施(续)

所以我这里只建议使用console.log打印cookie,另外包括变量用到的${}也同样不会被转义,这里我依然用上文用到的php经典函数htmlspecialchars给大家演示:

探索挖掘xss中括号被转义的绕过措施(续)
探索挖掘xss中括号被转义的绕过措施(续)

至于更多的payload就需要大家自行构造了,我这里就不多余写了。

原文始发于微信公众号(Spade sec):探索挖掘xss中括号被转义的绕过措施(续)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月11日11:00:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   探索挖掘xss中括号被转义的绕过措施(续)http://cn-sec.com/archives/3827138.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息