梦想还是要有的, 万一实现了呢?

Mac抓包工具 Mac中Mitmproxy安装与使用

Python 拈花古佛 117℃ 0评论 繁體

官网介绍

mitmproxy is a free and open source interactive HTTPS proxy.

mitmproxy 是用 Python 和 C 开发的一个中间人代理软件(man-in-the-middle proxy),它可以用来拦截、修改、重放和保存 HTTP/HTTPS 请求。

mitmproxy需要在python3的环境下运行,mac一般都自带python2.7,需要安装python3,两者可兼容。

然后安装mitmproxy,如果安装有brewhome, 可以使用 brew install mitmproxy,也可以使用pip3 install mitmproxy进行安装,还可以下载mitmproxy的安装包进行安装。

安装完成后需要在电脑和手机上边安装证书,电脑上边在浏览器设置里边高级部分里找到代理部分,点击打开之后选择网页代理和安全网页代理部分,进行设置。设置安全网页代理服务器为:127.0.0.1:8080,然后确定之后应用。

安装

可以使用brew包管理工具进行安装

brew install mitmproxy

也可以通过pip进行安装,我是通过这种方式把它安装在虚拟环境里的

pip install mitmproxy

MAC配置代理转发

1、点击网络偏好设置

Mac中的Mitmproxy安装与使用
2、点击 高级
Mac中的Mitmproxy安装与使用
3、设置下图所示,代理地址为127.0.0.1,端口为8080。8080为默认端口。
Mac中的Mitmproxy安装与使用
Mac中的Mitmproxy安装与使用

安装证书

设置好代理后,执行命令,开启mitmproxy

mitmproxy -p 8080

此时还不能正常抓包,我们在电脑上安装证书

1、打开该网站:http://mitm.it/#macOSMac中的Mitmproxy安装与使用

2、下载 信任

将上图中的.pem下载到本地后,我们双击打开钥匙串页面,然后找到我们的mitmproxy,点击打开详情页面,在信任栏下面选择:使用此证书事始终信任。
在这个过程中会要求输入AppleID。正常输入即可
Mac中的Mitmproxy安装与使用

手机设置代理抓包

手机部分代开设置,无线和网络,WLAN,将手机和电脑连接到同一个网络上边,然后设置成代理模式。华为荣耀10的设置方式是:长按连接的网络,点击修改网络,显示高级选项,代理设置为手动,ip为电脑ip,端口设置为8080.此时手机代理模式设置成功。

Mac抓包工具 Mac中Mitmproxy安装与使用

Mac抓包工具 Mac中Mitmproxy安装与使用

打开浏览器,输入网址mitm.it,打开之后下载对应的手机证书,如果不能下载可以使用别的方式将证书发送到手机,进行安装。安装证书的方式为:华为荣耀10:打开WLAN,点击右下角更多按钮,高级WLAN设置,安装证书,找到证书文件进行安装,安装过程中需要输入手机密码,证书名字mitmproxy;完成之后显示安装成功。之后就可以对客户端进行抓包了。

Mac抓包工具 Mac中Mitmproxy安装与使用

Mac抓包工具 Mac中Mitmproxy安装与使用

Mac抓包工具 Mac中Mitmproxy安装与使用

Mac抓包工具 Mac中Mitmproxy安装与使用

脚本

加载方法

-p 指定端口
-s 指定脚本
mitmdump -p 8080 -s outproject/tmail/file2.py

最佳实践

案例一:过滤图片请求,将大图片url保存进redis

import redis

rds_pool = redis.ConnectionPool(host="127.0.0.1", port=6379, db=2)
rds = redis.StrictRedis(connection_pool=rds_pool)
# response函数会自动执行,过滤数据流
def response(flow):
    url = flow.request.url
    try:
        length = flow.response.headers['content-length']
        length = int(length)
    except Exception as e:
        # print(e)
        # print(flow.response.headers)
        length = 0

    if '.jpg' in url and length > 200000:
        rds.hset('tm', str(length), url)

 

转载请注明:拈花古佛 » Mac抓包工具 Mac中Mitmproxy安装与使用

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址