原创文章,欢迎转载。转载请注明:转载自 ,谢谢! 原文链接地址:
上次说了fiddler的抓包和参数介绍,通过fiddler抓包工具可以完成app和web端的数据,这次介绍另一款抓包公司mitmproxy,可以和python语言结合通过爬虫抓取数据。 源码:
mitmproxy
- 官方
- 介绍
mitmproxy is a free and open source interactive HTTPS proxy.
mitmproxy 就是用于MITM的proxy 中间人攻击(Man-in-the-MiddleAttack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。
- 正常的代理一样转发请求,保证服务端和客户端的通信
- 拦截请求,修改请求,拦截返回,修改返回
- 可以载入自定义的mitmproxy
- fiddler只能拦截请求,修改请求,篡改数据,但是不能载入自定义的mitmproxy
- 随着安全的要求,现在越来越多的网站使用https请求,特别是ios客户端要求必须服务端使用https,所以必须让客户端和服务端都信任中间人
- 请用:mitmproxy 做测试使用,请勿使用灰产哦!
安装
- 环境安装
感觉windows 太麻烦了,还是建议使用linux
- 基于pyhon
- windows操作系统需要安装Microsoft Visual C++ V14.0以上
- linux操作系统直接安装pyhon就可以了。
windows 安装
这里不做介绍了,真心没有linux好!
linux 安装
通过vagrant的方式安装虚拟机
系统类型IP地址用户CPUMemoryHostnameCentos7192.168.77.100root24Gmitmproxy
- 三台机器mac开通远程登录root用户下
#设置 PasswordAuthentication yesvi /etc/ssh/sshd_configsudo systemctl restart sshd复制代码
- 修改dns
# 修改配置文件vi /etc/resolv.conf# 修改成:nameserver 8.8.8.8search localdomain复制代码
- 修改网络
service network restart复制代码
- 安装wget和pip3
yum -y install wgetwget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eebtar -zxvf pip-8.0.2.tar.gzcd pip-8.0.2python3.6 setup.py buildpython3.6 setup.py install复制代码
安装mitmproxy
- 安装mitmproxy
#安装python3.6的develyum install python36-develyum install gcc libffi-devel openssl-devel -y # 升级pip3pip3 install --upgrade pip# 安装 mitmproxypip3 install mitmproxy复制代码
- 查看mitmproxy的版本
mitmproxy --versionmitmdump --versionmitmweb --version复制代码
mitmproxy的使用
- mitmproxy
安装好了mitmproxy 直接查看,直接输入mitmproxy,默认端口是8080,
mitmproxy复制代码
打开google浏览器的插件switchyOmega
访问baidu提示,需要安装证书哦看来
如何安装mitmproxy的证书,浏览器输入mitm.it,根据自己的操作系统选择要安装的地址:mac,windows,android,other
演示windows下安装证书
双击证书
不用输入密码
讲所有的证书都放入下列存储
浏览器关闭重新打开
- 已经可以打开了
查看mitm的界面
- 列表界面
- 键盘选择
点击键盘回车,进入
进入后,里面分为request,repsonse,detail
退出esc,然后输入q 返回列表
进入列表后,输入f键
查看mitmproxy的三大组件
- mitmproxy
上边介绍了 不在详细说了。
- mitmdump
#记录的请求都放入指定的文件夹下mitmdump -w 文件路径复制代码
- mitmweb
这个windows查看比较方便。访问http://127.0.0.1:8081
mitmweb复制代码
PS:更多mitmproxy后续强大的功能,在后续的实践中,咱们一起详解吧。实现出真知。