第十二课、基于HOOK的抓包

第十二课、基于HOOK的抓包

一般HTTPS:大部分只采用客户端校验服务器

双向绑定:很少会有服务器校验客户端

SSL Cert Pinning :更少

  • 抓包软件会有证书等问题
  • hook的方法无视证书 基于HOOK直接得到参数 打调用栈得到参数的构成和来源

1、批量trace确定收发包框架

netstat tuule |grep -i sms 这个是windows中的命令

  • 查看端口在adb shell中 com.cz.babySister

    • bullhead:/ # ps -e |grep baby
      u0_a107       7431  2583 4385088 106588 SyS_epoll_wait 7bf4a8f3f8 S com.cz.babySister
      bullhead:/ # lsof -p 7431 |grep TCP
      m.cz.baby  7431    u0_a107   51u     IPv4                          0t0      75893 TCP :38568->:80 (ESTABLISHED)
      bullhead:/ #
      
    • image-20230220141108487

    • 只有到80端口的 没有到443 的

  • 文件夹中搜索关键字在哪个文件夹

    • grep -ril "MainActivity" *
    • -R 递归地搜索目录。在缺省情况下,不按照到目录的链接。
      -i 在进行比较时忽略字母的大小写。
      -l 仅列出(一次)包含匹配行的文件的名称。文件名之间用换行符加以分隔。如果搜索到标准输入,将返回(标准输入)的路径名。-l 标志同 -c-n 标志的任意组合一起使用时,其作用类似于仅使用了 -l 标志。

2、ZenTrace/DDMS

  • https://github.com/hluwa/ZenTracer

  • # pyenv install 3.8.0
    # git clone https://github.com/hluwa/ZenTracer
    # cd ZenTracer
    # pyenv local 3.8.0
    # python -m pip install --upgrade pip
    # pip install PyQt5
    # pip install frida-tools
    # python ZenTracer.py
    
  • 点击Action之后,会出现匹配模板(Match RegEx)和过滤模板(Black RegEx)。匹配就是包含的关键词,过滤就是不包含的关键词

  • image-20230220150431456

  • Objection 先hook这个类java.net.HttpURLConnection

  • image-20230220151103592

  • image-20230220151202017

  • 6.4.4 6.10.1

3、HOOK收发包函数回溯参数来源

  • 先抓包分析

  • 解包搜关键字参数(不推荐)

  • HOOK的方法函数溯源

    • 保存内存中所有的类

      • 根目录
        cd .objection
        mv objection.log objection0220.log 
        
      • android hooking list classes 
        
      • cat objection0220.log |grep okhttp
        
    • 确定用了什么框架 Okhttp3

      • 类-----方法

4、 Objection/Wallbreaker

5、Okhttp框架自吐:frida_OkCat

  • https://github.com/siyujie/OkHttpLogger-Frida.git
  • ① 首先将 okhttpfind.dex 拷贝到 /data/local/tmp/ 目录下。 okhttpfind.dex源码链接
  • 执行命令启动frida -U -l okhttp_poker.js -f com.example.demo --no-pause 可追加 -o [output filepath]保存到文件
  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k5ivFXAr-1678548262132)(C:\Users\李世林\AppData\Roaming\Typora\typora-user-images\image-20230220211714097.png)]

6、无视证书绑定的blinssl框架自吐.

  • https://github.com/BigFaceCat2017/frida_ssl_logger

  • python3 ./ssl_logger.py  -U -f com.bfc.mm
    python3 ./ssl_logger.py -v  -p test.pcap  6666
    

7、强混淆app实战

  • 安装app、找到包名(adb shell 然后top)、开frida-server
    • org.sfjboldyvukzzlpp
  • 创建新的objection 的log文件 准备打印所有类
    • android hooking list classes
  • 搜索和http相关的
    • cat objection.log |grep okhttp
  • 解包搜索试试apktool d *2.1.0*
    • cd到文件夹中直接grep一下
    • grep -ril "okhttp3" *
    • image-20230220210350304
    • grep -ril "OkHttpClient" *
    • image-20230220210511134
    • head smali/h/y.smali 查看文件的前几行
    • image-20230220210723903
    • 其实是h.y 被混淆了类中搜不到 可以搜h.y 原型就是okhttp3.OkHttpClient
    • image-20230220210952780
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值