2

可以使用哪些技术来防止在 asp.net 中执行跨站点脚本?是否有任何非现成的实现可用于实现网站免受 xss 的保护?

4

3 回答 3

2

我们为此做了很长时间的内部开发,但最终微软为它提供了一个库。我们现在用这个完全替换了我们的库。它可以简单地使用如下:

string sanitizedString = Microsoft.Security.Application.Sanitizer.GetSafeHtmlFragment(string myStringToBeChecked);

此方法的唯一问题是它会修剪多个用行尾字符分隔的空格。如果您不希望这种情况发生,您可以考虑先根据行尾字符 (\r\n) 拆分字符串,然后计算这些拆分字符串前后的空格数,应用消毒剂,将空格追加并连接.

除此之外,微软图书馆工作正常。

于 2012-05-09T05:37:58.400 回答
1

microsoft 反跨站点脚本库是一个好的开始。它有一些有用的辅助方法来防止 XSS。它现在是更大的Microsoft Web 保护库的一部分

于 2012-05-08T22:48:38.297 回答
0

保护跨站脚本攻击的方法如下。

 1.  Use HtmlEncoding while saving the input content that is received from web  application controls usch as textbox etc.
 2.  Use InnerText instead of InnerHtml while displaying data on the page.
 3.  Do the input sanitization before saving the data into database.
于 2016-05-12T18:21:42.263 回答