在使用IDA pro静态分析32位和64位程序时候,起始地址都是标准的从00400000、0000000140000000开始,这种基地址也是标准的地址。
然而在使用x64dbg的动态调试的时候,它的起始地址竟然不是从0x00400000或0x0000000140000000开始的。这对于使用IDA静态分析然后根据x64dbg动态调试的方式来说,是一个不小的困难。
因为IDA pro我分析好了程序结构,x64dbg中直接到这地方的反汇编代码,使用00000001400010FB作为地址是显然不行的。

我们看到下图在x64dbg中的地址跳转,是无效的地址,而且在x64dbg中地址0000000077627981开始的。

解决方式
这里以winrar的运行方式为例子进行讲解,首先IDA pro 64位打开winrar,然后找到main函数的地方(IDA pro找到main函数的方式很简单,在左边栏能够明显的发现main函数)。

那么根据IDA能够对其进行静态分析,并且找到了main函数程序入口的位置,我们还需要使用x64dbg进行调试,同理调试的时候也需要找到main函数的位置。
我采用的是地址法,在IDA中main函数的第一条汇编是.text:00000001400E9E58 push rdi,其地址也就是0x00000001400E9E5

最低0.47元/天 解锁文章
2430

被折叠的 条评论
为什么被折叠?



