你是否一直为如何防止XSS攻击苦恼呢?来试用一下NHtmlFilter吧,我想它是你想要的。。
最近新去的一家小公司,在.net做web开发上真的很弱。底层框架,基础类库是很不完善呀。又是做互联网应用,安全总是要考虑的吧。今天我要解决的一个小问题就是过滤掉用户上传的html文本中的脚本。在网上查了一下没有找到合适的基于C#的这种处理,在java项目中或许我可以选用jsoup,HtmlFilter来处理html危险脚本的问题(其实以前我是做java开发的),无奈之下我就参照java版的HtmlFilter的代码写C#版本。
使用方法
NHtmlFilter target = new NHtmlFilter(); string input = "<div>dd</div><a id=\"testId\" href=\"http://code.google.com/p/nhtmlfilter\">nhtmlfilter</a>"; string expected = "dd<a href=\"http://code.google.com/p/nhtmlfilter\">nhtmlfilter</a>"; string actual; actual = target.filter(input);
对于可以使用的标签和标签属性都是可以用程序配制,再做简单封装就可以用于你的项目喽。
代码浏览地址
https://code.google.com/p/nhtmlfilter/source/browse/trunk/NHtmlFilter/NHtmlFilter.cs
代码项目下载地址。。
https://code.google.com/p/nhtmlfilter/downloads/list (google code 可能被墙了。。)
本站下载
https://files.cnblogs.com/weirhp/NHtmlFilter1.0.rar
欢迎下载使用,基于MIT协议发布,大家随便用喽。。用的开心就好。。有什么问题,一起研究喽。
本文为作者原创,欢迎拍砖
http://www.cnblogs.com/weirhp/archive/2011/10/03/NHtmlFilter.html
转载请著名出处,谢谢
weirhp@gmail.com