来源:自学PHP网 时间:2015-04-17 15:08 作者: 阅读:次
[导读] 在上一节我们说完了带有注入漏洞的程序的编写,但是大家能发现那里出现漏洞了么?其实漏洞就出现在数据库查询语句中,由于数据库查询的规范为拼接查询。在编写上面的asp程序大...
在上一节我们说完了带有注入漏洞的程序的编写,但是大家能发现那里出现漏洞了么? 其实漏洞就出现在数据库查询语句中,由于数据库查询的规范为拼接查询。在编写上面的asp程序大家也注意到sql查询其实是以字符串形式被赋值给sql的。这就导致拼接的一部分内容是客户端填写的,当一个熟悉sql查询的用户对其提交恶意构造的内容使sql变量按照用户的需要去获取信息,这样就会产生注入了。
比如说我们在上面的测试代码后的id提交值加入1 and username= admin 这样的字符串,如图所示
这样sql语句就变成了select * from admin where id=1 and username=admin 。返回的也是admin,因为我们的提交并没有破坏查询语句,而admin的id也为1所以就会返回admin的信息。 那么当我们提交一个不存在的用户名呢?肯定不会返回信息了,因为sql查询中不会查询到内容导致BOF记录为true(-1)就会返回暂无记录。 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com