BESINAPERICULOASA/moneybot-2018-preservation

GitHub: BESINAPERICULOASA/moneybot-2018-preservation

该项目对2018年CS:GO作弊程序的内存dump进行静态去混淆和逆向分析,提供可重复的解析工具与结构化分析笔记供安全研究使用。

Stars: 0 | Forks: 0

# moneybot 2018 保存项目 针对 2018 年时期提取的 CS:GO 作弊程序谱系的静态逆向工程笔记和去混淆工具。本代码库是一个保存和分析项目:它记录了一个早已逝去的场景产物,重构了其混淆机制的工作原理,并提供了足够的机器可读元数据,以便未来的研究人员能够在不重新分发可用程序包的情况下检查该 dump。 ## 包含的内容 | 路径 | 用途 | |---|---| | `scripts/deobfuscate_moneybot.py` | 用于转储地址 call/jmp 混淆的可移植 Python 解析器。 | | `docs/findings.md` | 主要保存文档:loader 布局、WOW64 问题、OEP 链、云端笔记、崩溃假设。 | | `docs/reports/deobfuscation-report.md` | 生成的去混淆摘要。 | | `data/resolved_sites.csv` | 已解析的混淆 call/jmp 表条目。 | | `data/network_sites.csv` | 从 `resolved_sites.csv` 提取的直接与 Winsock 相关的位置。 | | `data/ret_trampolines.csv` | 用于在外部工具中过滤的广泛内部 ret-trampoline 扫描结果。 | | `tools/ida/moneybot_deobf_ida.py` | 为已解析位置和有上限的 ret-trampoline 交叉引用生成的 IDAPython 注释脚本。 | | `moneybot/obfuscated_*.h` | 解析器使用的历史混淆位置表。 | | `moneybot/modules/*.h` | 转储的 Windows 导出地址元数据,用作解析器 oracle。 | ## 当前去混淆状态 解析器目前已确认: - `1910/1910` 个混淆 call 位置已解析 - `184/184` 个混淆 jmp 位置已解析 - `105533/105543` 个广泛的内部 ret-trampoline 候选已解析 - `12` 个直接的 Winsock 导入位置已识别 这足以用于围绕导入、网络/文件/内存 API 使用以及补丁规划进行 AI 辅助和人工辅助的漏洞分类。这并不是完整的源代码恢复。您可以将其视为一个注释/反编译器支持层:它将算术 trampoline 转换为具体的调用目标,从而使反汇编器变得可读。 ## 直接网络暴露面 直接的 Winsock 暴露面目前解析为: - `hack22`: `WSAStartup`、`socket`、`htons`、`inet_pton`、`connect` - `hack81`: `send`、`recv` - `hack114`: `recv` 有关确切的地址和转换范围,请参见 `data/network_sites.csv`。 ## 运行解析器 该脚本需要 Python 3.11+,且仅使用标准库。 ``` python scripts\deobfuscate_moneybot.py --dump-dir C:\moneybot ``` dump 目录不包含在内。如果您拥有合法的存档副本,它应包含类似以下命名的文件: ``` hack249_0x7fff0000_0x1a76000.bin ``` 输出默认写入 `deobfuscated/` 目录。 ## 公开发行边界 本代码库保存的是分析和元数据,而不是可用的作弊程序包。 请不要提交包含以下内容的 PR: - 编译后的 `.dll`、`.exe`、`.pdb`、`.lib`、`.obj` 或构建输出 - dump 归档或原始内存区域的 `.bin` 文件 - 注入工具 - Steam/游戏二进制文件或打过补丁的游戏可执行文件 - 密钥、token、私有 endpoint 或账户资料 - 在实际游戏环境中部署此程序的说明 ## 许可证 原始的第三方代码和历史产物名称的版权仍归其各自的作者所有。本代码库中的新文档和 Python 工具采用 `LICENSE` 中的 MIT 许可证提供。
标签:DAST, IDAPython, Python, 云安全监控, 云资产清单, 去混淆, 恶意软件分析, 无后门, 逆向工程, 静态分析