微软的远程桌面协议支持NLA即网络级别的身份验证,这项功能旨在验证用户身份进而提供远程桌面安全性。安全研究人员称,Windows 1903 更新中存在的网络身份验证(NLA)bug,可被攻击者利用来控制远程会话。据悉,NLA 旨在防止攻击者远程登录到用户的 Windows PC 。它会要求登录者提供必要的详情,以便进行身份验证。原本攻击者不应该知晓这些细节,除非你与外界进行了分享。
具体情况大概是这个样子:
在旧版本里开启网络级别的身份验证后用户可以成功连接远程会话,但连接后要在登录界面输入被控端密码。如果没有被控端的用户名和密码自然也无法登录,相对来说这种安全性更好因为不小心泄露远程密码也没事。而在 Windows 10 Version 1903 版里用户初次连接远程会话后,身份验证系统会将登录凭据缓存到主机上。用户如果断开连接那么可以重新连接远程桌面会话并立即自动登录,不需要用户输入被控端的用户名和密码。更糟糕的是研究人员还发现新版本的网络级别身份验证甚至可以绕过多因素认证系统进而直接登录被控设备。
对于此事,NakedSecurity 已经向计算机应急响应小组(CERT / CC)发出了警告,后者已经在一份安全公告(VU#576688)中给出了详细的介绍。
受此影响,重新连接的 RDP 会话将还原到登录后的界面、而不是留在登录屏幕上,意味着无需手动输入任何凭据、即可完成远程系统解锁。
此问题被通报给微软后该公司表示这并不是漏洞而是新功能,这项功能旨在简化用户操作流程提高用户体验。用户初次连接时需要提供账号和密码,如果已开启多因素身份验证则同时还需要输入对应的验证码才可连接。此后登录凭据被缓存后即可直接使用,由于此前步骤已经确定用户身份因此也不需要再次验证多因素验证码。基于此微软至少暂时不会发布任何安全更新对此进行修复,或许评估后也不会改进这个问题毕竟这是新功能。
最后研究人员提到的这个问题还发现 Windows 10 Version 1903 的新功能,毕竟微软并没有对此有过介绍。当然我们也希望微软在调整涉及安全类问题的策略时能够提前发布通告,然后由用户自己选择使用哪种方式。