中间人攻击(Man-in-the-
MiddleAttack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。
本次试验地址:https://www.hetianlab.com/expc.do?ec=ECID172.19.104.182015011915514700001&pk_campaign=freebuf-
wemedia。
看下实验描述实验主机在8002和8003端口上分别运行了两个服务,这两个服务互相进行通信,且通信内容会进行加密处理,请对这两个服务进行分析,并还原出被加密的flag字符串。提示:你需要充当中间人完成两个端口之间信息的相互转发工作。
来看实验操作,使用nc分别连接实验主机的8002和8003端口(如果服务未运行,请双击C:\Crypto\6\Bob.pyw以及C:\Crypto\6\Alice.pyw脚本),其中8002端口会返回信息“Let’s
encrypt with
RSA!”,而8003端口则没有返回任何信息,根据题目所给的提示“你需要充当中间人完成两个端口之间信息的相互转发工作”,我们将8002返回的信息转发给8003端口,8003返回”OK”,然后把“OK”转发给8002端口,这样不断进行测试,如图所示:
这感觉像RSA加密,我们先获取一下完整的消息内容编写一个Python脚本来完成流量转发的操作(位于实验主机的C:\Crypto\6\TraceLog.py):
#!/usr/bin/env python
– coding:utf-8 –
import socket
if name == " main ":
s1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s2 = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s1.connect((“127.0.0.1”, 8002))
s2.connec