吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1456|回复: 5
收起左侧

[Android 求助] 第一次逆向失败

  [复制链接]
jobs_steven 发表于 2023-7-26 16:53
最近在做一款APK的安全测试,测试过程中发现APK使用了加密壳,于是由回顾了一下坛主正己的教程尝试着突破一下自己的技能。
1、使用MT和NP查看,发现APK加了壳,并使用了V1+V2的签名;
2、jadx尝试反编译
image.png
从jadx反编译的结构上看并没有看出来做了加壳处理但是,进入类里面发现看不到源码,猜测是做了混淆,但是由于功力不够没猜出来混淆在哪儿做的。
3、尝试frIDA、Xposed
image.png
一运行就退出{:1_925:}
于是网上找了一些绕过的方法:
1、尝试了hook fgets 修改了tracerPid。
2、hook了 strstr,修改了返回值为0。
3、hook了 maps、task,修改了frida特征。
以上操作都不行,hook后依然显示 Process terminated
依然不行。
再次使用xposed尝试:这里参考了坛主正己的教程:https://www.52pojie.cn/thread-1748081-1-1.html
```java
XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                Context context = (Context) param.args[0];
                ClassLoader classLoader = context.getClassLoader();
                    //hook逻辑在这里面写
                    XposedHelpers.findAndHookMethod("com.yuanian.cloudlib.utils.RootCheck", classLoader, "isDeviceRooted",new XC_MethodHook() {
                    @Override
                    protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                        super.beforeHookedMethod(param);
//                        XposedBridge.log(param.args[0].toString());
//                        Log.d("aaaaaa",param.args[0].toString());
//                        param.args[0] = true;
//                        Log.d("aaaaaa",param.args[0].toString());
                    }
                    @Override
                    protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                        super.afterHookedMethod(param);
//                        XposedBridge.log(param.getResult().toString());
//                        Log.d("bbbbb",param.args[0].toString());
                    }
                });
                XposedHelpers.findAndHookMethod("com.blankj.utilcode.util.DeviceUtils", classLoader, "isDeviceRooted", new XC_MethodHook() {
                    @Override
                    protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                        super.beforeHookedMethod(param);
                    }
                    @Override
                    protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                        super.afterHookedMethod(param);
                    }
                });
            }
        });
```
结果发现也不行,而且还一堆的报错,分析了一下,可能还是由于有加固检测的原因。
image.png
4、总结
本次尝试逆向分析失败,主要由以下几点:
1、自身功力还是有待提高,期待坛主正己大佬的后续课程;
2、加固厂商的加固原理有待研究,知己知彼才能百战不殆;
3、由于平时时间比较紧,长时间接触,日久生疏了好多,Android知识还是得积累。
坛子中如果有比较好的思路,可以一起交流一下。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

stacia 发表于 2023-7-26 18:09
看不懂,但是给lz加油!

免费评分

参与人数 1吾爱币 -8 收起 理由
涛之雨 -8 看不懂可以加油,但是不要灌水!

查看全部评分

klxx1314520 发表于 2023-7-26 19:09
第一次,学逆向看不懂

免费评分

参与人数 1吾爱币 -1 收起 理由
涛之雨 -1 此为违规行为,请遵守论坛版规!

查看全部评分

919490656 发表于 2023-7-26 19:24
YanJiuKanKan 发表于 2023-7-26 23:01
先学脱壳吧,不脱壳,怎么会有代码呢?
 楼主| jobs_steven 发表于 2023-7-27 10:40
YanJiuKanKan 发表于 2023-7-26 23:01
先学脱壳吧,不脱壳,怎么会有代码呢?

主要是第一次搞,不太懂,脱壳的方法目前还不太熟悉。请大佬执教一二
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 14:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表