吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3610|回复: 58

[Android 脱壳] Xposed开发实践(破解匆匆下载器VIP限制)

  [复制链接]
发表于 2018-8-8 13:26 | 显示全部楼层
本帖最后由 l123456789jy 于 2018-8-14 13:18 编辑

一直没有找到合适的种子下载器,偶尔看到一个`匆匆下载器`,试了下解析成功率相当高,但是是要付费的,我这种穷逼,拿来的钱,所以就打算逆向下,看看

#### 第一步分析
- 打开APKTool,分析改APK,结果发现居然加密,是用梆梆加密的
- 关于如何破解梆梆加密请看我这篇文章[App“梆梆加固”破解](https://www.jianshu.com/p/955c0b1507c7 "App“梆梆加固”破解")

#### 第二部开始分析,关键代码

- 我们把源码dum出来之后,使用 dexjar,打开
![]()

- 源码全部看到啦
- 我们通过`ACTIVITY TOP`获取播放界面的完整类名,和路径
![]()
这里我么就看到了,他的包名,和当前Activity的完整路径,接下在我们就去找`AdvancedPlayActivity`这个类

- 然后我们根据他的提示语去搜索,找到关键代码
这个是游客登录的限制逻辑
![]()

这个是vip逻辑的限制

![]()

- 有了关键代买,我们就好办了,我们分析,他这个逻辑都是在一个叫做,`startPositionTimer` 方法里面被调用,我们只需要hook住这个方法,替换这个方法,替换成一个空实现不就ok了


```java
public class Man implements IXposedHookLoadPackage {

  private static final String FILTER_PKGNAME = "com.congcong.dl.application";
  private static final String BAI_DU_PKGNAME = "com.congcong.dl.application.widget.BDCloudVideoView";
  private static final String AD_PKGNAME = "com.congcong.dl.application.cc.bar.AdvancedMediaController";
  private static final String LOG_PKGNAME = "android.util.Log";
  @Override
  public void handleLoadPackage(final LoadPackageParam loadPackageParam) throws Throwable {
    Log.e("handleLoadPackage", loadPackageParam.packageName);
    if (FILTER_PKGNAME.equals(loadPackageParam.packageName)) {

      //这里是为了解决app多dex进行hook的问题,Xposed默认是hook主dex
      XposedHelpers
          .findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
              Log.e("handleLoadPackage", "afterHookedMethod");
              final ClassLoader cl = ((Context) param.args[0]).getClassLoader();
              XposedHelpers.findAndHookMethod("com.congcong.dl.application.cc.AdvancedPlayActivity", cl, "onCreate", Bundle.class, new XC_MethodHook() {
                @Override
                protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                  Log.e("handleLoadPackage", "onCreate");
                  //获取当前hook的activity
                  final Activity thisObject = (Activity) param.thisObject;
                  Uri data = thisObject.getIntent().getData();
                  Log.e("handleLoadPackage",data.toString());
                  final Class<?> aClass = cl.loadClass(AD_PKGNAME);
                  //hook AdvancedMediaController 中 startPositionTimer方法并且替换为空实现
                  XposedHelpers.findAndHookMethod(aClass, "startPositionTimer",
                      new XC_MethodReplacement() {
                        @Override
                        protected Object replaceHookedMethod(MethodHookParam methodHookParam)
                            throws Throwable {
                          Toast.makeText(thisObject,"hook,成功!",Toast.LENGTH_SHORT).show();
                          Log.e("handleLoadPackage", "replaceHookedMethod");
                          return null;
                        }
                      });
                }
              });

            }
          });
    }


  }
}
```

应广大群众要求,想要使用下载功能,看了下,就把这功能实现了,思路很简单,就是hook他的vip,属性就可以了,然后替换他的登陆方法,放出源码
//================================================
  final Class<?> aClass = cl.loadClass("com.congcong.dl.application.cc.ShowListActivityQ");
  XposedHelpers.findAndHookMethod(aClass, "getlogin",
      new XC_MethodReplacement() {
        @Override
        protected Object replaceHookedMethod(MethodHookParam methodHookParam)
            throws Throwable {
          Toast.makeText(((Activity) methodHookParam.thisObject),"hook,成功!",Toast.LENGTH_SHORT).show();
          //通过查看源码发现他标记用户的vip标识是vip=10不是,所以动态修改他的属性就行了
          XposedHelpers.setObjectField(methodHookParam.thisObject,"vip","1");
          Log.e("handleLoadPackage", "replaceHookedMethod");
          return null;
        }
      });

}



