android7 以上系统 https 抓不到包,大家是如何解决的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hxhsammy
V2EX    程序员

android7 以上系统 https 抓不到包,大家是如何解决的?

  •  
  •   hxhsammy 1 天前 2945 次点击
    本人做小程序这块的业务比较多,经常要排查问题,目前用 https 抓包的工具会比较多,iphone 相关的设备还比较好处理,安装证书后基本都能抓包,android7 以后的设备,无法信任用户证书,而且大部分的设备已经关闭了 root 的通道,无法再通过中间人攻击的这种方式进行抓包了,想问下大家都是怎么解决的?
    38 条回复    2025-10-17 09:09:04 +08:00
    jianqiao031313
        1
    jianqiao031313  
       1 天前
    好几年不抓小程序了,提供几个思路:
    1. iOS 抓
    2. 装个雷电模拟器啥的,当个安卓机用
    3. 如果是自己的小程序,可以把关键信息上报到微信的实时日志里排查问题,量不大的话好像是免费的
    deplives
        2
    deplives  
       1 天前
    Xposed + JustTrustMe
    thealert
        3
    thealert  
       1 天前
    root 一个 android 设备 ,把用户证书添加到根证书
    Deteriorator
        4
    Deteriorator  
       1 天前
    我就是上个月把一台 Android 7 解锁 BL , 红米的, 然后用 magisk 刷了 root , 进行抓包的的
    superrichman
        5
    superrichman  
       1 天前
    闲鱼几百块买个已经 root 的二手机器
    SilentOrFight
        6
    SilentOrFight  
       1 天前
    从另一个角度看,至少安全了一些不是?
    cinhoo
        7
    cinhoo  
       1 天前
    电脑 mitmproxy + 手机代理,我的 ios 是这么抓包的
    dosmlp
        8
    dosmlp  
       1 天前
    除了 root 别无他法
    Hack3rHan
        9
    Hack3rHan  
       1 天前
    小程序完全可以抓 Windows 端,如果必须移动端且必须 Android ,优先尝试模拟器 adb 写证书到系统目录,如果不行,那只能刷模块。
    naythefirst01
        10
    naythefirst01  
       1 天前
    root 证书移动到根目录,当然系统版本也不要太高
    jarytom
        11
    jarytom  
       1 天前
    请问一下各位大佬,tcp 的包怎么抓?
    meteora0tkvo
        12
    meteora0tkvo  
       1 天前
    专门买一台谷歌亲儿子,然后 root 作为开发机
    superrichman
        13
    superrichman  
       1 天前
    @jarytom #11 tcpdump
    liKeYunKeji
        14
    liKeYunKeji  
       1 天前
    目前我的方案就是通过 ROOT ,然后将证书加到系统证书里面,才可以受信任。IOS 就直接装上证书就能抓,还得是 IOS 简单点。
    fortytwo
        16
    fortytwo  
       1 天前
    必须 root 了。搞个可以 root 的机子也不贵,我搞的是 redmi note 12 5G 256G 版本

    反正只是抓包用,对于成色电池啥的没要求,收个二手比较便宜,几百块搞得定。

    我日常抓包用 reqable ,个人觉得免费的够用。
    zsxzy
        17
    zsxzy  
       1 天前
    买个 rk 的开发板, 默认都是 root 的, 几百块钱
    afstyle
        18
    afstyle  
       1 天前
    我是用 AndroidStudio ,在里面找个非 PlayStore 的虚拟机版本创建虚拟机,然后软件装里面,可以安装抓包软件的证书
    AoEiuV020JP
        19
    AoEiuV020JP  
       1 天前
    reqable 做的很好,重点是竞品都停更了,只有 reqable 跟上了时代,可以说证书方面已经做到了市面上最好最全,用 reqable 抓不了的话那就是真的抓不了,
    目前安卓高版本最佳方案还得是 root 安装用户证书+系统证书,没有 root 就只能抓自己开发的 app ,
    zoharSoul
        20
    zoharSoul  
       1 天前
    iOS 抓
    duzhuo
        21
    duzhuo  
       1 天前
    用 Reqable ,直接 Magisk 里面安装证书模块
    docx
        22
    docx  
       1 天前 via iPhone
    ROOT ,别无他法
    kiraskyler
        23
    kiraskyler  
       1 天前
    1 、电脑开热点,电脑上抓
    2 、linux 内核 uprobe ,用户态 hook https 的函数抓
    scipelaina
        24
    scipelaina  
       1 天前
    pulutom40
        25
    pulutom40  
       1 天前 via iPhone
    @kiraskyler 手机没装根证书,电脑抓到的包怎么解密?
    q197
        26
    q197  
       1 天前 via Android
    @scipelaina 这个也要 root ,看介绍优点可能是假如 app 检测证书签发者等场景因为这个抓包不需要 mitm 所以无法被检测?
    pangzipp
        27
    pangzipp  
       1 天前
    1. 雷电模拟器
    2. 买个二手的 pixel + root
    swananan
        28
    swananan  
       1 天前
    ebpf 方案,或者说 uprobe 方案的话,得 root 才行。

    我其实本来想推荐,用我这个工具( https://github.com/swananan/ghostscope ),虽然不能抓出 WireShark 能解析的 pcap 包,但是直接看代码里面细节,其实更快。不过,也是需要 root 。
    ellermister
        30
    ellermister  
       1 天前
    这点 安卓要比 IOS 安全太多,防止你抓包篡改泄露等。看谁再说 ios 安全
    caijunduo
        31
    caijunduo  
       1 天前
    ONPatch + JustTrustMe/TrustMeAlready + Drony
    UnluckyNinja
        32
    UnluckyNinja  
       1 天前
    不 root ,模拟器不能跑,那你就得逆向包,然后可能会要对抗真机检测、完整性检测,这是个大坑,不如挑个能 root 的机器直接抓包,最多隐藏下 root 相关模块等
    inhzus
        33
    inhzus  
       1 天前
    不懂就问,Android 不能安装用户证书的话,怎么 MITM 呢
    irrigate2554
        34
    irrigate2554  
       1 天前
    root 或者 模拟器 或者 安卓虚拟空间软件(类似 VMOS 这种)试试
    w568w
        35
    w568w  
       1 天前   1
    @ > Android 不能安装用户证书

    Android 可以安装用户证书(用户 CA ),但系统不会默认信任:

    - Android 6.0 及以下:系统信任用户导入的用户 CA ;
    - Android 7.0 及以上:系统只信任出厂内置的系统 CA 。

    参考:
    https://developer.android.com/privacy-and-security/security-config?hl=zh-cn#base-config

    > 怎么 MITM 呢

    如果是自己的应用,直接参考上面的链接配置信任用户 CA 即可;

    如果是抓别人的包,有 ROOT 可以把自己的证书导入为系统 CA ;没 ROOT 就只有一些旁门左道了,比如虚拟机或者 Apk hook ,但可用性都不高。
    greatbody
        36
    greatbody  
       22 小时 59 分钟前
    还有一个独特的思路:将需要逆向的 apk 解包后,提取里面所有的 URL ,找到疑似是 API 的,然后都替换成自己的域名,自己的域名运行一个自己写的 Python 服务转发请求,同时记录请求信息。
    h4de5
        37
    h4de5  
       12 小时 59 分钟前
    买个 google 手机去下载一个第三方的 userdebug 的镜像。然后用 https://github.com/httptoolkit/httptoolkit-server/blob/main/src/interceptors/android/adb-commands.ts#L417 这个脚本可以把证书导进去就可以了
    chapiom
        38
    chapiom  
       12 小时 42 分钟前 via iPhone
    @scipelaina 这个因该是要模拟器吧,实体机这么高版本系统版本没见到,还要 root
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2624 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 13:51 PVG 21:51 LAX 06:51 JFK 09:51
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86