1、网上遇到一道安卓的crackme题目,是字典查询的crackme题目,就是你要将用户的输入转化成汉字,然后对照汉字表,找到相应的下标,构成flag
2、暴力破解,直接nop掉关键跳转(跳到false的,中间跳过了congratulation),再保存即可
3、修改汇编指令je到想要的地址那里jmp,保存,一般是在字符串那里往上找call函数(一般为第二个或者第三个),为关键调用,找到关键跳转,修改(简单题),je前面一般有cmp(比较两者是否相同)。
5、ESP定理脱壳(ESP在OD的寄存器中,我们只要在命令行下ESP的硬件访问断点,就会一下来到程序的OEP了!),另一种方法是在pushad和popad中存放的是代码,然后在popad后找到那个jmp函数,在此处下断点。
6、关于破解注册的题型:
1、首先是通过中文索引,找到关键字,然后向上找到关键跳转一般是je,再往上找找到关键call,正常来说,是call(处理输入的数据)、test(可能有与或或者异或判断)、相同则je。所以在call中执行命令:mov eax,0x1(恒为真1),再retn,两步的反汇编就可以了。
2、获取注册码题型,首先字符串索引,然后往上找关键je和关键cal,在关键calll下断点,F7进去,F8单步走程序,在栈中查找注册码。
3、首先是通过中文索引,找到关键字,然后向上找到关键跳转一般是je,再往上找找到关键call,在关键je那里下断点API断点,readfile禁止,然后运行,便可以在堆栈中看到注册码的信息。
4、依赖于万能断点!载入OD→F9运行→查看→User32模块→查找2进制字符串→F3 A5 8B C8 83 E1 03 F3 A4 E8〈万能断点特征码〉→下断,然后执行,F8单步过,直到堆栈出现了注册码。
网友评论