我试图在64位ARM Android设备上连接libssl.so中提供的SSL_do_handshake函数,直到现在我有:
我正在做的是将指令保存在libssl.so的绝对地址(用于恢复)并用我的指令覆盖它们(用于跳转):
详细说明我在内存中保存的是49000058 20011fd6 90b8a5757f如果我在覆盖后查看内存我找到了我的指令和地址。如果我尝试执行它并调用SSL_do_hanshake,我会在跳转之前崩溃。 我使用thumb32使用相同的方法但不同的指令为ARMv7做了同样的事情:
在内存dff800f0 0d246ef3中它有效。 我知道我做错了什么?