BugkuCTF flag.php(反序列化)

Posted ctrl_TT豆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BugkuCTF flag.php(反序列化)相关的知识,希望对你有一定的参考价值。

 

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

 

发现报出了源码

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

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

 

 

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

 

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

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

 

 最后输出flag。

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

 

以上是关于BugkuCTF flag.php(反序列化)的主要内容,如果未能解决你的问题,请参考以下文章

2:如何反序迭代一个序列(字符串,列表,元组)

测试Hessian反序反序列化 客户端少字段和多字段时能否成功

BugkuCTF

反序列化刷题

C#反序列化Json字符串

PHP渗透测试题目笔记