首页 > 其他 > 详细

验证中“参数”作用

时间:2014-03-03 09:52:50      阅读:304      评论:0      收藏:0      [点我收藏+]
     对于初学者,普通验证好像没法体现出“参数”的作用,但是和数据库交互的时候,由于验证数据库中数据的时候需要用到SQL语句,就会造成漏洞。比如“ select * from userData where userName=‘abcd‘ and passWord=‘ ‘or‘1‘=‘1 ‘ “其实这个where条件就是没有条件,因此验证等于没有验证。所以才有了”参数“的价值。
     跟之前普通验证差不多,只不过现在多了一个连接数据库,并传入SQL语句,将查询的结果返回给程序再做出判断。
     普通验证的漏洞:
     bubuko.com,布布扣
     特殊验证:需要”参数“处理:
     string sqlStr = string.Format("select count(*) from userData where userName=@userName and passWord=@passWord", uN, pW);
     SqlParameter tempP1 = new SqlParameter("@userName", uN);
     SqlParameter tempP2 = new SqlParameter("@passWord", pW);
     cmd.Parameters.Add(tempP1);
     cmd.Parameters.Add(tempP2);
     bubuko.com,布布扣

     只有数据完全和数据库内的信息一样,才能验证成功。

     bubuko.com,布布扣

     附上代码验证中”参数“作用

     备注:写于2013年4月2日

验证中“参数”作用,布布扣,bubuko.com

验证中“参数”作用

原文:http://blog.csdn.net/shengjianzhichenhui/article/details/20281199

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!