美文网首页
XPosed+Charles抓包淘宝App

XPosed+Charles抓包淘宝App

作者: 吃饱了就送 | 来源:发表于2021-06-08 11:37 被阅读0次

阿里系大多使用了MTOP来加签请求,所以需要通过hook的方式关掉这个加签。我这里使用的是xposed。也可以使用Frida

 @Override
    public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {
        XposedBridge.log("========START=====");

if(lpparam.packageName.contains("com.taobao")){
            XposedUtil.checkXposed(lpparam);
            XposedHelpers.findAndHookMethod(XposedHelpers.findClassIfExists("mtopsdk.mtop.global.SwitchConfig", lpparam.classLoader), "isGlobalSpdySwitchOpen",
                    new XC_MethodHook() {
                protected void afterHookedMethod(MethodHookParam methodHookParam) throws Throwable {
                    super.afterHookedMethod(methodHookParam);
                    XposedBridge.log("========开启抓包=====");
                   methodHookParam.setResult(false);
                }
            });
}
}

Charles设置抓包HTTPS,打开淘宝,就能在Charles看到请求了


抓包淘宝
public static void checkXposed(XC_LoadPackage.LoadPackageParam lpparam) {
XposedHelpers.findAndHookMethod("android.app.ApplicationPackageManager", lpparam.classLoader, "getInstalledPackages", int.class, new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                super.afterHookedMethod(param);
                List<PackageInfo> packageInfos = (List<PackageInfo>) param.getResult();
                if (packageInfos != null) {
                    int size = packageInfos.size();
                    PackageInfo packageInfo;
                    for (int i = 0; i < size; i++) {
                        packageInfo = packageInfos.get(i);
                        if (packageInfo.packageName.contains("de.robv.android.xposed.XposedBridge") || packageInfo.packageName.contains("com.zte.heartyservice.SCC.FrameworkBridge")) {
                            packageInfos.remove(packageInfo);
                            i--;
                            size--;
                        }
                    }
                    //把修改后的List当作结果返回去
                    param.setResult(packageInfos);
                }

            }
        });
        XposedHelpers.findAndHookMethod(Throwable.class, "getStackTrace", new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                super.afterHookedMethod(param);
                StackTraceElement[] stackTraceElements = (StackTraceElement[]) param.getResult();
                if (stackTraceElements != null) {
                    List<StackTraceElement> list = new ArrayList<>(Arrays.asList(stackTraceElements));
                    int size = list.size();
                    StackTraceElement element;
                    for (int i = 0; i < size; i++) {
                        element = stackTraceElements[i];
                        if (element != null && (element.getClassName().contains("de.robv.android.xposed.XposedBridge") || element.getClassName().contains("com.zte.heartyservice.SCC.FrameworkBridge"))) {
                            list.remove(element);
                            i--;
                            size--;
                        }
                    }
                    stackTraceElements = list.toArray(new StackTraceElement[list.size()]);
                }
                param.setResult(stackTraceElements);
            }
        });
    }

相关文章

  • XPosed+Charles抓包淘宝App

    阿里系大多使用了MTOP[https://help.aliyun.com/document_detail/8813...

  • Fiddler 对App抓包代理问题

    App 防止 Fiddler 抓包小技巧fiddler 抓不到app包 抓不到okhttp/asynchttpcl...

  • app抓包

    环境搭建 Android模拟器安装 官网下载夜神模拟器安装 抓包工具安装 appium安装 https://git...

  • 应用抓包之tcpdump命令抓包

    抓包前准备 原料1.预抓包的App一个(我们以app抓包为例)2.已配置android sdk3.分析软件Wire...

  • Charles安装

    Charles安装 前言 charles可用于手机app的抓包,也可用于电脑app,网页的抓包。下面是charle...

  • mitmproxy ios抓包设置

    app开发中会遇到接口抓包的需求,可以使用三方抓包工具charles、mitmproxy 进行抓包。抓包前,请做一...

  • 网络抓包原理

    网络抓包原理及常用抓包工具 本文以App作为例子,实际应用不限于App范围。 1. 为什么要抓包 定位网络接口问题...

  • 利用java代码和web拦截器轻松实现一个app抓包工具

    目前app测试时我们需要对接口数据进行抓包,对于app的抓包,我们可以使用很多现成的工具,比如fiddler、...

  • App反抓包

    一般我们使用第三方接口时,连接中可能附带Key,如果用户使用第三方抓包工具,可能会引起安全问题 为了解决这个问题,...

  • Android app抓包

    简单记录一下。 建立环境:已root过的低于7.0设备一个,或者虚拟机也可。charles 抓包软件,一定要在电脑...

网友评论

      本文标题:XPosed+Charles抓包淘宝App

      本文链接:https://www.haomeiwen.com/subject/wybdeltx.html