CTF php 序列化,BugkuCTF flag.php(反序列化)

b45ae291db32b69b6e8c082239b6200f.png

进去后是个登录页面,但是login根本不会跳转,看源码也没提示,但是这道题给了一个提示:hint,那么盲猜应该是一个get参数,因为post不能跳转,那么get总有内容吧,跟上hint参数,随便赋一个值。

06105b8efd147b1d8db4e27b0be15650.png

发现报出了源码

审计一波发现只要cookie的值等于$key变量的序列化字符就能输出flag。

那么发现之前没有给$key定义赋值,但是最下面出现了,我们先在本机上查看这种情况下的$key变量的序列化值

f98d3f4855255cc6695a9565ec09d9e0.png

发现这种情况下的序列化值是这样的,那么我们直接不定义$key变量,也不赋值,看看

851b183c77d18f6ab70f4c28a13e2a8f.png

同样也是这个:s:0:"";  上面定义了cookie的参数为ISecer,那么直接cookie的值应该为:ISecer:s:0:"";

在火狐的hackbar里面传上这个cookie值就行了,但是最后“;”在cookie中是不会上传到服务器的,因此这里“;”要用url编码一下,即:ISecer:s:0:""%3b

56b4074ceca85aa3b5958d15d68071fe.png

最后输出flag。

这道题主要考的是反序列化unserialize()函数,就是将序列化的字符转换为正常字符串,他对应的序列化函数是serialize(),将字符串序列化。

BugkuCTF flag.php(反序列化)

标签:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值