-
-
[求助]一个关于LoadLibraryA函数地址的问题
-
-
[求助]一个关于LoadLibraryA函数地址的问题
最近编写一个Down&Exec的shellcode的时候遇到LoadLibraryA的问题,一直想不明白。
是这样的,从PEB得到kernel32.dll的地址,通过Hash值的方法查找到了LoadLibraryA的地址,然后加载urlmon.dll得到URLDownloadToFile的地址,但是一直没有成功。
通过跟踪,发现得到的LoadLibraryA的地址是0x7C882F9C,在汇编代码LoadLibrary("urlmon.dll")的地方失败了。0x7C882F9C跟进去一看发现下面这段代码,在0x7C882FA1的jmp F5491AF0的地方跳到了空的内存空间上。
7C882F9C > push ebp
7C882F9D mov ebp, esp
7C882F9F nop
7C882FA0 pop ebp
7C882FA1 jmp F5491AF0
7C882FA6 nop
7C882FA7 nop
7C882FA8 nop
不过用IDA反汇编kernel32.dll,却发现LoadLibraryA的地址是0x7C801D77,把这个地址手动在调试shellcode的地方填上就能成功。
不知道为什么这两个地址不一样,一直没有想明白。望达人解答!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)