![保存的远程桌面凭据在本地机器上是否安全?](https://linux22.com/image/1282278/%E4%BF%9D%E5%AD%98%E7%9A%84%E8%BF%9C%E7%A8%8B%E6%A1%8C%E9%9D%A2%E5%87%AD%E6%8D%AE%E5%9C%A8%E6%9C%AC%E5%9C%B0%E6%9C%BA%E5%99%A8%E4%B8%8A%E6%98%AF%E5%90%A6%E5%AE%89%E5%85%A8%EF%BC%9F.png)
保存的远程桌面凭据在本地计算机上是否安全(粗略地说)?至少它们不会以明文形式存储在任何地方,对吗?
编辑:我理解保存密码的固有风险。当然,有效性是有一定范围的,例如通过类似CryptProtectData
(Google Chrome 在 Win32 上使用什么) 显然比以明文形式保存密码更好。
答案1
旧版本的远程桌面客户端将密码存储在.rdp
文件中,很容易被解密。
从远程桌面客户端 v6 开始,凭据使用 Windows 凭据 API 进行存储。密码使用与您的 Windows 用户帐户绑定的密钥进行安全加密(CryptProtectData
如 @StackExchanger 链接到的 SecurityXploded 文章中所述),访问它们需要您的 Windows 密码(或“密码恢复”磁盘)。但是,您运行的任何程序都可以读取它们,例如网络通行证。
请注意,如果有人具有物理访问权限,他们可以使用 Ophcrack 之类的程序破解密码,或者安装键盘记录器。
答案2
根据securityxploded.com,可以轻松从 RDP 会话存储的凭据中恢复密码。
也许更好的解决方案是使用密码保险箱,例如KeePass用于存储凭证以自动化 RDP 登录过程。
答案3
在我看来,你问错了问题。如果有人以某种方式闯入你的机器,并找到一个允许他无需提供密码即可连接到远程机器的 RDP 文件,那么损害已经造成。不仅如此,他还可以使用该远程会话为自己创建新用户,甚至更改当前用户的密码。
解决方案是永远不要在 RDP 文件中保存密码,并保护您的本地计算机。哦,根据过去使用 MS 软件的经验,如果它将密码保存为纯文本或经过轻微哈希处理,我一点也不惊讶。证人他们对 Windows 7 中的 wifi 网络密码的处理。