【发布时间】:2014-07-24 05:03:29
【问题描述】:
使用 ASP.NET MVC,我有一个 url,它接受一个名为 path 的查询字符串参数,它可以是我网站中的一个 url。我发现了一个 XSS 漏洞,我无法弄清楚如何正确编码路径值以防止 XSS(但没有做很多代码来将可接受的 url 列入白名单)
所以用户访问的url是:
/iFrame?path=mypage.aspx
XSS 可以这样看:
/iFrame?path=javascript:alert%281%29
使用路径查询字符串值的 iFrame 的 HTML 是:
<iframe src="@Model.Source"></iframe>
我也试过:
这两种方法仍然显示 javascript 警告框。
是否有用于 ASP.NET MVC 的内置编码器对其进行编码,以便 src 不会执行 javascript?还是我需要做一些白名单或其他方法来防止它?
【问题讨论】:
标签: javascript asp.net asp.net-mvc iframe xss