2012-02-18 24 views
1

私は解決策なしでこれを研究し続けていました。system32/driversフォルダ内のデジタル署名を確認する

私は、ドライブフォルダ(C:\ Windows \ System32 \ drivers * .sys)のファイルのデジタル署名を確認しようとしています。あなたがそのフォルダからC:\にファイルを移動すると、テストが機能するので、コードが正しいことがわかります。

WinVerifyTrustがエラーに80092003 http://pastebin.com/nLR7rvZe

CryptQueryObjectを与えるエラーに80092009 http://pastebin.com/45Ra6eL4

を与える契約とは何ですか?

答えて

5

0x80092003 = CRYPT_E_FILE_ERROR =ファイルの読み取りまたは書き込み中にエラーが発生しました。

0x80092009 = CRYPT_E_NO_MATCH =オブジェクトを検索しようとすると一致しません。

64ビットマシンで実行していると思いますが、WOW64ファイルシステムのリダイレクトによってsyswow64 \ driversにリダイレクトされますが、これは空です。 Wow64DisableWow64FsRedirection()でリダイレクトを無効にすることができます。

+0

これは問題を解決しているようですが、私は追加の困難に苦しんでいます。それでも調査していますが、ファイルによっては失敗するものもあれば、失敗したものもあります。 – SNyamathi

3

ファイルのプロパティを右クリックして表示すると、デジタル署名が表示されますか?ほとんどの場合、ファイルはカタログの一部であり、カタログAPIを使用して証明書データベースから証明書を抽出して検証する必要があります。