=_= 在 JavaScript 或 HTML 中是什么意思?
What does =_= mean in JavaScript or HTML?
阅读这篇文章XSS cheat sheet,我注意到一个我从未见过的特殊用法:
<img src="/" =_=" title="onerror='prompt(1)'">
“=_=”是什么意思?它在“On Mouse Over”这句话下面。
它只是元素的一个属性。它本身没有任何意义,所以它可能只是作为一条红鲱鱼出现。
美化了,代码是:
<img
src="/"
=_=" title="
onerror='prompt(1)'"
>
在HTML中,=
在一个属性中指定了属性名和属性值之间的分隔符,所以是:
=_=" title="
^^ attribute name
=_=" title="
^ delimiter between attribute name and attribute value
=_=" title="
^ attribute value contents delimiter
=_=" title="
^^^^^^^ attribute value
=_=" title="
^ attribute value contents delimiter
如果需要,您可以检索属性值。
const img = document.querySelector('img');
console.log(img.getAttribute('=_'));
<img
src="/"
=_=" title="
onerror='prompt(1)'"
>
请注意,属性名称是 =_
,而不是 =_=
- 最后的 =
是分隔符,不是属性名称的一部分。
“XSS”仅由 src
和 onerror
引起,与其他任何因素无关。无论您在哪里遇到这种情况,=_
可能根本不做任何事情。 可以,但可能不会。
<img src="/" onerror='prompt(1)'">
阅读这篇文章XSS cheat sheet,我注意到一个我从未见过的特殊用法:
<img src="/" =_=" title="onerror='prompt(1)'">
“=_=”是什么意思?它在“On Mouse Over”这句话下面。
它只是元素的一个属性。它本身没有任何意义,所以它可能只是作为一条红鲱鱼出现。
美化了,代码是:
<img
src="/"
=_=" title="
onerror='prompt(1)'"
>
在HTML中,=
在一个属性中指定了属性名和属性值之间的分隔符,所以是:
=_=" title="
^^ attribute name
=_=" title="
^ delimiter between attribute name and attribute value
=_=" title="
^ attribute value contents delimiter
=_=" title="
^^^^^^^ attribute value
=_=" title="
^ attribute value contents delimiter
如果需要,您可以检索属性值。
const img = document.querySelector('img');
console.log(img.getAttribute('=_'));
<img
src="/"
=_=" title="
onerror='prompt(1)'"
>
请注意,属性名称是 =_
,而不是 =_=
- 最后的 =
是分隔符,不是属性名称的一部分。
“XSS”仅由 src
和 onerror
引起,与其他任何因素无关。无论您在哪里遇到这种情况,=_
可能根本不做任何事情。 可以,但可能不会。
<img src="/" onerror='prompt(1)'">