阅读:1412回复:1
驱动中有一行代码在IDA中与系统加载之后为什么会是这么不同呢?
一个驱动里面一行代码,本来是ProbeForRead(0x800000,0x1000,1).
这行代码(不包括参数)在编译生成的机器码为FF 15 2C 32 01 00 在IDA里面看到的是这样: push 1 push 1000 push 800000 call ds:ProbeForRead 但,驱动被系统加载之后,却是这样: push 1 push 1000 push 800000 call [0001322C] ,看起来像是重定位的问题,请明白的帮忙指点一下好吗?谢谢 |
|
沙发#
发布于:2009-02-07 00:40
它被加载后,正常应该是call [驱动映像基址+0000322C],而[驱动映像基址+0000322C]处刚好就是ProbeForRead输入项的入口地址。
请问,这里为什么没有进行这个重定位操作呢? |
|