视频地址:https://www.youtube.com/watch?v=bLxhiH-Rr6s&list=PLwDQt7s1o9J6vKkkYfcCqBCs0d4gZ3yWB&index=10
今天我们来测试一下这个
源代码长下面这个样子:
mysql常用语句:
show tables;
显示用户表show databases;
显示所有的数据库desc tablename;
显示表的结构show create table tablenameG
显示表的详细结构
下面这个sql语句select * from users where user=user;
加引号表示这个是一个字符串,不加的话表示是一个字段名
先来第一个最简单的(我们这里查询一个用户):
但是如果我们只是加一个小小的改动(所有的信息都查出来了)
然后我们只需要对那个靶机输入下面这样的代码(就把所有的用户都查出来了)
下面我们来实现查另外一个表
这里我们通过union语句把两个不相干的表的用户名和密码全部查出来了。。。
注意这个union语句两个语句查询的列数必须是一样的(但是我们不知道起那么的sql语句的时候可以通过输入一个或者多个数字来实现)
或者我们不想要前面的语句,我们只要后面那个表的内容
加个where 1=2 前面的就不会显示了
下面我们来介绍一个非常重要的表
这个表里面存储了整个数据库中所有的信息(也叫数据库字典)
我们查询数据库的信息(里面存储了很多表的信息)
比如我们顺便拿一个(前面那个是数据库的名字,后面那个是表的名字)
我们把所有的表都查询一下并分组
select TABLE_SCHEMA,GROUP_CONCAT(TABLE_NAME) from information_schema.TABLES GROUP BY TABLE_SCHEMAG;
我们还有下面一个表(这个表不仅存了数据库的名字,还存了表名以及列的名字)
比如下面这个查询表的名字