日期:2014-05-18  浏览次数:20360 次

关于asp.net的注入式攻击的几个问题
想问一下,我现在有一个html编辑器,允许用户编写html代码上传,这样如何防止用户的注入式攻击?我用了sqlhelper的参数传递方式了,问一下这样能否就能避免注入攻击?
还一个问题就是大家都说存储过程跟sqlhelper的参数传递方式都可以防止注入攻击,它们的共同点是什么?原理呢?我现在的理解就是存储过程跟参数传递方式它们都限制了用户传递过来的变量的大小,是不是这样?我觉得我这样的想法还是有点不妥。。。
还想请详细的了解一下。。。。。

------解决方案--------------------
通过SqlParameter应该是可以避免注入的攻击的,我在winForm试过,可以避免注入,webForm的HTML代码里加sql语句没试过,我自己觉得应该是一样的.试一下就知道了.呵呵.
------解决方案--------------------
SqlParameter 参数方法是可以避免的!
------解决方案--------------------
使用参数方式应该是可以避免sql注入的,但客户端最好还是应该做一些过滤,比如:sql脚本或javascript脚本等.
------解决方案--------------------
原来就是使用sqlparameter以后,字符串是当作参数传递,不会再用连接字符串的方式构成危险语句.
使用sqlparameter以后可以防止注入攻击,但是同样避免不了跨站攻击等等其它攻击手段,所以关键字过滤还是必须要做的.
------解决方案--------------------
我用了sqlhelper的参数传递方式了,问一下这样能否就能避免注入攻击? 
==========
当然可以,
另存储过程就是传参数的形式所以跟这个sqlhelper是一样的
------解决方案--------------------
SqlParameter
------解决方案--------------------
可以用参数
也可以用,事物处理
------解决方案--------------------
探讨
原来就是使用sqlparameter以后,字符串是当作参数传递,不会再用连接字符串的方式构成危险语句.
使用sqlparameter以后可以防止注入攻击,但是同样避免不了跨站攻击等等其它攻击手段,所以关键字过滤还是必须要做的.