某宙工具箱破解VIP功能

查看 117|回复 9
作者:一只小凡凡   
某宙工具箱破解VIP功能
前言
这次和上次的某颜色软件不同,可以提示名字,各位LSP就不要评论区要之前发的那个破解后安装包了,更有甚者追到我其他帖子下面要,H大都看不下去了,限制了那个帖子的查看权限,SO看看破解思路就好,这次的大家可以猜到软件名后百度搜索安装包自己使用下方介绍的工具尝试破解!
本帖仅供交流讨论相关技术,不提供破解成品
工具
  • APKIDE —— 反编译工具,论坛爱盘有下载;
  • vscode —— 代码编辑器;
  • MT管理器 —— 查壳;
  • Smali2Java —— vscode插件,Smali转Java代码插件;
  • Jadx —— Smali转Java代码工具,插件用到此工具,可在论坛爱盘下载;

    破解需求


    image-20220626184451402.png (108.83 KB, 下载次数: 0)
    下载附件
    2022-6-26 18:49 上传

    打开某宙工具箱,可以看到许多实用的功能,例如:安装包提取等,But这些部分功能需要开通会员才能使用,所以破解需求是:使用收费功能,不弹出收费界面,可以直接使用。
    查壳


    image-20220626184355342.png (49.03 KB, 下载次数: 0)
    下载附件
    2022-6-26 18:49 上传

    破解第一步先要查壳,我们打开MT管理器,点击安装包,会显示【加固状态】,此时我们可以看到,图片中加固状态为:未加固,所以我们不需要脱壳。
    搜索关键词
    一般情况下有会员功能的软件会常用一些关键词来定义函数方法,所以我们可以尝试搜索【isvip】这个关键词,通常情况下这个方法用于判断用户是不是vip,大家这里可以在小本本上记一下。


    image-20220626181611972.png (22.42 KB, 下载次数: 0)
    下载附件
    2022-6-26 18:50 上传

    非常顺利,成功搜索到了包含isvip的类,共有7个
    分析
    我们逐一打开分析一下哪些是我们需要修改的类。
    [ol]
  • hosts1 —— 这里面储存了许多网址,所以这个文件我们可以忽略;
  • UserData —— 这里储存的是登录用户的用户信息,其中包含判断是否为VIP,但是我们的破解需求中仅仅阐明了破解收费功能所以这里的我们就不用去修改了;
  • FunctionData和FunctionAdapter —— 这两个文件经过查看,包含了判断和设置VIP等一些列方法,但经过修改测试是没有用;
  • WifiNoRootActivity —— 这里是他的一个无Root查看WiFi密码的类,和本次破解毫无关联,可以忽略;
  • o0000O0O —— 这里包含了所有收费功能和判断VIP的函数,所以这里才是我们修改的文件;
  • o0O00OO —— 这里包含了判断用户数据的相关方法,不需要修改。
    [/ol]
    开始修改
    我们打开刚才说的o0000O0O.smali这个文件,将这个文件转为Java文件,可以看到软件作者把所有需要收费的功能全部写到了一个函数方法中去。
        public void OooO0OO() {
            o0000O0.OooO00o("搜索隐藏QQ", false, this.OooO00o, "搜索隐藏QQ");
            o0000O0.OooO00o("分贝仪", true, this.OooO00o, "分贝仪");
            o0000O0.OooO00o("图片无损压缩", true, this.OooO00o, "图片无损压缩");
            o0000O0.OooO00o("AI人工智能图片放大", true, this.OooO00o, "AI人工智能图片放大");
            o0000O0.OooO00o("随机一文", true, this.OooO00o, "随机一文");
            o0000O0.OooO00o("金属探测器", true, this.OooO00o, "金属探测器");
            o0000O0.OooO00o("视频提取音频", false, this.OooO00o, "视频提取音频");
            o0000O0.OooO00o("表情包搜索", false, this.OooO00o, "表情包搜索");
            o0000O0.OooO00o("图片尺寸缩放", true, this.OooO00o, "图片尺寸缩放");
            o0000O0.OooO00o("随机头像", true, this.OooO00o, "随机头像");
            o0000O0.OooO00o("人脸相似度对比", true, this.OooO00o, "人脸相似度对比");
            o0000O0.OooO00o("在线网页截图", true, this.OooO00o, "在线网页截图");
            o0000O0.OooO00o("PornHub风格图片生成", true, this.OooO00o, "PornHub风格图片生成");
            这里省略3000字
        }
    .method public OooO0OO()V
        .locals 5
        iget-object v0, p0, Lo00O000o/o0000O0O;->OooO00o:Ljava/util/Map;
        const-string v1, "\u641c\u7d22\u9690\u85cfQQ"
        const/4 v2, 0x0
        invoke-static {v1, v2, v0, v1}, Lo00O000o/o0000O0;->OooO00o(Ljava/lang/String;ZLjava/util/Map;Ljava/lang/String;)V
        这里省略3000字
        return-void
    .end method
    这就非常好办,只需要将这个函数中的所有内容删除,即可。
    将上方代码中的第二行.locals 5修改为.locals 1
    将.locals 1到return-void中的内容全部删除,保存编译。
    测试


    image-20220626184251829.png (113.31 KB, 下载次数: 0)
    下载附件
    2022-6-26 18:50 上传

    如图,经过测试发现,所有需要VIP的功能都可以正常使用,无需登录,学会了吗?赶快去试试吧!

    功能, 下载次数

  • 福森108   

    厉害,谢谢分享
    hzgsueface   


    一只小凡凡 发表于 2022-6-26 21:11
    那东西删掉会编译失败吧

    不会,像这个表示寄存器数量的才有讲究,.registers
    林鹿海鲸   

    .locals 5不需要修改,这只是反编译出来的信息,没啥用,直接return-void就行
    jmfjmf   

    先来学习看看
    wycdd   

    GOOD,good
    一只小凡凡
    OP
      

    有时间也练练手
    vicky526356   

    有盗版监测
    vicky526356   


    Jxdm 发表于 2022-6-26 19:20
    有盗版监测

    没有吧,使用发现没有任何提示啊
    一只小凡凡
    OP
      

    学习了,
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部