Mitmproxy对Android进行抓包(真机)

        大致内容就是使用mitmproxy,和真机进行抓包的操作,步骤是root手机权限(本篇不涉及,实际上用的是OnePlus,因为好root一点),配置mitmproxy,安装系统级别证书,抓包。也是为了如果以后忘了,可以继续参考一下这篇博客。

目录

一、oneplus root

二、mitmproxy配置

三、安装系统级证书

四、启动抓包

五、拓展

(1)ProxyDroid        

(2)python

六、总结


一、oneplus root

        这部分参考这个网址实现,核心就是用Magisk。说复杂也不复杂,就是有点麻烦。后续移动证书必须要root权限才行,因为是真机,不然权限不够。一加手机安装面具教程(修补boot.img) - Magisk中文网 (magiskcn.com)icon-default.png?t=N7T8https://magiskcn.com/oneplus-boot

二、mitmproxy配置

       先把python环境配好,然后直接用pip安装即可。

pip install mitmproxy

         启动指令一般我用mitmweb会多一些,会打开一个网页来进行抓包的显示。

        安装完mimptoxy后,开始配置代理,在电脑上,依次点开设置->网路和Internet->代理->手动设置代理,就能进行代理的配置。

        如图所示,使用代理服务器打开,配置代理IP地址和端口如图,就把代理配置好了,在手机上抓包实际上不需要配这个,主要是为了在电脑上下载mitmproxy证书,方便一些。

        配置完代理后,命令行启动mitmproxy。

        然后访问如下网址

 mitm.it

        选择下载Android的证书即可。

         证书的名字就是mitmproxy-ca-cert.cer,接下来要用到这个证书。

三、安装系统级证书

        首先是安装一个openssl,来获取证书哈希值,指令如下,效果如图:

openssl x509 -inform PEM -subject_hash_old -in mitmproxy-ca-cert.cer

     我这里的结果是c8750f0d,所以接下来我就把mitmproxy-ca-cert.cer这个证书重命名为 c8750f0d.0,这么命名是为了符合规范,手机证书目录下所有证书都是这么命名的。

        接下来就是将这个证书移动到手机上,这就需要在电脑上安装adb了,安装完成后,用usb连接线把手机和电脑连上去,用adb devices看看有没有连接上,然后将电脑上的c8750f0d.0证书直接复制粘贴到手机上,我是放在DownLoad目录下的。接下来执行adb shell,如图:

        进入adb shell后,使用su获取root权限

        使用su获取root权限, 使用mount -o rw,remount /获取写入system的权限(有些比较老手机是用mount -o rw,remount /system),再使用 mv /sdcard/DownLoad/c8750f0d.0 /system/etc/security/cacerts/指令,将证书文件移动到系统级证书目录下。

su
mount -o rw,remount /
mv /sdcard/DownLoad/c8750f0d.0 /system/etc/security/cacerts/

        如此,接口完成证书的移动,再cd到/system/etc/security/cacerts/目录下,即可查看到刚刚移动进去的证书。

        接下来继续设置一下它的文件权限即可

chmod 644 /system/etc/security/cacerts/e9352f7c.0

         至此,系统级证书配置完成,参考网站如下

[mitmproxy中文文档] 在Android上安装系统CA证书 - pytorch中文网 (ptorch.com)icon-default.png?t=N7T8https://ptorch.com/docs/10/howto-install-system-trusted-ca-android抓包安卓7以上ca证书安装方法 - 知乎 (zhihu.com)icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/259255855抓包Android 7.0+将ca证书导入到系统(设置为系统证书),以及删除【用户凭据】证书_查看抓包证书哈希值-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/tabactivity/article/details/113505112

四、启动抓包

         证书配置完就可以进行抓包了,此时把win的代理给关了,在手机上启动系统代理,(确保手机和电脑处在同一个网络环境下),手机一般是WLAN来配置代理。配置好ip和端口为电脑的ip和端口即可,电脑网路的ip,可以通过ipconfig查看。

        然后在电脑上启动mitmweb指令,打开浏览器后,即可通过操纵你的手机,开始抓包。

五、拓展

(1)ProxyDroid        

        由于部分请求,或者说流量,它不走系统代理,所以可以使用ProxyDroid进行全局代理,配置方法和系统代理的配置方法是一样的,它可以将手机上的所有流量,均转发到电脑上,完成抓包。

(2)python

        mitmproxy抓包,有个特点是它可以配合python脚本进行抓包,大致执行就是

mitmweb -s test.py

        可以对请求进行拦截,打印负载等功能,十分强大,这是它的官方文档

Addons (mitmproxy.org)icon-default.png?t=N7T8https://docs.mitmproxy.org/stable/addons-overview/        也可以参考这个,反正网站挺多

使用 mitmproxy + python 做拦截代理 | Wolfogre's Blogicon-default.png?t=N7T8https://blog.wolfogre.com/posts/usage-of-mitmproxy/

六、总结

        一个记录的博客,没什么技术含量。

  • 41
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值