https://bbs.pediy.com/thread-254503.htm
这个 抓包Hook 也是 基于 这篇帖子基础上 做的
https://bbs.pediy.com/thread-252100.htm
之前做的这一版本 只是 针对那些没有被 混淆的 OkHttp 如果 被混淆了 就会导致失效
先介绍一下 okHttp的 拦截器 先看图
主要 分为 2种 一个是本地 ,一个是网络的 这两个 拦截器 只需要 注入 其中一个即可拿到 请求以及响应的内容
在 okHttp中 本身 就存在一个 日志拦截器(HttpLoggingInterceptor) 主要是 查看 请求以及返回结果的
因为 app被混淆了 我就用反射把这个类的 主要功能大概实现了一下
在原版的 HttpLoggingInterceptor 会 判断是否打印头部信息 Body等 内容
我们 也不需要 做里面的那么多判断 只需要把里面的内容全部打印即可
目前主要做了 四个功能
前面两个 是 主要是 Hook了OkHttp的 client的构造和client.build方法(因为OkHttp有很多版本 为了兼容 以前的版本 )
如果确认了对方 使用 okHttp3 可以用前两者
拿了 市面上一个混淆的 app 并且用了okHttp 的 测试了一下效果还可以
通杀模式 主要 是 对 Http请求必走的函数 进行 了Hook
并打印调用信息
比如 图片里面的 SocketOutputStream 里面的 wirte方法 这个是 走 请求与 必走的方法用这个 也可以 打印栈信息方便分析
Txt主要 保存在 SD卡下面的 OkHttpCat/http/对应包名 目录下
这个拦截器可以开发的点 还有很多 比如 饶过服务端证书检测
可以添加自定义的拦截器 ,对某个请求 进行 修改和 拦截 因为是发包之前进行的修改 所以不会破坏其证书的 认证
包括 自动化爬虫 可以 搞个手机 直接集成这个拦截库 本地 判断 数据类型 ,然后 做个 转发到自己的服务器 即可
这个版本的 代码就不开源了 以后 更新 会放在小密圈
现在是基于内存遍历的 速度还是有点慢 ,以后会做成 Dexlib2 对dex进行遍历 特征 get ,因为 不需要 加载 速度就会快很多
现在 可能会有bug 有问题的话大家可以通过 交流群 反馈给我