【发布时间】:2010-06-19 20:13:23
【问题描述】:
我正在尝试阻止 XSS 攻击,因此我使用 html 敏捷包来创建我的白名单,并使用 Microsoft 反跨站点脚本库来处理其余部分。
现在我正在研究对所有 html href 进行编码。我得到一大串可以包含hrefs的html代码。根据 MS 库,它们有一个 URL 编码,但如果你对整个 URl 进行编码,那么它就不能使用。所以在示例中,他们只是对查询字符串进行编码
UrlEncode 不可信的输入用于 URL(例如 查询字符串)单击 这里!
http://msdn.microsoft.com/en-us/library/aa973813.aspx
所以现在我的问题是如何通过 href 解析并找到查询字符串。总是只是“?”那么查询字符串还是可以有空格并以不同的方式编写?
编辑
这些网址不是我写的,而是分享它们的用户写的。所以这就是为什么我需要一种方法来确保我获得所有查询字符串,而不仅仅是有效格式的查询字符串。如果它可以工作无效格式,我也必须抓住这些。黑客不会关心它是否是有效的格式,只要它仍然可以做他们想要的。
【问题讨论】:
标签: c# asp.net security query-string