淘系抓包流程(淘宝数据无法抓包解决方式)

news2024/11/29 4:38:29

淘系抓包流程

结合fridaadb工具以及mumu模拟器进行抓包。

具体的关系图:

frida.png

  1. frida的安装

    frida安装,直接安装官网的脚手架。frida官网使用python的pip安装,python > 3。 安装后使用查看版本命令来确认是否安装。

    pip install frida-tools
    frida --version
    
  2. adb工具安装,adb是安卓调试桥梁(Android Debug Bridge)。下载之后,配置一下系统环境PATH变量即可。

    Windows版本:
    https://dl.google.com/android/repository/platform-tools-latest-windows.zip
    ​
    Mac版本:
    https://dl.google.com/android/repository/platform-tools-latest-darwin.zip
    ​
    Linux版本:
    https://dl.google.com/android/repository/platform-tools-latest-linux.zip
    
  3. mumu模拟器的安装,因为该模拟器性能等方面相对稳定,所以选择了网易的mumu

    官网安装地址: https://mumu.163.com/index.html
    
  4. 以上工作准备完毕后,需要将模拟器先安装好淘系APP。接着采用adbfrida-server推送到模拟器上。

    frida-server -> 安装地址

    安装该版本: frida-server-16.0.18-android-x86_64.xz

    1. 查看mumu模拟器的端口号(7555),然后本地电脑用adb链接上。 adb connect 127.0.0.1:7555
    2. 通过adb devices 查看链接设备,确认是否链接成功。
    3. 使用adb 把frida-server推送到模拟器里。 adb push [存放frida-server路径] [目标路径]
    如: adb push frida-server /data/local/tmp/
    4. 推送后,使用adb shell 进入模拟器,到指定目录查看是否推送成功。 
    如: 
    adb shell
    cd /data/local/tmp/
    ls -l
    文件存在即可。
    5. 需要取得手机root权限,并且给frida-server文件给予权限: chmod 777 frida-server
    6. 可以直接执行该文件,如: ./frida-server
    也就是启动了模拟器端的frida-server。
    7. 回到本地电脑,执行frida-ps -U 确认是否能查看到模拟器的所有进程。如果能就是成功了。
    
  5. 接下来需要写一些frida 的 hook去进行一些数据拦截插桩。如对淘系app抓包时,对协议的改动,使其能够抓包。

    import sys
    import frida
    rdev = frida.get_usb_device()
    # session = rdev.attach('com.taobao.etao')
    session = rdev.attach('com.taobao.taobao')
    # session = rdev.attach('com.tmall.wireless')
    scr = """
    Java.perform(function () {
        var SwitchConfig = Java.use('mtopsdk.mtop.global.SwitchConfig');
            SwitchConfig.isGlobalSpdySwitchOpen.overload().implementation = function(){
                var ret = this.isGlobalSpdySwitchOpen.apply(this, arguments);
                console.log("isGlobalSpdySwitchOpenl "+ret)
                
                return false
            }
        })
    """
    script = session.create_script(scr)
    def on_message(message, data):
        print('msg: ' + message)
        if message['type'] == 'send':
            print("[*] {0}".format(message['payload']))
        else:
            print(message)
            
    script.on("message", on_message)
    script.load()
    sys.stdin.read()
    
  6. 同时,可以对模拟器进行代理,再用fiddler进行抓包,就可以抓到具体数据了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/470594.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【严重】VMware Aria Operations for Logs v8.10.2 存在反序列化漏洞(CVE-2023-20864)

漏洞描述 VMware Aria Operations for Logs前身是vRealize Log Insight,VMware用于处理和管理大规模的日志数据产品。 VMware Aria Operations for Logs 8.10.2版本中存在反序列化漏洞,具有 VMware Aria Operations for Logs 网络访问权限的未经身份验…

“SCSA-T学习导图+”系列:交换技术之STP

本期引言: 在通信工程当中,从物理层面上,我们可以采用冗余链路保证网络的健壮性。冗余是指出于系统安全和可靠性等方面的考虑,人为地对一些关键部件或功能进行重复的配置。当系统发生故障时,比如某一设备发生损坏&…

【Linux】Linux下的gbd调试,你学废了吗

操作系统核心数centos 3.10.032位单核 gbd调试方法-以线程运行时调试为例 线程死锁状态时查看栈升级gbd通过gdb在程序运行时进行调试 线程死锁状态时查看栈 在线程-线程安全之互斥中,我们自己写了一个模拟实现的线程死锁情况 我们用gbd调试查看了当前线程的调用&a…

拉链表制作

