当企业转移到偏远地区时,由于RDP易于设置和使用,因此公司选择了RDP。但是过渡非常紧迫,并非所有人都对安全性给予了必要的重视。结果,网络罪犯把目标对准了组织。
在本文中,我们决定分析RDP协议的弱点,并告诉您如何保护公司的基础架构。我们还通过在多个服务器上部署RDP蜜罐进行了一项实验,并描述了在入侵者未经授权的连接下可以检测到的取证伪像。
DP RDP的弱点
如今,可以从外部网络访问全球近400万个RDP服务器。大多数情况下,只有内部网络可以提供这些服务。
攻击者通常会特别寻找RDP服务器中的弱点,以便将其用于自己的目的。例如,RDP经常遭受暴力攻击。此外,在过去两年中,专家们发现了与RDP相关的严重RCE漏洞。
蛮力攻击
RDP上最常见的攻击是蛮力攻击。它们可以大致分为几组。
- 最简单的攻击,包括不使用任何自动化工具即可猜测基本密码的攻击。
- 字典攻击,在此期间,将对目标用户名使用所有可能的密码进行蛮力攻击。
- , , , .
- Password spraying, , .
- Credential stuffing, .
攻击者获取了一对登录名和密码后,就可以完全访问受感染系统。
组织通常会适当考虑和保护最简单的字典攻击。例如,通常计划在几次失败的登录尝试后锁定一个帐户。
同时,通常会忘记密码喷雾和凭据填充攻击。然而,这种攻击现在并不少见,相反,已经变得司空见惯。阻止尝试多次RDP登录失败的IP地址有助于解决这些问题。同样,禁止重复使用密码也不会是多余的。另外,您不应在多个资源上使用相同的密码。
漏洞
自2019年以来,已经发现了几个与RCE相关的严重RDP漏洞。他们的利用导致在目标系统上远程执行代码。
名为BlueKeep的漏洞CVE-2019-0708不是在RDP协议本身中发现的,而是在远程桌面服务的实现中发现的。此漏洞使未经身份验证的用户可以在目标系统上远程执行任意代码。该漏洞影响Windows的较早版本:从Windows XP(Windows Server 2003)到Windows 7(Windows Server 2008 R2)。为使其成功运行,您只需要对具有Windows易受攻击版本和运行RDP服务的计算机进行网络访问。为此,攻击者将特制的RDP请求发送到服务,这使攻击者可以在目标系统上远程执行任意代码。有关BlueKeep的信息于2019年5月发布,但仍有超过28.9万台RDP服务器易受攻击。
漏洞CVE-2019-1181 / 1182/1222/1226与BlueKeep几乎相同。但是,虽然以前的漏洞仅影响旧版本的Windows,但现在所有新版本的操作系统都处于危险之中。为了利用这些漏洞,攻击者还需要使用RDP协议向目标系统的远程桌面服务发送特制请求,该协议将允许执行任意代码。这些漏洞于2019年8月发布。
在Windows Server(2012、2012 R2、2016和2019)的Windows远程桌面网关组件中发现了另一个漏洞-BlueGate(CVE-2020-0609 / 0610)。它还允许攻击者通过RDP和特制请求在目标系统上远程执行代码。 BlueGate于2020年初发布。
▍恶意软件和RDP
RDP的弱点仍然不会被恶意软件操作者所忽视。网络犯罪分子在有针对性的攻击中使用公开的RDP凭据并不罕见。
攻击者获得对目标系统的RDP访问权限后,便会手动禁用防病毒保护并启动恶意软件。这种攻击通常在受感染的系统上运行勒索软件,例如Dharma(又名Crysis)。
▍入侵者诱饵,或我们如何部署蜜罐
我们决定进行实验,并检查可从外部网络访问的RDP服务器会发生什么情况。为此,部署了两个蜜罐。我们在Python-RDPY中使用了RDP协议的实现,可以在公共领域中找到它 。
一个蜜罐部署在DigitalOcean公共服务器上,另一个蜜罐部署在我们组织网络中的服务器上。互联网提供了三个端口:
- 标准端口是3389;
- 两个非标准端口-36和25300。
下面的屏幕快照显示了连接时显示的窗口。
标准端口3389在网络上引起了最大的关注,在蜜罐工作的一个半月中,总共记录了15次暴力破解尝试和237次试图将无效数据写入公用服务器上的套接字的尝试。在组织网络中的服务器上分别进行了16次和135次尝试。
同样,正如您所期望的,标准端口3389受到了来自网络的大量扫描。同时,对公共服务器的扫描频率平均是组织网络中服务器的2.5倍。
扫描速率可以在下图中看到。这里的垂直线表示在蜜罐期的周六和周日。在大多数情况下,工作周结束时网络扫描会下降。
水平-蜜罐工作的天数,垂直-连接数。
蓝色曲线是公共北方,橙色曲线是组织网络中的服务器。
垂直线-星期六和星期日。
几乎没有尝试扫描非标准端口。因此,将RDP移植到非标准端口将有助于抵御大多数攻击。
▍安全
总结以上所有内容,我们可以推断出一些规则,这些规则在通过RDP进行远程连接时将有助于保护基础结构。
- RDP. , . .
- VPN. , VPN -.
- , , , , , . . password spraying credential stuffing.
- IP-, RDP. password spraying credential stuffing.
- . -.
- 设置RDP事件的审核,并定期检查您的连接日志以及时捕获可疑活动。
here在哪里寻找RDP连接的痕迹▕
如果您怀疑通过RDP破坏系统,可以自己尝试几个步骤。
- 日志。首先,您应该立即检查事件日志:
- %SystemRoot%\ System32 \ Winevt \ Logs \ Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx
事件1149,用于在登录和密码身份验证之前但在对连接源IP地址进行身份验证之后成功进行连接。寻找来自异常IP地址的连接非常重要;暴力密码也可以从此处获得。 - %SystemRoot%\System32\Winevt\Logs\Security.evtx
4624 — , 4625 — , 4778 — , 4634 — . «LogonType». 3, 10 7. IP-, — . - %SystemRoot%\System32\Winevt\Logs\Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx
21, 22 25 — , 23 — . IP-.
IP-, . , (, .).
. Security.evtx, — Security.evtx Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx . , SIEM-. - %SystemRoot%\ System32 \ Winevt \ Logs \ Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx
- . , , . RDP-, . , , TCP (, RDP). . , , X, X+N . , .
如果找到痕迹
如果您发现通过RDP成功渗透的痕迹,则必须首先:
- 尝试隔离攻击者(或将基础结构与Internet完全断开连接,或将关键服务器与本地网络断开连接);
- 检查域控制器是否有黑客入侵的迹象,并检查文件转储和攻击者的其他可能目标。
感染很有可能已经通过内部资源传播。如果发生这种情况,则需要检查PowerShell启动事件,防病毒触发器和其他事件。最好的办法是立即联系计算机取证专家。