(1)使用jadx对apk进行编译(也可以用apktool工具)。
(2)找到mainactivity进行代码的查看。
(3)smail代码不懂,只能一行一行的自己进行查找。但是APK改之理可以直接把smail直接变成java代码,不知道这样做对不对,但是现阶段是非常省事的一个功能。
image.png(4)对smail代码进行分析
1.check函数
image.png2.数据类型,表示String
image.png3.指定了方法内局部变量的个数,这里指定了两个变量
image.png4.其中p1就是一个寄存器,这里存储的是”name”,.param的意思是指定了寄存器的参数
image.png5. .prologue 表示方法中代码开始的地方。
image.png6. const/4 v1,0x0的意思就是把0赋值给v1,将数值符号扩展为32
image.png7..line 28 源文件中java指定行数。
image.png8.const-string v0,”hfdcxy”,把字符串赋值给v0
image.png9.invoke-virtual{p1,v0} 调用public或protect修饰的方法。
image.png10.这句代码的意思就是比对两个期存器内的内容,然后结果是一个booleam类型的值。
image.png11.将上一个invoke指令的值赋给v0
image.png12.if-eqz v0,:cond_0,相当于if(a==0)或者if(!a)
image.png13.invoke-static 调用实例的静态方法
image.png(5)对登录进行绕过
1.第一种方法,更改判断条件
image.png在圈圈中的位置把eqz改成nez即可
进行测试。
image.png2.第二种方法,把相应代码删掉
image.png3.第三种发放,使用goto来进行跳转
image.png本文转自https://blog.csdn.net/qq_36869808/article/details/78709531
网友评论