web-dev-qa-db-ja.com

Windows 7は、ドライバーがデジタル署名されていないと主張していますが、

このシステムでは、WLANAutoConfigサービスは開始されません。

エラーログ/システム:

「WLANAutoConfigサービスは、次のエラーのために開始できなかったNativeWiFi Filterサービスに依存しています:Windowsはこのファイルのデジタル署名を検証できません。最近のハードウェアまたはソフトウェアの変更により、署名が正しくないか破損しているファイルがインストールされた可能性があります。ソース不明の悪意のあるソフトウェアである可能性があります。」

エラー/ログセキュリティ:

「コードの整合性により、ファイルのイメージハッシュが無効であると判断されました。不正な変更によりファイルが破損しているか、無効なハッシュがディスクデバイスエラーの可能性を示している可能性があります。C:\ Windows\system32\drivers\nwifi.sys」

Sfc/scannowを実行しましたが、エラーは見つかりませんでした。

sigverifを実行しましたが、このファイルとvwififlt.sysは署名されていないと表示されます。

次に、 nwifi.sysvwififlt.sys をvirustotalにアップロードしました。これは、署名されていてOKであることを示しています。

最後に、これらのファイルを別のWindows7マシン上の同じファイルと直接比較しました。それらは同一のsha256とmd5の合計を持ち、他のマシンはそれらが署名されていると見なします。

何が起こっている?

6
ali1234

多くの場合、Windowsドライバーには、実際のファイル内にデジタル署名が含まれていません。代わりに、ドライバーのグループのすべての署名が、カタログと呼ばれる単一のファイルにバンドルされます。このファイルが破損した場合、認証するすべてのファイルが未署名としてマークされます。 Windowsは、実際に破損しているのはカタログであるとは通知しません。推測する必要があります。また、どのカタログが破損しているかはわかりません。カタログはc:\windows\system32\catroot\に保存されます。

稼働中のマシンに移動してsigverifを実行してから、ログを確認する必要があります。ファイルには次のような行が表示されます。

nwifi.sys 14/07/2009 2:5.1,2:5.2,2:6.0,2:Signed Microsoft-Windows-ClMicrosoft Windows

Microsoft-Windows-Clは、このファイルの署名を含むカタログの名前の一部です。 Windowsはファイル名全体をわざわざ教えてくれません。この文字列で始まる11個のカタログファイルがあります。実際にどれであるかを見つけるには、WindowsSDKをインストールしてプログラムsigntool.exeを取得する必要があります。 catrootフォルダーの長いCLSIDの下に、この文字列で始まる一連のファイルがあります。どちらが破損しているかを特定するには、signtoolを使用してnwifi.sysを確認します。最終的にあなたはそれを見つけるでしょう:

signtool verify /a /c c:\windows\system32\catroot\{F...}\Windows-Client-Features-Package~31bf3856ad364e35~AMD64~~6.1.7601.17514.cat c:\windows\system32\drivers\nwifi.sys

このコマンドは、通常のWindows 7マシン(wifi付き)で成功します。問題のあるマシンでは失敗します。カタログファイルを比較したところ、それらが異なっていることがわかりました。実際、直接ダブルクリックすると、Windowsは破損したファイルを開くことを拒否しました。もちろん、私がすでにそれを理解するまで、それは問題が何であったかについての手がかりをまったく提供しません。

したがって、この時点でマシンを修正するには、作業中のマシンから壊れたマシンにカタログをコピーするだけです。

7
ali1234