mitmproxy的简单使用

第1则

---抓包工具mitmdump的使用---

一、什么是抓包?怎么抓包?

1、抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等

2、我们平常可以用一些抓包工具进行抓包操作。一般测试人员常用的抓包工具是:fiddler、charles、mitmproxy三种。鹏鹏在这里简略介绍下这三种抓包工具的优缺点。

(1)fiddler:免费,但是跨平台能力较差。在MAC上非常非常不好用。但是在windows上用起来感觉不错,重点是免费

(2)charles:跨平台不错,windows和mac上都能支持,遗憾的是这是一个收费软件。

(3)mitmproxy:跨平台能力不错、支持脚本扩展。是测试开发工程师常用的一款抓包工具,免费。只不过它是一个控制台的形式操作。

下面我们看看mitmproxy的介绍吧。

二、mitmprox介绍

1、Mitmproxy是一个免费的开源交互式的HTTP/HTTPS代理。

2、mitmproxy就是用于MITM的proxy,MITM即中间人攻击(Man-in-the-middle attack)。用于中间人攻击的代理首先会向正常的代理一样转发请求,保障服务端与客户端的通信,其次会看看请求或者响应结果信息,记录其截获的数据或篡改数据,引发服务端或客户端特定的行为。

3、不同于fiddler或wireshark等抓包工具,mitmproxy不仅可以截获请求帮助开发者查看,分析,更加可以通过自定义脚本进行二次开发(篡改信息重新发送)。

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

下面我们来了解它们的用法

 三、mitmdump的使用

这边主要用windows来做演示。

1、首先安装好Mimtproxy(具体安装方法请关注公众号回复“软件安装”获取)

2、打开cmd(命令提示符)界面。MAC的话是终端界面

3、输入ipconfig 查看IP地址。(mac是ifconfig)鹏鹏这边连的是WIFI网络所以是在无线局域网适配器这里取得IP地址,如果是网线连接的话取以太网的就可以了。地址取IPv4的地址哦。把IP地址记在小本本中一会要用。

4、在命令提示符中输入:mitmdump。回车开始抓包。默认端口是8080。

5、这里有几种mitmdump的几种用法

-q:屏蔽mitmdump默认的控制台日志,只显示自己脚本中的

-s:入口脚本文件

-p:更改端口为8889,默认为8080

修改脚本文件时,不用重启也会生效

6、打开mitmdump后就可以在手机或pc上做代理抓包啦!这边注意下安卓手机安卓版本6以上的抓不了HTTPS的包,所以需要抓安卓软件的话建议使用安卓模拟器。

7、打开安卓模拟器后(这里以雷神模拟器为例),打开模拟器---设置---长按WLAN---修改网络---高级选项---代理设置为手动---在代理服务器主机和端口输入电脑的IP地址和mitmdump设置的端口号---点击保存。

8、代理设置好后就可以开始抓包了么?不还差一步。我们需要打开浏览器在地址栏中输入mitm.it,选择安卓-下载证书。

证书下载好以后,点击下载好的证书进行安装

点击确认后,他会提示你设置密码,如果设置过的话不会弹窗。密码设置结束后会直接提示安装完成。

9、证书安装完成后就可以开始抓包了!下面是抓取结果。如果想直接输出入参和出参甚至是把抓取到的数据写入文件中,需要写一些简单的脚本进行输出。python脚本写法下期更新。关注公众号“跟着鹏鹏学测试”。学测试不迷路!








扫描二维码 | 关注我们

微信号 : GZPPXCS

原文地址:https://www.cnblogs.com/Kevin-kong/p/13130330.html