《第2期-04 PUSH法详解》学习笔记

本集视频主题

当窗口代码被VM了,里面找不到窗口ID怎么办?

原理

在窗口代码里面,会push一大堆东西,其中就有窗口ID


《第2期-04 PUSH法详解》学习笔记_第1张图片
窗口代码

而push完后紧接着会call到FF 25的401221


《第2期-04 PUSH法详解》学习笔记_第2张图片
FF 25

那么,即使被VM掉了,还会push的。那么可以在FF 25处下断点,当断下来后,在堆栈里面找push进去的窗口ID。

给程序加VM

  1. 打开VMProtect后载入程序,设置——“专家模式”


    《第2期-04 PUSH法详解》学习笔记_第3张图片
    1.png
  2. 右键点击程序名称,选择“新建”——“新建流程”


    《第2期-04 PUSH法详解》学习笔记_第4张图片
    2.png
  3. 把需要VM代码的起始地址填入进去


    《第2期-04 PUSH法详解》学习笔记_第5张图片
    3.png
  4. 点击“选项”,选择“最快速度”


    《第2期-04 PUSH法详解》学习笔记_第6张图片
    4.png
  5. 最后编译运行

载入OD破解

  1. 把加了VM后的程序载入OD并运行起来,来到被VM的代码


    《第2期-04 PUSH法详解》学习笔记_第7张图片
    被VM的代码
  2. 二进制查找FF 25,在所有FF 25处下断点


    《第2期-04 PUSH法详解》学习笔记_第8张图片
    对FF 25下断点
  3. 当断下来后,从堆栈中


    《第2期-04 PUSH法详解》学习笔记_第9张图片
    找窗口ID

你可能感兴趣的:(《第2期-04 PUSH法详解》学习笔记)