【拓展训练】 – 11:偷天换日 (Stolen Bytes / OEP Obfuscation)

一、题目背景

这是商业壳极其恶心且著名的技术:Stolen Bytes(偷取字节)。壳不仅会对代码进行加密,还会把关键函数(或程序入口点 OEP)的头几条汇编指令剪切走,放到申请的一块随机内存中执行,导致脱壳后程序根本无法运行,必须人工修复。

  • 难度: ⭐⭐⭐⭐⭐(强对抗)

  • 适合人群: 进入手动脱壳、代码修复阶段的高阶学员。

  • 训练重点:

    • 识别丢失的函数头部(如标准的 push ebp; mov ebp, esp 被替换)。

    • 在动态内存中找回被偷窃的汇编指令。

    • 理解函数指针的绝对跳转与代码拼接。

二、程序说明

  • 平台: Win32 x86

  • 类型: 控制台程序

  • 是否加壳: 无壳(模拟 Stolen Bytes)

  • 目标: 搞清混淆后的执行流,找到密码运算的第一步,解出密码(长度是4位)。

三、解题提示

  • 代码并没有顺畅地进入常规校验流程,而是跳去了一块 VirtualAlloc 出来的无名内存。

  • 在那块无名内存里,执行了几条指令后,又跳回了正常代码段的中间位置。

  • 跟进去,用 x32dbg 把那几条被偷走的指令重新拼接到你的分析逻辑里。

下载

通过网盘分享的文件:vmp11.zip
链接: https://pan.baidu.com/s/1fe0jRYM9Bk9n3oSa0GjhvQ?pwd=tj48 提取码: tj48

© 版权声明
THE END
喜欢就支持一下吧
点赞15赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容