Low 等级
1.手工方法
注入poc为:1’ or ‘1’=’1
确定查询字段数
确定回显点
数据库名为dvwa
表名为guestbook,users
2.使用sqlmap进行注入
注入类型
数据库名
表名
Medium 等级
请求方式变为post
确定注入poc
报错
查看源码,发现使用mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。
(受影响字符:\x00,\n,\r,\,’,",\x1a)
1.对dvwa进行hex编码,获得表名
2.使用(select database())代替’dvwa’
3.使用sqlmap获取表名
High 等级
1.手工方法
确定注入poc
2.使用sqlmap
Impossible 等级
检测了id数据类型,使用了预编译绑定id变量,并参数化SQL语句,
有效防止了SQL注入
同时只有查询返回结果数量是1时才显示结果,有效防范了脱库