1.拉链表的应用场景 拉链表适合于:数据会发生变化,但是大部分是不变化的(即:缓慢变化维。还需要保留历史数据做分析的场景) 2.拉链表的形成过程 关键的过程 第四步:获取变化的数据(创建和修改…

Flask连接MySQL

本文章涉及到Flask框架和HTML内容,相关知识可查看链接 HTML-form表单和提交_html form 提交_小梁今天敲代码了吗的博客-CSDN博客https://blog.csdn.net/weixin_43780415/article/details/130110722 前端引入和html标签_小梁今天敲代码了吗的博客-CSDN博客https://b…

vscode下drawio无法使用

问题描述: Vscode下, 刚下载drawio这个插件,在vscode左边EXPLORER下,没有Test这个页面,导致vscode无法使用drawio。 解决办法: 在自己需要的目录下,新建一个文件,例如test,并命名为test.drawi…

数据结构算法

直接插入排序 1.从第一个元素开始,该元素可以认为已经被排序 2.取下一个元素tem,从已排序的元素序列从后往前扫描 3.如果该元素大于tem,则将该元素移到下一位 4.重复步骤3,直到找到已排序元素中小于等于tem的元素 5.tem插入到该元…

5.1劳动节,致敬最可爱的人!Cocos社区杰出贡献者出炉

Cocos 引擎的生态建设与繁荣,离不开社区开发者的辛勤付出。 2022.5 ~ 2023.5 年度期间,有这样一批 Cocos 社区开发者,他们使用 Cocos Creaor 引擎创作内容与产品、分享技术和经验,为 Cocos 社区默默贡献自己的一份力量&#xff0c…

改进YOLOv8:替换轻量化骨干网络Efficient V1、Efficient V2《重新思考卷积神经网络的模型缩放》)

这里写目录标题 1 EfficientNetV1中存在的问题2.EfficientNetV2网络框架3.YOLOv8添加Efficient V1代码yaml文件Efficient V1代码运行4. 添加Efficient V2代码yaml文件Efficient V2运行Efficient V1论文地址:https://arxiv.org/pdf/1905.11946.pdf Efficient V1代码地址:

Golang每日一练(leetDay0049) 二叉树专题(9)

目录 144. 二叉树的前序遍历 Binary-tree Preorder Traversal 🌟 145. 二叉树的前序遍历 Binary-tree Postorder Traversal 🌟 对比: 94. 二叉树的中序遍历 Binary-tree Inorder Traversal 🌟 146. LRU缓存 LRU Cache &am…

调用移动云OCR识别身份证

一.开通移动云OCR服务 在下面这个网址开通免费服务,,每个账号可免费使用500次,先要实名认证。 通用文字识别 (10086.cn)https://ecloud.10086.cn/home/product-introduction/Generalverify 有两种方式: 这里选择第二种 。 二…

炸裂的 Auto-GPT,帮我自动生成小视频!

大家好,我是程序员贺同学。 继前段时间爆火的 ChatGPT 后,又一个炸裂的开源项目 Auto-GPT 出现了。 仿佛一夜之间,AI 圈又出现了一个新晋顶流。我们来看看它有多🔥。 在 GitHub 上,仅最近不到两个礼拜,这个…

TCP/IP基础知识

文章目录 互联网与TCP/IP的关系TCP/IP与OSI参考模型硬件(物理层)互联网层(网络层)IPICMPARP 传输层TCPUDP 应用层WWW电子邮件(E-Mail)文件传输(FTP)远程登录(TELNET与SSH&#xff09…

Redis Set 用了 2 种数据结构来存储,到现在才知道

Sets 无序集合,他的功能就好像你熟悉的 Java 中的 HashSet 一样。集合是通过散列表实现的,所以添加、删除、查找元素的时间复杂度是 O(1)。 1. 是什么 Sets 是 String 类型的无序集合,集合中的元素是唯一的,集合中不会出现重复的数…

【百问百答】可靠性基础知识第三期

1.电连接器的基本性能有哪些? 三个基本性能:机械性能、电气性能和耐环境性能。 电连接器机械性能测试包括:插拔力测试、端子保持力测试、端子正向力测试、耐久性测试。 电气特性测试包括:绝缘电阻测试、 耐电压测试、 低电平电阻测试(LLCR…

【YOLO v1】模型搭建 | model | 代码

YOLO V1 模型 import torch import torch.nn as nn from torchsummary import summarydef build_block(in_channel, out_channel, kernel_size, stride1, maxpoolFalse):padding kernel_size//2block nn.Sequential(nn.Conv2d(in_channel, out_channel, kernel_sizekernel_si…

数据包守恒 TCP 拥塞控制

数据包守恒是包括拥塞控制在内的合理利用带宽的方法之基石,它维持了有效网络传输的稳定,过去 40 年是,未来还是。数据包守恒可以描述为: 当带宽恰好满载时,receiver 收到 1 个数据包后 sender 才能发送 1 个数据包。当…

LeetCode链表OJ题目 代码+思路分享

目录 删除有序数组中的重复项合并两个有序数组移除链表元素 删除有序数组中的重复项 链接: link 题目描述: 题目思路: 本题使用两个指针dst和src一前一后 相同情况: 如果nums[dst]nums[src],那么src 不相同情况: 此…

基于B/S架构SpringBoot+Bootstrap框架的中小医院信息系统

一、开源项目简介 基于B/S架构,SpringBootBootstrap框架的中小医院信息系统。简单实现了挂号收费,门诊管理,划价收费,药房取药,体检管理,药房管理,系统维护等基础功能。 二、功能概述 本系统是…

计算机网络学习04(应用层常见协议总结)

1、HTTP:超文本传输协议 超文本传输协议(HTTP,HyperText Transfer Protocol) 是一种用于传输超文本和多媒体内容的协议,主要是为 Web 浏览器与 Web 服务器之间的通信而设计的。当我们使用浏览器浏览网页的时候,我们网页就是通过 …