我请一位老师教我逆向了某程序,因为我需要获取这个程序中的某一个解密密码。现在我已经能够在x32dbg中,发现该密码在Call XXXX后的返回值EAX中,但这个EAX的内存地址在别人电脑上运行时是不固定的,但我想直接通过读内存的方式,来获取这个地址(不想通过拦截函数的方式),并且那位老师也告诉我了,可以通过读取固定的一个内存地址值,然后通过多次偏移来得到这个解密密码,比如老师已经告诉我了,可以读取0x12345678处的值,然后再读取0x12345678指向的值,再读取指向值+8所指向的值就是解密密码(也就是前面Call XXXX后的返回值eax),请问我该怎么找到那个固定内存值0x12345678?因为我逆向的那个程序也会不断更新,更新后的固定地址值就不是0x12345678呢?所以我想请问一下怎么找到那个0x12345678呢?
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
KongKong20 算出固定的偏移就行 全局变量0x12345678 = 变化的开始地址+固定的偏移 变化的开始地址=GetModule(L"模块"); 固定的偏移=0x12345678 - G ...