关于接口抓包 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
fenglirookie
V2EX    程序员

关于接口抓包

  •  
  •   fenglirookie 2023-11-01 17:29:27 +08:00 3172 次点击
    这是一个创建于 710 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我现在有一个第三方的 APP ,我现在使用 Charles 抓包工具,手机已经安装 Charles 的证书,此时我配置好之后,app 上的每一个请求 Charles 上都会有记录 但是 contents 里面全是乱码。这种情况 我查了一下资料说的是因为 APP 做了双向验证 所以 抓不聊 https 的包,想咨询一个广大 V 友,对于这个有什么解决方案吗?

    33 条回复    2023-11-15 14:51:06 +08:00
    Tamamopoi
        1
    Tamamopoi  
       2023-11-01 17:34:31 +08:00
    小黄鸟安装系统级证书可解。
    但是需要 root/虚拟机,系统证书放在/system/etc/security/cacerts ,重启后小黄鸟就能抓 https 的包了。
    cian
        3
    cian  
       2023-11-01 17:37:14 +08:00 via Android
    这个需要逆向或者 decode 证书
    libook
        4
    libook  
       2023-11-01 17:42:45 +08:00
    也可能做了二次加密,先对数据加密,然后再扔给 HTTPS 二次加密传输,这种你用 HTTPS 证书抓出来的就是第一次加密的数据,要想解密得逆向 app 程序,找到密钥和加密算法,如果此时 app 还做了安全加固,就更难了。
    CEBBCAT
        5
    CEBBCAT  
       2023-11-01 17:44:47 +08:00
    一楼说的不一定对,你现在能抓到 path 、header 吗?可以的话那说明 body 用了应用自定义的加密方式
    lxxzml
        6
    lxxzml  
       2023-11-01 17:58:03 +08:00
    我也有个 app 抓包都抓不到。小米平 3 ,已 root ,安卓 7 系统,xposed ,justtrustme,justtrustme++都安装了,charles 里面连请求都看不到。但是 app 里面请求都成功了。可能是 sslping 的问题导致的。
    lxxzml
        7
    lxxzml  
       2023-11-01 17:58:48 +08:00
    @lxxzml charles 的证书通过 adb 也安装到系统目录下了
    Puteulanus
        8
    Puteulanus  
       2023-11-01 18:00:57 +08:00
    能看到请求应该不是双向证书验证吧,更像二次加密
    blunterry
        9
    blunterry  
       2023-11-01 19:20:26 +08:00
    微信网页版不让登录,但是客户端可以登录,是不是因为网页版存在安全漏洞,跟客户端用的不是同一个后端 api ?
    cian
        10
    cian  
       2023-11-01 19:27:35 +08:00 via Android
    逆向过很多 app ,有这方面的需求可以找我
    chairuosen
        11
    chairuosen  
       2023-11-01 19:39:25 +08:00
    也可能是类似 protobuf 的二进制序列化叙述
    renmu
        12
    renmu  
       2023-11-01 19:42:22 +08:00 via Android
    @blunterry 不是,就是微信不想让你登
    flyqie
        13
    flyqie  
       2023-11-01 19:49:10 +08:00 via Android
    @blunterry #9

    统信 uos 版了解一下。

    不是技术原因,纯商业问题。
    wangyongbo
        14
    wangyongbo  
       2023-11-01 19:56:25 +08:00
    @lxxzml 可能是这个 APP 不使用 系统代理。
    awolf
        15
    awolf  
       2023-11-01 19:57:59 +08:00
    @lxxzml 我遇到的情况是用了 flutter ,不走系统代理,所以怎么设置都不会请求代理
    guanbeilang
        16
    guanbeilang  
       2023-11-01 20:42:19 +08:00
    第一步:首先明确:是否已经可以正常抓 https 的包,如果不能,可能是根证书的安装、信任步骤没有完成
    检查方法是:打开浏览器,看一下 https 的网站打开后 Charles 中能不能看到内容。 [小概率是这个情况]

    第二步打开 App 看内容如果是加密的,有可能 App 本身对流量进行了加密(你可以抓一下微信的包试试看) [很大概率是这个情况]

    除了主动的加密,App 为了避免被抓包,可以使用 ssl pinning 方法来保护自身,现象类似断网的状态(根据 App 自身的设计,始终加载中或提示网络错误或者假死都有可能)
    BaiLinfeng
        17
    BaiLinfeng  
       2023-11-02 02:48:30 +08:00 via Android
    @Tamamopoi 小程序也可以?
    fenglirookie
        18
    fenglirookie  
    OP
       2023-11-02 09:58:23 +08:00
    @Puteulanus 能看到请求,但是请求的 contents 里面全是乱码,这种是不是就要逆向 APP 拿到解密算法呀?
    fenglirookie
        19
    fenglirookie  
    OP
       2023-11-02 10:04:55 +08:00
    @zh826256645 看了 写的很详细,但是我主营业能力是 Javascript 所以 其实没看懂
    fenglirookie
        20
    fenglirookie  
    OP
       2023-11-02 10:10:34 +08:00
    @Tamamopoi 小黄鸟是什么?
    fenglirookie
        21
    fenglirookie  
    OP
       2023-11-02 1013:17 +08:00
    @fenglirookie
    @Tamamopoi 哦 查看到了
    2j0a3Lwf7E7muKp5
        22
    2j0a3Lwf7E7muKp5  
       2023-11-02 10:28:24 +08:00
    是乱码,说明 APP 进行了加密
    fenglirookie
        23
    fenglirookie  
    OP
       2023-11-02 10:57:03 +08:00
    @liaoyuan6666 那就是要反编译 解密 APP 了哇?
    lxxzml
        24
    lxxzml  
       2023-11-02 11:04:54 +08:00
    @cian 老哥,看到留个联系方式,我加你
    lxxzml
        25
    lxxzml  
       2023-11-02 11:09:42 +08:00
    @wangyongbo 不是,有的请求能抓到,有的请求抓不到,只能看到给 umeng 发的打点日志。
    cian
        26
    cian  
       2023-11-02 11:38:16 +08:00 via Android
    @lxxzml vx: d2ViM3d1bWluZw==
    Puteulanus
        27
    Puteulanus  
       2023-11-02 13:02:17 +08:00
    @fenglirookie 应该是要
    fenglirookie
        28
    fenglirookie  
    OP
       2023-11-02 13:33:34 +08:00
    @Puteulanus 好的 谢谢啦
    liuidetmks
        29
    liuidetmks  
       2023-11-02 13:53:05 +08:00
    国内环境这么恶劣,加密,sslpin 是基操了
    xchaoinfo
        30
    xchaoinfo  
       2023-11-02 17:23:03 +08:00
    可以给个 app 下载链接,我手上有配置好的抓包设备。
    fenglirookie
        31
    fenglirookie  
    OP
       2023-11-06 14:55:13 +08:00
    xchaoinfo
        32
    xchaoinfo  
       2023-11-08 11:02:04 +08:00
    @fenglirookie 是第三方的服务开启了 SSL 的验证,但是该 app 本身登录等动作没有验证

    ```
    POST https://xxxxx/app/newUser/login HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 424
    Host: xxxxx
    Connection: Keep-Alive
    Accept-Encoding: gzip
    User-Agent: okhttp/4.7.2
    URLEncoded form

    mtoken: 60be9c45fxxxxx
    deviceStr: 46bd7fc2c08c8fab201b1f67fxxxxxx
    downloadSrc: yingyongbao
    android_version: 30
    manufacturer: 21091116AC
    cpu_abi: arm64-v8a
    nickname: 爱美的臭 xxx
    oaid: d1f5b8b7f32c9xxx
    aaid: 1b8ad251-e54d-465b-92dc-2a58a9xxxx
    vaid: d2d3d1c763exxx
    device: 3
    version: 11015
    apkVersion: 11.0.1.5
    isEnglish: 0
    requestTimestamp: 1699411604769
    key: b08bcf1a3bfe676e338946e864xxxxx
    ```
    fenglirookie
        33
    fenglirookie  
    OP
       2023-11-15 14:51:06 +08:00
    @xchaoinfo 你这是用什么抓的哟
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     876 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 21:43 PVG 05:43 LAX 14:43 JFK 17:43
    Do have faith in what you're doing.
    ubao 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