原生安卓开发App的框架Frida常用关键代码定位

网站建设4年前发布
168 0 0

大家好,我是码农星期八!本教程只用于学习探讨,不允许任何人使用技术进行违法操作,阅读教程即表示同意!,有时候可能会对APP进行字符串加密等操作,这样的话你的变量名等一些都被混淆了,看代码就可能无从下手。,不管没关系,像系统级别的东西,Toast了等函数,是不能混淆的,所以可以根据蛛丝马迹,终究找到破解的点。,打印堆栈的本质就是抛异常,他的结果是从下往上看的!,2023030612075119af56478b37feb43c8185543d8b2a0eace96b651,hashMap,,那就很常用了,懂的都懂,但是一定要做好筛选,要不然app容易崩溃!,Array似乎也很常用;,这个方法通常是安卓判断输入框是否为空必经的方法!,这个方法似乎也挺多,去掉开头和结尾的空格,防止脏数据;,这个应该就多了,但是这个一般在加密的上层,可以考虑使用。,排序方法,频率还凑合;,一般在转成json时用的听过的,可以考虑;,这个就很多了,基本上每个app都有,但是hook这个位置又偏加密下层,因为肯定是处理完才弹窗;,但是可以考虑不输入账号密码直接提交,这样位置大概在加密的上层,可以顺着往下走;,base64就很多了吧,除了消息摘要算法其他最后的形式都是base64格式,很有必要。,这种方式hook代码,需要frida帮助我们启动app。,所以本次启动的命令为;,因为可能一开始就绑定了很多控件,所以一开始就要开始hook。,控件id可以通过<SDK目录>\tools\bin下的uiautomatorviewer.bat来进行查看;,20230306120805f5ae12602a4194e7b2d76819f8cb65036a24ec624,2023030612080644bdf29611d9d3ffdc823027220da7dd67441b600,所以这个登录按钮的id就是btn_login;,在嘟嘟牛这个app中,最后使用的是DES算法,并且base64结果展示加密的内容。,2023030612080616862e692c37e0ecdab0660a7fae29a18daf69866,所以就hook一下base64试试;,20230306120753692601274aea86b34b37362c137617a812688e880,所以如果说,你如果看结果像是base或者md5或者hex等,直接就使用这些常用的hook代码试一下,并且抛出堆栈。,就可以很好分析代码了。,虽然写的是关键代码定位,其实只不过是常用的代码罢了,上面这些使用在逆向app时总结的hook代码。,当然,实际肯定不止这么少,根据需求来,经验越多,轮子就越多。,人生没有白走的路,加油!

© 版权声明

相关文章