最新评论
Re:利用ModelBinder防止XSS一次尝试 Will Meng 2011-04-19 13:30
@李晓强
我在文章的开头就已经说了,Encode只是一个广义的表示,包括真正的Encode和过滤一些东西。
本文更多的是在尝试一些思想。
Re:利用ModelBinder防止XSS一次尝试 李晓强 2011-04-19 13:15
[quote]Will Meng:
[quote]李晓强:
对楼主的方法持怀疑态度:
首先在ASP.NET中,框架已经替你搞定了这些事情,你向HttpHandler提交请求的时候就会经过验证,只不过默认的验证比较严格,只要提交的数据中包括HTML标签,脚本等数据那么这次请求都会被屏蔽掉.
只有在某些特殊情况下,也就是说你特意允许存在html标签的情况下(比如html编辑器存在的情况下),需要开放该页面的验证,让HTML数据能够进入到系统中,这时才需要对HTML中的内容是否存在XSS进行验证.
另外最重要的是:你通过Encode以后存到数据库中了,然后再Decode显示到页面中的话,岂不是相当于啥也没做?(就...[/quote]
呵呵,确实没看到,不过你对AntiXss的用法有点错误.如果你在输出的时候向获取到安全的内容的话这样就行:
Sanitizer.GetSafeHtml(result);
Re:利用ModelBinder防止XSS一次尝试 Will Meng 2011-04-18 20:23
[quote]李晓强:
对楼主的方法持怀疑态度:
首先在ASP.NET中,框架已经替你搞定了这些事情,你向HttpHandler提交请求的时候就会经过验证,只不过默认的验证比较严格,只要提交的数据中包括HTML标签,脚本等数据那么这次请求都会被屏蔽掉.
只有在某些特殊情况下,也就是说你特意允许存在html标签的情况下(比如html编辑器存在的情况下),需要开放该页面的验证,让HTML数据能够进入到系统中,这时才需要对HTML中的内容是否存在XSS进行验证.
另外最重要的是:你通过Encode以后存到数据库中了,然后再Decode显示到页面中的话,岂不是相当于啥也没做?(就好比用户名里面含有脚本的话,你Enc...[/quote]
呵呵,mvc里面的确默认是屏蔽这些标签的,但是这远远不够,所以还是需要自己处理的(无论是mvc还是webform都会报一个红黄页出来)
另外,如果你仔细看文章的话,你应该知道,我所谓的Encode指的不光是Encode,还有过滤等等。
至于你说的AntiXss,如果你仔细看我文章的话,你会发现,我用的就是最新版的AntiXss。
最后,希望能仔细阅读文章内容。
Re:利用ModelBinder防止XSS一次尝试 李晓强 2011-04-18 18:20
对楼主的方法持怀疑态度:
首先在ASP.NET中,框架已经替你搞定了这些事情,你向HttpHandler提交请求的时候就会经过验证,只不过默认的验证比较严格,只要提交的数据中包括HTML标签,脚本等数据那么这次请求都会被屏蔽掉.
只有在某些特殊情况下,也就是说你特意允许存在html标签的情况下(比如html编辑器存在的情况下),需要开放该页面的验证,让HTML数据能够进入到系统中,这时才需要对HTML中的内容是否存在XSS进行验证.
另外最重要的是:你通过Encode以后存到数据库中了,然后再Decode显示到页面中的话,岂不是相当于啥也没做?(就好比用户名里面含有脚本的话,你Encode到数据库,然后Decode后显示到页面,还是能显示出来脚本的).
说了这么多,介绍你个工具吧,微软的AntiXss,这个工具是微软官方的解决xss的.net组件,具体方法不再赘述.
Re:利用ModelBinder防止XSS一次尝试 軒轅劍 2011-04-18 18:11
怎么使用ModelBinder 喃?
一个mvc初学者
Re:利用ModelBinder防止XSS一次尝试 huangxincheng520 2011-04-18 13:16
发现楼主的文章篇篇精彩
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 要有好的心情 2011-04-13 19:36
返回的不再是 String ,而是 MvcHtmlString,
return linkTag.ToString(TagRenderMode.Normal);改为:
return MvcHtmlString.Create( linkTag.ToString(TagRenderMode.Normal));
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 要有好的心情 2011-04-13 19:23
知道了,要有 Html.Raw 包裹一下
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 要有好的心情 2011-04-11 23:06
我想生成:
<a href=\"javascript:void(0);\" onclick=\"add()\">超链接显示的文字</a>
却成了:
<a href="javascript:void(0);" onclick="add()">超链接显示的文字</a>
如能达到我想要的目的?
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 莫玉胜 2011-04-02 17:34
@Will Meng
[quote]Will Meng:
[quote]莫玉胜:
tagBuilder.MergeAttribute("action", string.Format("/{0}/{1}", controllerName, actionName));
这句代码会出问题,一旦路由规则改了..这种写死的Url就会不可用[/quote]
是会出现这种问题,这就需要更改action的构成了。我主要觉得mvc自带的Form方法自动匹配routedata多少定制性差一些。[/quote]
var urlHelper = new UrlHelper(html.ViewContext.RequestContext);
urlHelper.Action("ActionName", "ControllerName");
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 Will Meng 2011-04-02 17:26
[quote]莫玉胜:
tagBuilder.MergeAttribute("action", string.Format("/{0}/{1}", controllerName, actionName));
这句代码会出问题,一旦路由规则改了..这种写死的Url就会不可用[/quote]
是会出现这种问题,这就需要更改action的构成了。我主要觉得mvc自带的Form方法自动匹配routedata多少定制性差一些。
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 莫玉胜 2011-04-02 12:54
tagBuilder.MergeAttribute("action", string.Format("/{0}/{1}", controllerName, actionName));
这句代码会出问题,一旦路由规则改了..这种写死的Url就会不可用
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 chris-shao 2011-04-01 12:51
问题是当MVC升级后,是选择升级呢?还是选择自己扩展。就比较郁闷了。
Re:我对ASP.NET MVC HtmlHelper中的Form和Link的小扩展 john23.net 2011-04-01 11:48
恩,不错
Re:浅析购物车的实现 落雪Good! 2011-03-03 17:39
学习……
Re:ASP.NET MVC中的Json Binding和Validate 卤水兄 2011-03-02 18:09
Mark
Re:ASP.NET MVC中的Json Binding和Validate Will Meng 2011-03-02 12:59
[quote]不戒大师:看来MVC是个好东西啊 是要抽点时间去学习下了,有没有Demo啊 发个出来,顺便学习下,谢谢[/quote]
其实无论WEBFORM还是MVC都是好东西。。。
代码都有了,自己敲几下吧。。。
Re:ASP.NET MVC中的Json Binding和Validate 不戒大师 2011-03-02 10:11
看来MVC是个好东西啊 是要抽点时间去学习下了,有没有Demo啊 发个出来,顺便学习下,谢谢
Re:ASP.NET MVC中的Json Binding和Validate James.H.Fu 2011-03-02 09:34
恩,写的不错。以后多交流哈,我也是搞电子商务的,已经搞了三年多了。
Re:ASP.NET MVC---项目中用到的扩展 asp mvc爱好者 2011-02-27 16:44
看不懂写了什么