某萌新APP破解永久激活

查看 103|回复 9
作者:stwhome58   
前言
大家好,我是石头娃,一名Android逆向作者,今天给大家带来一篇Android软件某萌新逆向教程。


17314687456662.jpg (18.11 KB, 下载次数: 1)
下载附件
2024-11-13 15:43 上传

准备工具
  • Android Studio
  • jadx
  • lspatch
  • 某萌新APP

    教程开始
    [ol]

  • 抓激活码接口,发现http接口并直接返回字符串。尝试修改为【激活成功!】,居然直接通过验证。


    17314740449909.jpg (17.98 KB, 下载次数: 1)
    下载附件
    2024-11-13 15:43 上传

  • 找到hook的对应接口,使用lspatch修改返回数据。

  • 通过查找TextView的文本找到校验激活码的接口代码。
    private void textViewLog() {
    XposedHelpers.findAndHookMethod("android.widget.TextView", getApplicationClassLoader(), "setText", CharSequence.class,
            new XC_MethodHook() {
                @Override
                protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                    if (param.args != null && param.args.length > 0 && param.args[0] != null) {
                        String text = param.args[0].toString();
                        if (text.contains("激活码错误或冻结")) {
                            XposedBridge.log(text);
                            printStackTrace();
                        }
                    }
                }
            });
    }
    private void printStackTrace() {
    Throwable ex = new Throwable();
    StackTraceElement[] stackElements = ex.getStackTrace();
    for (int i = 0; i

  • 根据堆栈日志找到对应的代码


    17314736662380.jpg (49.12 KB, 下载次数: 1)
    下载附件
    2024-11-13 15:43 上传

  • 使用jadx反编译


    17314737634778.jpg (63.99 KB, 下载次数: 0)
    下载附件
    2024-11-13 15:43 上传

  • 使用lspatch修改接口返回值
    private void successHook() {
    XposedHelpers.findAndHookMethod("i.Api.100000007.100000006", getApplicationClassLoader(),
            "Result", String.class,
            new XC_MethodHook() {
                @Override
                protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                    if (param.args != null && param.args.length == 1 && param.args[0] != null) {
                        param.args[0] = "激活成功!";
                    }
                }
            });
    }

  • 成功进入,效果图


    17314783686311.jpg (37.75 KB, 下载次数: 0)
    下载附件
    2024-11-13 15:43 上传

  • 某萌新还需要单独安装下配置器(鸡肋,不清楚为嘛),分析后好像就新建了一个文件目录(支持.txt)。hook掉!
    private void newTargetFile() {
    try {
        // 在 SD 卡目录下创建一个名为 "支持.txt" 的目录
        File sdcard = Environment.getExternalStorageDirectory();
        File supportDir = new File(sdcard, targetFileName);
        if (!supportDir.exists()) {
            boolean dirCreated = supportDir.mkdirs();
            if (dirCreated) {
                XposedBridge.log("targetFile created");
            } else {
                XposedBridge.log("targetFile Failed to create directory");
            }
        } else {
            XposedBridge.log("targetFile Directory already exists");
        }
    } catch (Exception e) {
        XposedBridge.log(e);
    }
    }

  • 测试功能需要SD卡权限,需要开启一下!!!


    17314800064698.jpg (74.26 KB, 下载次数: 0)
    下载附件
    2024-11-13 15:43 上传

    [/ol]

    下载次数, 下载附件

  • zhurilinyu   

    看看,学习一下
    amwquhwqas128   

    先好好看看,再学习
    hoverss   

    看看怎么个事
    mostima112   

    准备入坑,学习一下
    lingfeill   

    看一下怎么个事儿
    怡红院ぺ秀才   

    厉害学习学习
    sanrokalv   

    微信分身版吗
    wuzihao123   

    学习一下
    lc2006   

    好东西啊啊啊按
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部