Microsoft 远程桌面管理器如何加密密码?

Luk*_*Luk 9 security remote-desktop encryption

存储连接密码时,MS RDP 提供将​​密码存储为明文或加密的功能。

文件中的结果节点看起来像

<logonCredentials inherit="None">
   <userName>USER</userName>
   <domain>DOMAIN</domain>
   <password storeAsClearText="False">AQAdERjHoAwE/Cl+sBAAAA(...)zh</password>
</logonCredentials>
Run Code Online (Sandbox Code Playgroud)

我想知道这种加密有多安全,以及是否可以在同事之间共享文件而没有人能够轻松猜出密码。

我猜“不多”,但我无法确切地找到该加密链是如何生成的。

任何的想法?谢谢!

Sco*_*ain 6

我不知道 RemoteDesktopManager 是如何做到的,但我认为它与将它存储在 .RDP 文件中的方式相同

CryptProtectData(使用它们用于 RDP 的设置)只允许在与加密它的机器相同的机器上解密字符串,因为它使用 Windows 安装的唯一 ID 作为加密过程的一部分( CRYPTPROTECT_LOCAL_MACHINE 标志)。所以是的,攻击者可以解密您的密码,但他们只能在存储密码的机器上进行,他们不能进行“离线”攻击。


请注意,这都是针对.RDP文件的。我无法知道远程桌面管理器是否也做同样的事情。