[安洵杯 2019]easy_serialize_php
发布日期:2021-05-15 06:55:04 浏览次数:15 分类:精选文章

本文共 476 字,大约阅读时间需要 1 分钟。

首先,分析源码可知,当$f=$func时,$_SESSION["user"]="guest"并调用extract($_POST)。源码利用trim($str)移除了空格,确保用户输入的path有效性。关键在于filter`函数,即通过正则表达式preg_replace移除特定字符,以规避反序列化攻击。

选择$f=show_image后,调用filter函数对session的 Img进行处理。构造一个 malformed session,例如要求插入一个经过Base64编码的字符串,结合_SESSION[flag],然后使用sha1加密。

最终,通过反向工程代码逻辑,可知当构造正确的session数据后,尤其是注入特定的payload,可使用arsorted函数对session数据进行序列化分析,进而提取得到flag。初次尝试注入常见的 Josh物攻击vec,发现其被过滤;再次尝试去除AllSlashes,发现反序列化成功,获取到了flag。

最终,通过session数据注入,结合正确的编码方式,可成功触发反序列化漏洞,提取出目标flag。

上一篇:MD5绕过
下一篇:[ZJCTF 2019]NiZhuanSiWei

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月23日 06时29分37秒