中间人环境mitmproxy搭建

需求及硬件环境

模拟中间人攻击:

  • 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

中间人查看是否捕获到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西杭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值