我已经设置了一个应用程序来测试执行 XSS 攻击的不同方法,它会将我在文本框中编写的任何内容添加为 iframe src 值的附加内容。
但是 src 中已经包含了一个字符串。因此,如果我写类似 javascript:alert('123') 的内容,最终的 iframe src 将如下所示
<iframe src="blahblahjavascript:alert('123')>
有没有办法仍然在该 iframe 内执行 javascript 代码? (转义src?)
尝试添加\n、结束引号、添加特殊 utf 字符。
最佳答案
总体而言,在不转义结果的情况下(至少)让用户更改 iFrame 源似乎不是一件安全的事情。对于 XSS 攻击,您应该假设每个用户输入都是危险的并进行相应的处理。永远不要相信客户发送给您的任何内容。永远不要相信任何用户输入。始终假设用户输入和发送给您的内容是危险的并进行相应处理。
它是 iFrame 源还是其他源并不重要。重点是逃避一切。
如果我输入"><h1>XSS</h1><iframe src="
会怎样?进入你的文本字段?您的输入是否类似于 <iframe src="blahblah"><h1>XSS</h1><iframe src="">
或者类似的东西?
如果是这样,我可以在那里放一个脚本标签,这会让情况变得更糟。
关于javascript - 在已包含文本的 iframe "src"内执行 javascript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53951826/