XSS payload 中 JavaScript 部分的一个混淆思路
利用 Array.prototype.find()
使用 find 函数 [1].find(alert)
。
在这个语句中 [1]
就是一个单元素的数组 (array) ,数组的对象都有一个 find 方法。
关于 find 方法的简易说明可以参考 https://m.runoob.com/jsref/jsref-find.html 以及 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find 。
简而言之, 如果数组是 [1,2,3].find(alert)
,就会将 find 函数中的参数分别在 数组中的每个元素上调用,即是 alert(1);alert(2);alert(3);
。
除此之外,还可以 [document.cookie].find(alert)
。
利用 Window 对象
如下
window["al"+"ert"](1)
https://developer.mozilla.org/en-US/docs/Web/API/Window
hex 变形
Leave a Reply