在逆向过程中经常会遇到反调试,如下段代码:
class="code_img_closed" src="/Upload/Images/2017070505/0015B68B3C38AA5B.gif" alt="">0008bd8e movs r1, #0xa ; argument #2 for method imp___symbolstub1__dlopen 0008bd90 blx imp___symbolstub1__dlopen 0008bd94 movw r1, #0xe103 0008bd98 mov r6, r0 0008bd9a movt r1, #0x10 ; 0x10e103 (sub_10dfd8 + 0x12b) 0008bd9e add r1, pc ; "ptrace", argument #2 for method imp___symbolstub1__dlsym 0008bda0 blx imp___symbolstub1__dlsym 0008bda4 mov r4, r0 0008bda6 movs r0, #0x1f 0008bda8 movs r1, #0x0 0008bdaa movs r2, #0x0 0008bdac movs r3, #0x0 0008bdae blx r4logs_code_collapse">View Code
找到动态连接库中的 ptrace函数地址,再调用ptrace函数,反调试时,只要修改第一个参数即可,随便改一个值。
可以参考这篇文章:http://www.cnblogs.com/catch/p/3476280.html
后续会再完善