mitmproxy 抓包工具的使用

motmproxy 是一个支持 HTTP/HTTPS 协议的抓包程序, 和 Fiddler, Charles 有些类似的功能,只不过它以控制台的形式操作

mitmproxy 还有两个关联组件。 一个是 mitmdump  , 这是 mitmproxy 的命令接口, 利用它我们可以对接 Python 脚本, 用 Python 实现监听后的处理,另一个是 mitmweb ,这时一个 web  程序,通过它我们可以清楚的观察到 mitmproxy 捕获的请求

mitmproxy 的功能

mitmproxy 有如下几个功能

拦截 HTTP/HTTPS 的请求和响应

保存并分析 HTTP 会话

模拟客户端发起请求,模拟服务器端返回响应

理由反向代理将流量转发给指定的服务器

支持 Mac 和 linux 系统的透明代理

利用 Python 实时处理 HTTP 请求和响应

准备工作

mitmproxy 运行之后会默认在当前电脑的 8080 端开启一个代理服务,这个服务实际上是一个 HTTP/HTTPS 的代理

正确安装 mitmproxy, 并且让手机和 mitmproxy 处与同一局域网络换(同一WIFI)

然后配置好 mitmproxy CA 

我的配置方案:写文章-CSDN创作中心

基本使用

配置好之后再 cmd 输入 mitmproxy

在手机随便打开一个浏览器之类的,需要联网的 APP 这里以百度为例  www.baidu.com

左下角的 1/4 代表产生了 4 个请求, 箭头指的是第 1 个请求。 每个请求开头都有一个 GET 或 POST ,这是请求方法,后面紧跟的是请求 URL , URL之后是响应状态码, 其后是响应内容的类型 如 text/html  代表网页文档, image/jpeg 代表图片, 再后面是响应体大小和响应时间

如果想查看某个请求的详情, 可以通过上下键切换,选中这个请求后按下回车,进入请求详情页

可以看到请求头的详细信息,例如 Hos, Cookie等,图的上方有 Request ,Response 和 detail 三个选项, 当前打开了 Request 选项,按下 Tab 键 切换至 Response 选项卡,查看对应请求的响应详情

开始的内容是响应头的信息,下拉之后可以看到响应体的信息。针对当前请求,响应体就是网页的源代码。此时再按下 Tab 键切换到最后一个选项卡 Detail ,即可看到当前请求的详细信息,如服务器的 IP 和端口, HTTP 协议版本,客户端的 IP 和端口等

mitmproxy 还提供了命令行式的编辑功能,使我们可以重新编辑请求。 按下 E 键即可进入编辑页面,这时它会询问编辑哪部分内容,选项有 Cookies ,query , url 等

按下要编辑内容对应的索引键即可进入编辑页面,例如按下数字 6 键,进入编辑请求 URL 的参数 Query String 的页面,我们可以按下 D 键删除当前的 Query Srings ,然后 按下 A 键新增一行,输入 key 和 value, 这里我们可以输入  wd=NBA ,可以使用 Tab 键切换 key  value ,之后按下 Esc 和 Q 键返回详情页面,可以看到请求 URL 里多了 wd = NBA 的参数

接着按下 E 键和数字 4 键, 进入编辑 Path 的页面

按下 D  和 A 修改 Path 内容,这里我们将 path 修改为 s  , 之后按下 Esc 和 Q 键返回请求详情页面

响应结果 response 

只是基本用法,作为基础了解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值