0

我有一个这样的网址

http://www.example.com/?input=userinput

虽然我做了 xss 注入过滤器

strip_tags ();

但是看看这个,我接受这个输入并将它放在这样的 url 中

<a href ="http://www.example.com/?page=userinput"> </a>

想象用户可以在他的用户输入部分编写此代码

onMouseOver%3dalert%2839793%29%2f%2f

这会将 onMouseOver 事件添加到我的网址!

4

1 回答 1

0

请查看 OWASP XSS 预防备忘单。它将详细解释所有这些: https ://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet

要回答这里提到的特定主题,您需要在将输入作为 url 的一部分打印到页面之前对输入进行 url 编码。对于 HTML 属性中的其他数据,您需要应用 HTML 属性编码,如果它位于像 onclick 这样的事件处理程序中,则可能还需要应用 javascriot 编码。

于 2012-08-07T18:00:20.443 回答