url编码:一般的url编码其实就是那个字符的ASCII值得十六进制
- 空格是%20,单引号是%27, 井号是%23,双引号是%22
常见sql注入方式:
按照注入点分类
- 数字型注入:许多网页链接有类似的结构 http://xxx.com/users.php?id=1 基于此种形式的注入,注入点id为数字,一般被叫做数字型注入点,通过这种形式查询出后台数据库信息返回前台展示,可以构造类似以下的sql语句进行爆破:select *** from 表名 where id=1 and 1=1
- 字符型注入:网页链接有类似的结构 http://xxx.com/users.php?name=admin 这种形式,注入点name为字符串,被称为字符型注入,可以用:select *** from 表名 where name='admin' and 1=1
- 搜索型注入:主要是指在数据搜索时没有过滤搜索参数,一般在链接地址中有 "keyword=“关键字”",注入点提交的是sql语句,select * from 表名 where 字段 like '%关键字%' and '%1%'='%1%'
按照效果来分类
- 基于布尔的盲注,根据页面返回判断条件真假注入
- 基于时间的盲注,既不能页面返回内容判断任何信息,用条件语句查看时间延时语句是否执行(页面返回时间是否增加)来判断
- 基于报错的盲注,即页面会返回错误信息,或者是把注入的语句执行结果返回到页面
- 联合查询注入:可以使用union的情况下注入
Less-1
正常页面:
含有数字型SQL语句的URL发送给服务器数据库,数据库查询结果并返回到页面,这就形成了一次SQL注入攻击
后面所有的数据库表可以使用sqlmap工具全部爆表出来
不利用工具猜测表中有多少条信息?
随机选择数字注入,那就id=15吧!
数据库没有返回结果,证明表中没有第15条信息了,慢慢缩小数字
id=14出现了信息,证明这个表中有14条用户信息!
还有字符型注入没试,刚学 :yinxian: 慢慢来
Less-2
Comments | NOTHING