RDP 的安全性如何?

信息安全 rdp 窗口服务器
2021-08-14 04:31:27

我与公司的安全主管工程师发生了冲突。他说远程桌面协议 (RDP)不够安全,我们应该改用TeamViewer我们使用 RDP 不仅可以访问公司网络内的本地资源,还可以访问云托管中的资源(运行 Windows 2012+)。

在这两种情况下,使用 RDP 有多安全?

4个回答

我相信 Teamviewer 是隧道 VNC 连接的代理服务。因此,关于该服务的第一个安全考虑是它在设计上是 MITM 的有迹象表明该服务在几个月前遭到破坏

(请注意,虽然 VNC 使用加密,但默认情况下,整个交换不会被封装 - 但设置 SSL/ssh/VPN 隧道很简单)。

下一个考虑是它意味着在您的系统上安装第三方软件——但是如果您运行的是 Microsoft 平台,那么您已经在运行来自多个供应商的软件,这些软件可能不在您的补丁管理软件中;使软件保持最新是保护系统的最有效方法之一。

只要您的 RDP 连接使用 SSL,它至少应该和 Teamviewer 一样安全,恕我直言,更是如此。

编辑: 根据评论,TeamViewer 企业版中似乎有配置选项的组合,这可能会减少我的担忧。由于我从未使用过这些,因此我无法评估这些以及它们的工作情况。根据评论,它可能是一个错误的解决方案。

我是服务器管理员(Windows 和 Linux),我会阻止任何在服务器上安装 TeamViewer 的尝试,原因如下:

  • 所有数据都通过受信任的(?)第三方服务器传输,这在互联网上:我为什么要信任他们?您确定没有安全漏洞可以让数据路径上的某人攻击系统吗?我是否相信他们的服务器不会受到威胁?
  • 这取决于互联网:网络/互联网问题更有可能禁用远程管理系统的能力
  • 具有专有(未记录?)协议的第三方闭源软件:我应该信任他们并且他们的协议是安全的吗?
  • 我不了解 TeamViewer 的用户/权限管理,但这也可能是一个问题。据我所知,TeamViewer 会为您提供当前登录用户的屏幕,这可能会给审核(哪个人做了某项操作?)和用户权限(连接的人获得前一个连接用户的权限)带来问题。我希望每个人在服务器上都有自己的用户并且不使用相同的(甚至可能是管理员!)用户。

对我来说,有太多的危险信号。

我们的服务器位于一个隔离的子网中,防火墙/交换机仅允许预配置端口进入,并允许用户使用其用户名/密码通过 VPN 连接到该子网。我们遵循纵深防御方法:只有某些组有权与其用户连接到 VPN。在 VPN 内部,他们可以使用 RDP 或 SSH。如果 RDP 中存在安全漏洞,攻击者首先需要访问 VPN 或 LAN。这意味着他们要么是我们的 IT 员工(公司必须在某种程度上信任他们),要么获得 VPN 访问权限,要么物理访问权限,要么入侵其中一台服务器。物理访问意味着闯入数据中心;如果发生这种情况,就会有更大的担忧。IT 人员中的一些人去邮局也是如此。如果他们破坏了其中一台服务器,他们还需要一个特权升级漏洞来进行攻击,因为他们被锁定了帐户。对于 VPN 访问,他需要 VPN 中的漏洞或获得具有 VPN 权限的人的帐户。

所有这一切都仅在存在 RDP 漏洞的情况下进行。很可能只有被归类为高级持续性威胁 ( APT ) 的攻击者,即使用复杂技术在持续攻击中针对您的特定系统的攻击者,才会对 RDP 进行0-day 攻击,而且这种攻击更有可能攻击者将能够在其他软件中使用更简单的方法/漏洞。

除了其他出色的答案之外,TeamViewer 提供的物理安全性较低,因为它需要解锁屏幕才能促进远程会话。

也就是说,任何经过远程管理会话的键盘和监视器的人都可以观察到它,并且如果远程用户没有注意,则可能会接管该会话。

请注意,安装显示驱动程序后似乎可以使屏幕空白,但是必须在每个连接上都这样做,留下机会之窗。

此外,您现在信任的是 TeamViewer 屏幕消隐的安全性,而不是 Windows 锁定屏幕的安全性 - 请确保您对此感到满意。

首先,我对 TeamViewer 一无所知,因此我不会尝试对此发表评论。

历史 RDP 服务器使用“RDP Security”,这确实是一个损坏的协议并且容易受到 MITM 的攻击。不要那样做。甚至 2003r2 也可以为 RDP 执行 TLS,因此没有现代理由应该强迫您使用 RDP 安全性。

Modern Servers 将支持 TLS,因此 RDP 的安全性与 TLS 的安全性直接相关。通过注册表调整,您可以强制执行您喜欢的 TLS 子集 - 强制为 1.2,限制为某些密码套件,也许还有其他东西。

此外,这里还有一个 RDP 特定角度,即服务器可以将连接限制为仅支持“网络级身份验证”的连接。NLA 仍然使用 TLS,它只是在交换中更早地执行身份验证的协议更改。我相信这是为了防止未经身份验证的用户在未经身份验证的情况下反复尝试连接的拒绝服务攻击。

如果您要使用 NLA 解密和跟踪 RDP TLS 会话,您将看到以下内容:

  • X.224 交换,未加密,每个方向 1 个数据包,以确定客户端和服务器是否可以通信 NLA
  • TLS 握手
  • NLA(真的 [MS-CSSP])交换执行身份验证
  • 每个 [MS-RDPBCGR] 的正常 RDP 协议交换