MoriartyPuth-Labs/Crackmes-WriteUp

GitHub: MoriartyPuth-Labs/Crackmes-WriteUp

收集并整理了 crackmes.one 上多个逆向工程挑战的完整解题 Writeup,包含 PoC 代码、复现步骤和工具使用说明。

Stars: 1 | Forks: 0

# Crackmes Writeups 包含概念验证代码、复现步骤和工具说明的完整 Writeup。 ## 挑战解决方案 | 挑战名称 | 类别 | Flag / 解决方案 | | :--- | :--- | :--- | | [Bob的赌博 Crackme](labs/Bobs-Gambling-Lab) | Windows PE / Integer Overflow | `dzctf(bob_is_free_1337)` | | [轮盘模拟器](labs/Roullete-Simulator-Lab) | Java / PRNG Prediction | PRNG Seed Prediction & Wallet Overflow | | [ChocolateFactory](labs/Willy-Wonka-Chocolate-Factory-Lab) | Windows PE / Constraint Solving | `Ch0c-M1lk-CrMe-!(L>` | | [MalwareTech VM1](labs/MalwareTech-VM1-Lab) | Custom VM / Static Analysis | `FLAG{VIRTUAL-MACHINE-UNDERSTANDING}` | | [CryMore](labs/CryMore-Lab) | Network Spoofing / Killswitch Bypass | Local TCP Spoofing (`HTTP/1.1 200 OK`) | | [炼金术士之锁](labs/The-Alchemist-Lock-Lab) | Packer Unpacking / Binary Patching | OEP Finding & Jump Patch (`FLAG_R3v3rs3d`) | | [Catgirl Crackme](labs/Catgirl.crack-Lab) | .NET Assembly / IL Disassembly | `Mint` (Decoy Bypass) | 每个文件夹都包含一份独立的 README.md Writeup,以及一个可运行的解题脚本或详细步骤。 ``` labs/ ├── Bobs-Gambling-Lab/ │ ├── README.md │ └── bob_gambling_writeup.txt ├── Roullete-Simulator-Lab/ │ ├── README.md │ ├── crackme_helper.py │ └── solution.txt ├── Willy-Wonka-Chocolate-Factory-Lab/ │ ├── README.md │ └── ChocolateFactory_writeup.txt ├── MalwareTech-VM1-Lab/ │ ├── README.md │ └── solver.py ├── CryMore-Lab/ │ └── README.md ├── The-Alchemist-Lock-Lab/ │ └── README.md └── Catgirl.crack-Lab/ └── README.md ``` ## 使用的工具 - 反汇编 / 反编译:IDA Pro、Ghidra、monodis (Mono IL Disassembler)、Detect-It-Easy、x64dbg (配合 Scylla) - Python 3:模拟器与解题脚本、keygen、自定义 PRNG 预测模拟器 - 平台:Windows (x86/x64) 和 Linux/Mono runtime - 网络工具:Netcat (本地 TCP 欺骗) ## 经验 / 总结 - **Bob的赌博 Crackme** — Windows 控制台二进制程序;通过滥用投注检查内部的 integer overflow / underflow 逻辑解决。 - **轮盘模拟器** — Java 类二进制程序;通过从约 20 次投注中暴力破解 16 位的 PRNG seed 来预测输赢,并使钱包余额溢出。 - **ChocolateFactory** — 64 位 Windows 控制台二进制程序;通过重建多阶段验证算法并进行 constraint solving 解决。 - **MalwareTech VM1** — 8 位自定义 Virtual Machine 分析;通过提取原始内存 bytecode (`ram.bin`) 并编写 Python VM 模拟器来逆向 XOR key 逻辑解决。 - **CryMore** — 基于 TCP 的 killswitch 分析;通过使用 Netcat 建立本地 TCP socket 来伪造预期的响应 (`200 OK`) 并中和相应的逻辑路径解决。 - **炼金术士之锁** — UPX/自定义 packer 分析;通过在 x64dbg 中进行动态脱壳,利用 Scylla dump 出 OEP,并对验证检查进行 binary patching 解决。 - **Catgirl Crackme** — .NET assembly 逆向;通过使用 Mono 的 `monodis` 工具进行静态 IL disassembly 来识别正确的验证字符串,同时绕过诱饵字符串解决。
## 👤 作者 **MoriartyPuth** — Offensive Security ![GitHub](https://img.shields.io/badge/GitHub-MoriartyPuth-181717?logo=github)
标签:DNS 反向解析, Go语言工具, Python, Windows PE, 二进制分析, 云安全运维, 云资产清单, 子域名变形, 无后门, 逆向工程