题目下载链接:http://download.csdn.net/detail/darmao/9875772
下载题目,安装,直接闪退,扔到jeb看看
这里新开了一个线程调用了finish方法,不管什么条件下调用的,我们禁止这个方法运行,反编译删除对应的smali即可
然后来看看逻辑:
使用encrypt对输入的字符串进行了验证,通过查看,这个encrypt函数在native层,扔进ida,将ida识别的函数类型错误的了进行修复:
**经过分析,v18是我们输入的字符串,
v12是用来比较的正确的字符串,那么久不用看复杂的加密算法了,直接动态调试就能看到正确的字符串:**
给R2寄存器赋值以后,调到R2地址处:
得到正确的字符串,输入,通过!