这样就可以无限制的看了,代码已经上传github[地址](https://github.com/l123456789jy/GradleTask "地址"),在xposted 里面搜索匆匆就可以使用该插件了,插件2.0已经可以使用下载功能了.(匆匆已经改名,估计作者也逛论坛,毕竟人家还要盈利的,思路给了,后续自己破解吧!)

免费评分

参与人数 19吾爱币 +25 热心值 +17 收起 理由
h54953 + 1 + 1 不能用了
momide + 1 + 1 我很赞同!
psps + 1 + 1 老哥,匆匆下载器改名了,能更新下吗,好像不能用了
seesea + 1 鼓励转贴优秀软件安全工具和文档!
人二 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
sougou2009 + 1 + 1 加入下载功能就可以直接开车了。
lxj199610 + 1 用心讨论,共获提升!
酱爆你个西瓜头 + 1 + 1 建议论坛大大给编辑器加上markdown语法解释
sdx1986a + 1 + 1 我很赞同!
陈江枫叶 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
老是卖你们 + 1 + 1 大神收藏学习
qtfreet00 + 6 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
jiang196771 + 2 + 1 高大上啊,不适合小白啊,有没有弄完的啊
Recobaggio + 2 + 1 谢谢@Thanks!
motosanta33 + 1 + 1 我很赞同!
xiaolan + 1 + 1 热心回复!
阿尔卡伊达 + 1 + 1 热心回复!
微若清风 + 1 + 1 谢谢@Thanks!
绍离 + 2 + 1 求打包

查看全部评分

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-10 03:35 来自手机 | 显示全部楼层
本帖最后由 zrssz 于 2018-8-10 06:49 编辑

https://wap.shouji.com.cn/down/34579.html
这个可以下载种子可以下载磁力

https://wap.shouji.com.cn/down/31847.html
这个可以下载网页视频.我用的是4.0版本.可以嗅探网页视频.浏览器一般不能用安卓webview要用谷歌webview才能嗅探[夸克浏览器可以.谷歌浏览器我还是旧版可以新版就不知道了].如果你是安卓5.0及以上这软件刚装上去好像没反应.你要激活放一两个月好像就有作用了


这个是下载重定向:我用1.15版本无界面可以接管系统下载器.软件高版本好像不起作用5.0及以上版本.新版谷歌浏览器没办法接管.旧版还可以
https://wap.shouji.com.cn/down/34579.html
后两个是xposed模块.

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

 楼主| 发表于 2018-8-8 17:32 | 显示全部楼层
chaoji谭 发表于 2018-8-8 17:13
请问下如何判断apk使用的加密和加壳的平台??

看他的so库,就知道了,搜下他的so库名字,每个加密so名字是不一样,还有加密之后生成的包名。

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 13:35 | 显示全部楼层

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 13:37 | 显示全部楼层
高手无处不在!

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 13:40 | 显示全部楼层
你这写得不适合小白呢

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 13:43 | 显示全部楼层
感谢分享 ,值得学习

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 13:57 | 显示全部楼层
简介明了很OK

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 14:03 | 显示全部楼层
支持原创,感谢楼主

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 14:46 | 显示全部楼层
简介明了,原理差不多 了。

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 15:18 | 显示全部楼层
感谢楼主分享,已学会

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-8-8 16:22 | 显示全部楼层
感谢楼主,学会了

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则


免责声明:
吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Service@52PoJie.Cn

快速回复 收藏帖子 返回列表 搜索

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

GMT+8, 2018-8-18 04:39

Powered by Discuz!

© 2001-2017 Comsenz Inc.

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