DrMITM 是一个旨在全局记录所有流量的程序。

DrMITM 向网站发送请求,并返回该网站的 IP,以防网站服务器依赖该 IP 处理请求;同时,发往网站的请求也会被发送到服务器,由服务器记录网站发送的消息,然后返回相同的消息并直接发送给服务器。这样,服务器可能将其视为网站,但一旦程序切换 IP,它也会将我们的请求转发到网站。当程序将我们的请求发送到网站后,它会暂停我们的流量,等待传入流量。当新用户尝试登录或执行其他操作,而网站向服务器发送请求时,DrMITM 会接收该请求,并通过将相同的数据写入文件的方式将数据返回给我们。
Nim 版本: 安装 19.0 版本的 Nim(使用 choosenim 或 git clone) 将仓库克隆到本地 进入目录 运行 nim DrMITM.nim
Python 版本: 安装 Python 将仓库克隆到本地 进入目录 运行 python DrMITM.py
e(实时日志)
b(流量拦截)
r(重定向用户)
--阻止客户端流量到达服务器--(现已可用)
--重定向流量--(现已可用)
有可能,由于配置原因或加密方式变更,或需要欺骗服务器,DrMITM 在嗅探通过多台服务器通信的网站流量时会失败。我之所以说“有可能”,是因为尚未经过测试。
如果你遇到问题,请提交以下信息:
你的问题
你的 Nim 或 Python 版本
操作系统
问题发生前你所进行的操作步骤
问:实时日志是如何工作的? 答:只是将记录的数据发送到文件并在屏幕上输出。
问:流量拦截是如何工作的? 答:从服务器向网站发送一个 Unicode 字符,使传入流量溢出。
问:重定向功能是如何工作的? 答:向客户端发送一个伪造的错误消息及来自服务器的重定向状态码,并附带修改后的位置。