为什么 AppLocker 使用的 SHA256 哈希与其他生成器不同?

为什么 AppLocker 使用的 SHA256 哈希与其他生成器不同?

AppLocker 显示/导出的 SHA256 哈希与其他工具生成的哈希不同。

有人能解释一下为什么吗?

例子:Putty.exe 0.62

  • 随机在线工具:d4ffa4559a1e22167933772d82cf714cd4bb7a0e79511c2424e18bdb619d63a4

    Windows 7 上的 AppLocker代码:E0517EA6C2896CAA97D6CBF4E8CAEA00409F03703E888E83CFBC460F7682F337

我在这里使用 PowerShell cmdlet Get-AppLockerFileInformation 检索 AppLocker 哈希。

答案1

E051...您看到的哈希不是 SHA256 哈希。它是验证码哈希。

AppLocker 自行计算哈希值。在内部,它对可移植可执行文件 (Exe 和 Dll) 和 Windows 安装程序使用 SHA2 Authenticode 哈希,对其余文件使用 SHA2 平面文件哈希。

看起来它Putty.exe没有经过数字签名。尽管如此,AppLocker 确定该文件是可执行文件后,就会计算 Authenticode Hash。

有关如何计算哈希值的详细信息,请参阅计算 PE 映像哈希值这份微软文档

现在为什么AppLocker(或者更可能是 cmdlet 本身)声称这是 SHA256 哈希,这很神秘。这很可能是一个外观错误。

相关内容