当前位置:网站首页>中间人环境mitmproxy搭建
中间人环境mitmproxy搭建
2022-04-23 06:26:00 【西杭】
需求及硬件环境
模拟中间人攻击:
- mitmproxy软件作为中间人代理软件
- wireshark捕获流量 查看协议名称及版本
- 两台Vmware虚拟机,系统均为ubuntu20.04
- 两张无线网卡:
- 一张用于中间人设备,开启热点,做网关使用
- 一张用于客户端,连接热点,发起流量
中间人设备网络为桥接模式,需要开启热点。桥接时,宿主机(真实主机环境不能连接需要认证的WIFI,即学校的校园网WIFI不能连接,可连接使用密码口令的wifi)
客户端网络设置为NAT即可
客户端和中间人端配置无线网卡驱动
笔者的无线网卡是TP-LINK厂商的TL-WN726N免驱版,但免驱是对windows免驱,在ubuntu下并不免驱,因此需要下载驱动。
https://blog.csdn.net/zhou_438/article/details/116297868
安装驱动:
https://github.com/McMCCRU/rtl8188gu
sudo apt-get install git
git clone https://github.com/McMCCRU/rtl8188gu
cd rtl8188gu
make
sudo make install
插入无线网卡,选择与虚拟机相连
中间人端
验证无线网卡是否可以开启热点
安装AP
https://github.com/lakinduakash/linux-wifi-hotspot
sudo add-apt-repository ppa:lakinduakash/lwh
sudo apt install linux-wifi-hotspot
开启热点
wihotspot
- SSID是热点名称
- password是密码
- wifiinterface是无线网卡的名称
- internet interface是虚拟机正常的网卡
- create hotspot开启热点
安装mitmproxy
中间人设备
https://blog.csdn.net/qq_39889867/article/details/83477480
安装依赖
sudo apt-get install openssl
sudo apt-get install libssl-dev
sudo apt-get install libc6-dev gcc openssl
sudo apt-get install -y make build-essential zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm tk-dev
sudo apt-get update
安装mitmproxy
sudo pip3 install mitmproxy
使用
mitmproxy
(默认端口号8080,级相当于mitmproxy -p 8080)
测试是否安装成功
如果遇到一些代理https失败的情况,在启动指令mitmproxy -p 8080 后面加上 --ssl-insecure 会解决一些问题
mitmproxy报错时,查看事件日志:
从Mitmproxy控制台键入 :console.view.eventlog
mitmproxy配置透明代理
中间人设备
https://docs.mitmproxy.org/stable/howto-transparent/
sysctl -w net.ipv4.ip_forward=1
sysctl -w net.ipv6.conf.all.forwarding=1
sysctl -w net.ipv4.conf.all.send_redirects=0
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080
ip6tables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
ip6tables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080
mitmproxy --mode transparent --showhost
eth0是指定的网卡,开启热点后,指定的网卡应为无线网卡wlx18f22c620f72
Wireshark
客户端安装wireshark
https://www.cnblogs.com/or2-/p/7813446.html
sudo apt-get install libcap2-bin wireshark
sudo chgrp gmz /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap
客户端
客户端关闭NAT网络连接,选择热点连接
配置证书
中间人端
两种方式:
- 打开浏览器输入mitm.it,选择linux
sudo mv mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt
sudo update-ca-certificates
上述方式可能证书会配置失败
- 第二种方式
https://blog.csdn.net/u013091013/article/details/101430260
mitm@ubuntu:~/Desktop$mitmproxy # 运行中间人
mitm@ubuntu:~/Desktop$ cd ~/.mitmproxy/
openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
sudo mkdir /usr/share/ca-certificates/extra
sudo cp mitmproxy-ca-cert.crt /usr/share/ca-certificates/extra/mitmproxy-ca-cert.crt
sudo dpkg-reconfigure ca-certificates
全部回车即可
ubuntu20.04可以添加证书成功
测试是否成功
客户端 curl www.baidu.com
中间人查看是否捕获到
版权声明
本文为[西杭]所创,转载请带上原文链接,感谢
https://mzgao.blog.csdn.net/article/details/123945244
边栏推荐
猜你喜欢
SAP RFC_CVI_EI_INBOUND_MAIN BP主数据创建示例(仅演示客户)
SAP PI/PO Soap2Proxy 消费外部ws示例
ABAP 从CDS VIEW 发布OData Service示例
反思 | 事件总线的局限性,组件化开发流程中通信机制的设计与实现
Date对象(js内置对象)
keytool: command not found
超级宝典&编程指南(红蓝宝书)-读书笔记
SAP 导出Excel文件打开显示:“xxx“的文件格式和扩展名不匹配。文件可能已损坏或不安全。除非您信任其来源,否则请勿打开。是否仍要打开它?
Authorization server (simple construction of authorization server)
王者荣耀-unity学习之旅
随机推荐
手游性能优化
超级宝典&编程指南(红蓝宝书)-读书笔记
1.查看数据库和表
promise all的实现
MySQL storage engine
积性函数与迪利克雷卷积
6. Aggregation function and grouping statistics
js之什么是事件?事件三要素以及操作元素
SAP PI/PO Soap2Proxy 消费外部ws示例
3.排序语句
层次输出二叉树
手游的热更方案与动态更新策略
移动布局(flex布局、视口标签)
canvas学习第一篇
State synchronization and frame synchronization
AuthorizationServer(授权服务器的简单搭建)
SAP PI/PO rfc2RESTful 發布rfc接口為RESTful示例(Proxy間接法)
Thorough inquiry -- understanding and analysis of cocos2d source code
移动Web(字体图标、平面转换、颜色渐变)
NPM installation stepping pit