📌 题目信息
| 项目 | 内容 |
|---|---|
| 题目名称 | 损坏的压缩包(附件名为「玫坏的压缩包.zip」,应为错别字) |
| 题目来源 | 青少年CTF S1·2026 公益赛 |
| 题目类型 | Misc |
| 子分类 | 压缩包结构修复 / Office 文件隐写 |
| 考点 | ZIP 文件头篡改、压缩包结构修复、docx(xml) 隐写 |
| 难度 | ⭐ |
| 最终 Flag | flag{w3_w111_411_60_fur7h3r_4nd_fur7h3r} |

🛠️ 使用工具
- xxd / file:查看文件头与文件类型
- binwalk / foremost:自动按文件签名提取(方法二,更简便)
📝 解题思路
附件是一个"看着能打开、但一解压就报错"的 ZIP,属于压缩包结构修复题型。整体分两步:
- 修复损坏的 ZIP:文件头部被篡改——开头多了一段伪造前缀,且内部偏移错位,导致常规解压失败。修复后得到
flag.docx; - 从 Word 文档里找 Flag:flag 藏在其中(用了隐藏文字 + 白色字体遮住)。
第 1 步:分析损坏的压缩包
用 010editor 查看附件:

关键发现:
- 文件开头不是标准的
50 4B 03 04,而是00 00 00 00 0a 00 00 00 ...一段伪造前缀(约 47 字节,里面有个flag.docx文件名); - 真正的 ZIP 本地文件头
PK\x03\x04出现在偏移 0x2F(47);
第 2 步:提取docx文档
可以尝试修复该zip,但这里可以直接用 binwalk / foremost 按文件签名自动提取,能直接抠出 flag.docx,无需手动修复头结构。
foremost 玫坏的压缩包.zip


第 3 步:从 Word 文档里提取 Flag

✅ 最终 Flag
flag{w3_w111_411_60_fur7h3r_4nd_fur7h3r}
【Misc】玫坏的压缩包&spm=1001.2101.3001.5002&articleId=163879076&d=1&t=3&u=fd65b76c1c374fb1bae94bbbef085f05)
1033

被折叠的 条评论
为什么被折叠?



