朱朱你堕落了 发表于 2023-12-25 08:25

请使用第三种方案到达OEP

以论坛早期脱壳培训中的第八九课作业程序为例,
如何到达OEP,不用修复IAT,只要到达OEP即可。
不要使用二次内存镜像法和最后一次异常法,
请提供第三种到达OEP的另类优秀方案。

例子:https://cowtransfer.com/s/195164e1c3b24c

董督秀 发表于 2023-12-25 08:25

朱朱你堕落了 发表于 2024-1-10 11:21
花几分钟来个动画演示。

https://f.wss.ink/f/d479zdkkogo

朱朱你堕落了 发表于 2024-1-10 09:14

OD运行,堆栈回溯,根据400000上方的返回值跟随往上翻就是OEP

这个是怎么操作的?@董督秀

董督秀 发表于 2024-1-10 10:28

朱朱你堕落了 发表于 2024-1-10 09:14
OD运行,堆栈回溯,根据400000上方的返回值跟随往上翻就是OEP

这个是怎么操作的?@董督秀
当时的回复是看错了,这是找oep的方法。
到达的oep的方法类似内存镜像法,就是.rsrc下f2断点,运行,oep下硬件执行断点,运行,之后就中断在oep了。

朱朱你堕落了 发表于 2024-1-10 10:33

董督秀 发表于 2024-1-10 10:28
当时的回复是看错了,这是找oep的方法。
到达的oep的方法类似内存镜像法,就是.rsrc下f2断点,运行,oep ...

到达的oep的方法类似内存镜像法,就是.rsrc下f2断点,运行,oep下硬件执行断点,运行,之后就中断在oep了。

这里打错了吧?

董督秀 发表于 2024-1-10 11:13

朱朱你堕落了 发表于 2024-1-10 10:33
到达的oep的方法类似内存镜像法,就是.rsrc下f2断点,运行,oep下硬件执行断点,运行,之后就中断在oep了 ...

1. 定位oep地址的方法:OD运行,堆栈回溯,根据400000上方的返回值跟随往上翻就是OEP。
2. OD中断在oep的方法:到达的oep的方法类似内存镜像法,就是.rsrc下f2断点,运行,oep(因为你已经在第1步定位到oep地址了)下硬件执行断点,运行,之后就中断在oep了。

朱朱你堕落了 发表于 2024-1-10 11:21

董督秀 发表于 2024-1-10 11:13
1. 定位oep地址的方法:OD运行,堆栈回溯,根据400000上方的返回值跟随往上翻就是OEP。
2. OD中断在oep ...

花几分钟来个动画演示。:lol
页: [1]
查看完整版本: 请使用第三种方案到达OEP