使用Windows 7密码自动访问Truecrypt / Keepass等

本文关键字:Truecrypt Keepass 访问 Windows 密码 使用 | 更新日期: 2023-09-27 18:36:37

我基本上想自动挂载一个(非系统)Truecrypt卷或启动Keypass,只是用一个(安全)密码保护,Windows 7用于默认身份验证。我正在使用 C#。

    登录
  1. 后是否可以获取此密码?
  2. 或者无论如何,当我在登录过程中实际输入密码时获取此密码。

对于 1.我找不到任何东西(密码没有存储在任何地方,只是存储了密码的哈希值)

对于 2.我已经尝试了一些东西。我有一个程序要在用户登录之前执行 GPEDIT.MSC计算机配置 -> Windows 设置 ->脚本 ->启动。然后我尝试使用全局密钥钩子获取密码(尝试GetAsyncKeyStateSetWindowsHookEx)。当我在登录时尝试捕获密钥时,两者都运行良好,但在登录过程中则不然。

但是我找到了一个键盘记录软件(精英键盘记录器),它实际上能够以这种方式获取密码(登录时)。(我在VMWare中尝试了试用版)。其他事情如果在VM Ware和真实机器上尝试。

感谢您的任何帮助或提示。

使用Windows 7密码自动访问Truecrypt / Keepass等

我正在对批处理脚本做类似的事情,以便在使用 Windows 10 登录 Windows 时自动挂载 Truecrypt(或 Veracrypt,如果您愿意的话)卷。 我使用 KeePass 文件设置来使用 Windows 身份验证来安全地存储加密的卷密码。

过程如下:1) 创建您的 truecrypt 或 veracrypt 非系统卷2) 创建一个 KeyPass 文件,以保存包含加密卷密码的条目。将 KeyPass 文件设置为在您希望驱动器自动装载时使用的登录名下使用 Windows 身份验证。3) 使用如下所示的批处理脚本打开加密卷。 通过使用 Windows 身份验证将密码存储在 KeyPass 文件中,可以防止在批处理文件中以纯文本形式公开密码。 您需要根据特定系统修改此脚本。

@ECHO Mounting Secure Drive (S:)
@ECHO OFF
SETLOCAL EnableDelayedExpansion 
SET x=0
FOR /F "usebackq" %%F IN (`"C:'Program Files (x86)'KeePass Password Safe 2'KPScript.exe" -c:GetEntryString C:'<LocationOfYourKeePassFile>'<keepassfilename>.kdbx -useraccount -ref-Title:<entrytitle> -Field:Password`) DO (
 SET Pass!x!=%%F
 set /a x+=1
)
"C:'Program Files'TrueCrypt'truecrypt" /v 'Device'Harddisk0'Partition4 /ls /s /q /p %Pass0% /b /h n /w

4)最后,设置一个Windows任务计划程序以在Windows登录时运行批处理。 目标用户帐户的触发器应为"登录时"。操作应为"启动程序",目标为批处理脚本的完整路径

我喜欢这种方法的另一个功能是,我可以将加密的文件卷密码保存在其他地方,以防Windows帐户损坏或删除。 即,我可能会失去对设置为使用 Windows 身份验证的 KeyPass 文件的访问权限,但如果我将实际的加密磁盘密码保存在其他地方,我仍然可以恢复对加密卷的访问。

有一种方法可以在Windows登录后自动解锁KeePass数据库及其主密码。您可以在其他计算机上使用相同的数据库,因为它不会绑定到您的 Windows 用户帐户。有关详细信息,请参阅此超级用户答案。

您将 KeePass 数据库更改为使用您的 Windows 帐户作为主密钥,然后为 KeePass 安装 TrueCrypt 插件。然后,您在KeePass中有一个条目,其中包含TrueCrypt挂载的密码,该密码也已注册到TrueCrypt插件中。

完成此操作后,登录后,打开KeePass并选择条目,然后单击Ctrl + T,即可将卷装入TrueCrypt