在Windows 10中执行Windows程序的过程是什么?

时间:2018-08-29 09:37:54

标签: windows-10 system32 winsxs

操作系统:Windows 10 LTSB(64位)

目前我正在研究白名单计划。

这是我的问题。

  • 我在c:\ Windows \ System32 \ notepad.exe中有notepad.exe
  • 其哈希值为[9cd1c3d00ae15068 ... 74a]

  • 我在c:\ Windows \ WinSxS \ amd64 ...中有另一个记事本...

  • 其哈希值为[da0acee8f60a460 ... 10a]

因此,就我的白名单而言,基本上它们是不同的程序。 但是无论如何,我都将它们都加入了白名单。

我试图编辑一个批处理文件,该文件触发了notepad.exe被执行。 但是我的白名单程序阻止执行notepad.exe,因为notepad.exe来自c:\ windows \ system32 \ notepad.exe,但哈希值为[da0acee8f60a460 ... 10a]。

但是,如果我再次在System32中检查notepad.exe的哈希值,则该值与以前相同,即[9cd1c3d00ae15068 ... 74a]。

触发时,似乎来自winSxS的notepad.exe已复制到system32。这对系统程序有效吗?

顺便说一句,对于32位的Windows 7来说并没有发生

1 个答案:

答案 0 :(得分:0)

我发现不是WinSxS文件引起了这种混乱。 是sysWow64。

基本上,Windows10提供sysWow64目录以将64位程序模拟为32位。 Windows10会自动将对system32的访问重定向到sysWow64。

因此,当我在System32中计算notepad.exe的哈希值时,操作系统会自动将我重定向到sysWow64中的notepad.exe。 因此,我列表中的哈希值记录为[9cd1c3d00ae15068 ... 74a],但其真正的哈希值为[da0acee8f60a460 ... 10a]

希望这对遇到类似麻烦的人有所帮助。