最近,我看到一些防病毒软件要求我提供 Windows 凭据才能登录我的计算机,于是就尝试找回我的 Windows 密码。所以我想我也可以获取自己的凭据。
经过一番研究,我发现我们的凭证存储在C:\Windows\System32\config\SYSTEM
文件夹中。
所以我想问一下;
- 有办法打开该文件吗?我该如何打开它?
- 即使我打开它,它是可读格式还是加密格式?
答案1
中的文件\Windows\System32\config\
是注册表配置单元。从技术上讲,它们的二进制格式可以直接用第三方软件读取,但迄今为止,在 Windows 中加载它们并通过regedit.exe
或使用注册表 API 的第三方软件访问它们的最简单方法。SYSTEM(和 SAM,实际上是 Windows 身份验证的大部分内容所在)位于HKEY_LOCAL_MACHINE
根键下。您还可以从计算机中提取注册表配置单元,以将其加载到另一台计算机上。regedit
有一个打开和安装注册表配置单元的选项。
请注意,在任何启动的 Windows 机器上,SYSTEM 和 SAM 注册表配置单元都将由操作系统安装并锁定,以防止通过文件系统进行访问。如果您在另一台机器上安装硬盘(或从 DVD 或闪存驱动器等启动),则可以直接访问这些文件。理论上您也可以卸载注册表配置单元,但如果卸载 SYSTEM 和 SAM 等对系统至关重要的注册表配置单元,计算机将急剧停止工作,因此操作系统不允许这样做。
Windows 密码可以以几种不同的方式存储,但目前最常见的是 NTLMv2 哈希(具体来说,是 NT 单向函数 v2 的输出,或NTOWFv2)。这些相对容易破解;它们使用过时的 MD4 和 MD5 哈希算法,并且不包含任何限制哈希计算速度的内容(例如 PBKDF2 需要重复相同哈希过程多次的方式)以减慢暴力破解速度。尽管如此,您不会看到纯文本形式的实际密码。即使操作系统配置为可以获取密码的纯文本(默认情况下不是),它们也会在对称加密下静止存储,因此您需要获取加密密钥。然而,几乎每个人都只使用密码哈希,并且通常只使用 v2 形式(虽然按照现代标准很糟糕,但比 NTLMv1 和 NT 之前的 LANMAN 单向函数要好得多)。