防SQL注入完善登录

1、举上篇例子:我们的数据库语句是select count(1) from [dbo].[User] where UserId={user} and Pwd=’{pwd}’;当密码部分输入 ’ or 1=1–的时候,我们的{pwd}被 ’ or 1=1–取代,那么语句就变成select count(1) from [dbo].[User] where UserId={user} and Pwd=’’ or 1=1–’,将账号1001带入后则可以成功登录

在这里插入图片描述
2、我们判断的是查询结果大于1则登入成功,原sql通过账号密码匹配可以查询到1001账号的数据,但通过修改SQL语句也能查询到结果,1=1能查询到所有的数据,所以结果一定大于0,也就实现了不知道密码也能成功登录系统,这就是SQL注入
在这里插入图片描述
3、下面我们学习如何在程序中使用代码来防止SQL注入,通过SqlParameter参数化,将特殊符号转化为普通字符串即可
在这里插入图片描述
4、验证结果,密码输入’ or 1=1–登录失败
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值