[CTF]天网管理系统

PHP反序列化漏洞攻防
本文详细解析了在一个Web应用中利用PHP反序列化漏洞的过程。通过分析源码,发现username参数的MD5值特性,进而利用此特性构造特定的序列化数据,最终成功获取系统flag。

类型:web
网址:http://www.shiyanbar.com/ctf/1810
攻击:反序列化unserialize
一句话总结:
php反序列化

Writeup:

查看源码发现代码<!-- $test=$_GET[‘username’]; $test=md5($test); if($test==‘0’) -->
判断出username的md5值是0e开头的字符串。username=240610708 ,password=admin,点击“登录系统”得到新地址/user.php?fame=hjkleffifer

访问/user.php?fame=hjkleffifer,得到提示

“$unserialize_str = $_POST[‘password’]; $data_unserialize =
unserialize($unserialize_str); if($data_unserialize[‘user’] == ‘???’
&& $data_unserialize[‘pass’]==’???’) { print_r($flag); }
伟大的科学家php方言道:成也布尔,败也布尔。 回去吧骚年”

通过提示可以判断password是一个序列化的值a:2:{s:4:“user”;s:3:"???";s:4:“pass”;s:3:"???";}
通过提示“伟大的科学家php方言道:成也布尔,败也布尔。 回去吧骚年”判断user,pass的值是Bool类型,所以推断password=a:2:{s:4:“user”;b:1;s:4:“pass”;b:1;}

返回答题页面,输入
username=admin
password=a:2:{s:4:“user”;b:1;s:4:“pass”;b:1;}
点击“登录系统”得到flag

Flag

ctf{dwduwkhduw5465}

CTF(Capture The Flag)文件管理系统CTF竞赛中扮演着重要角色,以下从介绍、功能、搭建方法等方面进行说明: ### 介绍 CTF文件管理系统主要用于CTF竞赛过程中对各类文件的集中管理,这些文件包括题目描述、附件、脚本工具等。它为竞赛组织者和参与者提供了一个便捷、高效的文件存储和共享平台,确保竞赛的顺利进行。 ### 功能 - **文件上传与下载**:支持竞赛组织者上传题目相关的文件,如题目描述文档、附件等,同时允许参赛选手下载这些文件。例如在2024年网安最新CTF文件上传下载系统靶场中,就涉及到文件的上传下载操作,选手通过下载文件获取题目信息,利用文件中的内容进行解题 [^4]。 - **权限管理**:对不同用户设置不同的文件访问权限。竞赛组织者拥有最高权限,可以上传、修改和删除文件;参赛选手只能访问和下载允许的文件,保证文件的安全性和竞赛的公平性。 - **分类管理**:将文件按照题目类型、难度级别等进行分类管理,方便组织者和选手快速查找所需文件。 ### 搭建方法 不同的CTF平台有不同的搭建方式,以CTFd为例: 1. **基本安装与配置**:第一次访问环境需要设置管理员的账户、邮箱、密码等信息。设置完成后,即可登录后台查看各项配置。至此CTFd的基本安装与配置就完成了,之后可按照官方的指导说明进行学习使用,具体链接为https://github.com/CTFd/CTFd [^1]。 2. **访问和配置**:访问指定的ip和端口(如htto://127.0.0.1:8302 ,需改成自己的ip和端口号),成功显示页面后,进入搭建好的CTFd中Admin->Challenges,添加新的挑战,类型选standard,填写好题目名字、内容和分值等 [^3]。 另外,像GZCTF也是一款开源免费、简单易用的CTF平台,适合新手举办小规模比赛,可在Ubuntu系统上按照从环境准备到平台启动的步骤进行搭建,该教程能助用户快速搭建属于自己的CTF平台 [^2]。 ```python # 示例代码,模拟CTF文件管理系统的文件上传功能 class CTFFileManagementSystem: def __init__(self): self.files = [] def upload_file(self, file): self.files.append(file) print(f"文件 {file} 上传成功") # 创建CTF文件管理系统实例 ctf_system = CTFFileManagementSystem() # 上传文件 ctf_system.upload_file("example_file.txt") ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值