验证远程桌面上的 NLA 支持

信息安全 渗透测试 远程桌面
2021-09-13 07:58:23

验证 MSRDP 服务器是否启用 NLA 的最佳方法是什么?

我的理解是,如果启用,它在尝试连接时不会显示图形屏幕,而是先询问凭据。

验证这一点的一种方法是使用 rdesktop 实用程序,如果显示用于登录的 GUI 屏幕,请注意未启用 NLA?

3个回答

rdp-sec-check是一个 Perl 脚本,用于枚举远程桌面服务的不同安全设置

如果存在以下潜在安全问题,则会被标记:

  • 该服务支持标准 RDP 安全性。众所周知,这很容易受到活跃的中间人攻击。
  • 该服务支持弱加密(40 位或 56 位)。
  • 该服务不强制要求网络级身份验证 (NLA)NLA 可以帮助防止某些类型的拒绝服务攻击。
  • 该服务支持 FIPS 加密,但不强制要求 - 可能只对需要 FIPS 的司法管辖区感兴趣

rdesktop 支持 CredSSP + Kerberos,这是 NLA 支持的一个子集。如果没有初始化 kerberos 票证,rdesktop 将握手以使用 SSL 与服务器进行传输。如果远程服务器强制使用 NLA,则此回退路径将失败,并且 rdesktop 将向控制台报告此情况。这样您就可以检测远程终端服务器是否强制使用 NLA。

在这种情况下,rdesktop 报告的错误消息是:“连接失败,服务器需要 CredSSP。”

甚至 rdesktop 的更新日志表明它可以支持 CredSSP + Kerberos 身份验证(NLA),但是如果您的 windows 服务器强制使用 NLA,那么您仍然会收到错误消息:连接失败,服务器需要 CredSSP..