V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fowill
V2EX  ›  程序员

通达信 app 抓包乱码问题

  •  
  •   fowill · 2019-11-24 22:24:40 +08:00 · 5993 次点击
    这是一个创建于 1824 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我刚刚开始学习 app 爬虫,也完成了一两个简单的练手项目,但是在通达信 app 上抓包遇到了问题。首先,Charles 根本抓不到任何东西,只抓到几张图片。于是我按照网上的方法使用 Packet Capture 和 HttpCanary 进行抓包,抓到的都是一堆乱码。各位前辈们有知道大概是什么原因吗?是用了私有协议吗?我该学习哪方面的东西才能解决这个问题呢?
    18 条回复    2020-10-19 15:58:21 +08:00
    zhaoboy666
        1
    zhaoboy666  
       2019-11-24 22:29:27 +08:00
    证书安装了吗?无 root 就用安卓 7.0 以下,不包括安卓 7.0,7.0 以上用 HttpCanary 证书移到系统里面,再去试试??再不行的 留言吧
    Jirajine
        2
    Jirajine  
       2019-11-24 22:51:13 +08:00 via Android
    muzuiget
        3
    muzuiget  
       2019-11-25 00:14:26 +08:00
    HTTP 还是 HTTPS 先?
    dearmymy
        4
    dearmymy  
       2019-11-25 01:06:35 +08:00
    百度怎么抓 https。如果安装证书中间人也不行,先本地 ssl 校验 patch 掉,如果还不能抓,就有可能服务器校验证书,那就只能逆向程序,找到证书了。
    itstudying
        5
    itstudying  
       2019-11-25 09:32:47 +08:00
    实时的行情数据这种一般都是自建 socket 协议,很少会使用 http
    fowill
        6
    fowill  
    OP
       2019-11-25 13:31:51 +08:00
    @dearmymy @zhaoboy666 @muzuiget 我刚刚使用 virtual xposed + justtrustme 破解了 ssl pinning,然后用 charles 和 HttpCanary 抓包,依然是和之前一样,抓到的是乱码。做逆向会有用吗?还是什么别的可能的原因呢?
    乱码就像这样:
    ?7� -̬ c`\� % �5��fW��Xr�K2 ���<>U]X@zv��� ����� ��AL����u'
    ��a�� g� ' �Ĩz��\& �8�����e��� j��� ��̓��� �V�j�v � �LT� & ���!��i1��-w#��Q �������������6� S�4��Q}��c4
    fowill
        7
    fowill  
    OP
       2019-11-25 13:35:02 +08:00
    @itstudying 自建 socket 协议就无法抓到数据包吗?我现在还大二,读的是管理类专业,所以相关知识可能不太懂,我需要去看哪方面的知识才能解决 socket 顺利爬到数据呢?
    fowill
        8
    fowill  
    OP
       2019-11-25 13:36:10 +08:00
    @Jirajine 我使用了 virtual xposed 和 justtrustme,应该和您这个是一样的效果,但是爬下来数据还是乱码,可能是哪方面的问题呢?
    乱码就像这样:
    ?7� -̬ c`\� % �5��fW��Xr�K2 ���<>U]X@zv��� ����� ��AL����u'
    ��a�� g� ' �Ĩz��\& �8�����e��� j��� ��̓��� �V�j�v � �LT� & ���!��i1��-w#��Q �������������6� S�4��Q}��c4
    Jirajine
        9
    Jirajine  
       2019-11-25 14:13:56 +08:00 via Android
    @fowill 信息不足,拿 v2ex,微博这种已知用 HTTPS 协议的站点测试一下,如果不提示证书错误且成功解码出加密数据那说明你配置的没问题,人家用的私有协议,否则还是证书问题,用我发的那个模块配 edxposed 亲测可以正常解密。
    itstudying
        10
    itstudying  
       2019-11-25 14:46:39 +08:00
    @fowill #7 windows、mac 上可以试下 wireshark,linux 可以试下 tcpdump,Android 上可以在 adb 中使用 tcpdump,抓 Android 上 HTTP 的请求可以试下 HttpCanary,IOS 上 HTTP 请求可以试下 Stream,各种平台有很多类似的工具。不过像你上面抓 http 的接口乱码的问题应该是因为协议是 HTTPS 或者是数据经过加密或编码,需要试着把证书问题解决掉,楼上的方法也可以。
    fowill
        11
    fowill  
    OP
       2019-11-25 17:36:21 +08:00
    @itstudying @Jirajine 非常感谢两位!我试着按照你们说的方法依次解决下!
    tfdetang
        12
    tfdetang  
       2019-11-25 18:23:49 +08:00
    你是想要用 app 的接口做程序化交易吗?根据我个人的经验,一般金融软件还会对通讯的内容做加密。可能需要解包来看信息是怎么加解密的(我也不会破解,所以没搞定)
    fowill
        13
    fowill  
    OP
       2019-11-25 19:40:03 +08:00
    @tfdetang 不不,仅仅是个人的爱好,大学期间想多学点知识,毕竟是做数据分析的,能搞到数据也蛮重要的。
    iccfish
        14
    iccfish  
       2019-11-26 01:37:26 +08:00
    首先你要确定能正确抓到 HTTPS 或类似的加密协议。再就是,一般这种软件用的都是私有协议,并不是 web 协议。
    tfdetang
        15
    tfdetang  
       2019-11-26 09:47:12 +08:00   ❤️ 1
    @fowill 如果只是想要行情数据,其他选择也蛮多的 。可以去聚宽申请 sdk 试用,或者去 tushares 捐赠获取行情数据。如果需要的数据比较全,可以看看淘宝是否能买到 wind 的账号,然后用 wind 的 sdk 把数据导出来。爬虫的话新浪财金,东方财富也可以的
    fowill
        16
    fowill  
    OP
       2019-11-26 12:20:57 +08:00
    @tfdetang 学校里面一般我们都是使用 wind 的,tushares 之前我也有过了解。其实我并不是真的想要这个数据,只是想找一个难一点的 app 去爬,学习锻炼下技术而已(想掌握反编译)哈哈。谢谢前辈指点!
    Lunatic1
        17
    Lunatic1  
       2019-11-28 10:42:39 +08:00
    @iccfish 看头像以为是木鱼,看名字就是木鱼,点开看详细信息,就是木鱼!
    hilon
        18
    hilon  
       2020-10-19 15:58:21 +08:00
    楼主解决乱码的问题了吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4270 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 05:33 · PVG 13:33 · LAX 21:33 · JFK 00:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.