2012-04-29 12 views
0

私は署名付き実行可能ファイル (http://live.sysinternals.com/procexp.exe) をダウンロードしようとしました。私はそれができないと思っているし、Windowsは何とかそれを実行する(または少なくとも私に警告する)から私を防ぐでしょう。しかし、1つの文字(例えば、DOSスタブやその他のテキストデータ)を変更しても、それは実行可能です。署名済みの実行可能ファイルを変更することができます

変更する前に、このアプリケーションを実行すると、UACの警告メッセージが表示され、Microsoftに署名して実行するかどうか尋ねられます。修正後、そのようなことはありません。私が変更を元に戻しても、それはまだ表示されません。私は修正された実行ファイルと元に戻された実行ファイルを比較しました。しかし、オリジナルは依然としてUACを飛ばしています。

なぜですか?

私はWindows 7とFirefoxを使用しています。

答えて

1

私はそれをやろうとしたことはありません。ただし、ファイルを編集したときに、デジタル署名が無効になった場合は、ファイルのプロパティにその署名が表示されます。

通常、Windowsではデジタル署名はチェックされません。デジタル署名は、ファイルがインターネットからダウンロードされたものとしてマークされている場合(署名が有効であれば、確認ダイアログでパブリッシャを表示し、そうでなければパブリッシャは不明です)、UAC(この場合、デジタル署名は、ファイルがデジタル署名の一部として保存されたパブリッシャからのものであることも確認します)。

表示するかどうか表示するかどうかUAC確認はデジタル署名で制御されず、アプリケーションマニフェストで制御されます。

私の理解では、UACダイアログが表示されるはずです。しかし、変更されたファイルがデジタル署名のチェックに失敗したため、Windowsはファイルが安全でないと判断する可能性があります。 Windowsのイベントログでメッセージを検索すると、表示される動作を説明するイベントが発生する可能性があります。

+0

ファイルがインターネットからダウンロードされたとしてマークされたという意味はありますか?私はこれが当てはまると思います。 ランダム値を変更してファイルを保存して元に戻してみました。これまで私はプログラムを実行していません。すべての変更が元に戻った後、私はそれを実行し、署名が有効であってもポップアップを表示しませんでした。 だから、どうにかしてファイルの「ダウンロード済み」ステータスが「作成者」に変更されたと思います。この種の情報はどこに保存されていますか?プログラムのマニフェストは何ですか? とにかくありがとう – Samuel

+0

インターネットからファイルをダウンロードすると、いくつかのブラウザ(IEはもちろん最初のものです)にフラグを保存します。ファイルプロパティダイアログ、* General *タブで見ることができます。「このファイルは別のコンピュータからのもので、このコンピュータを保護するためにブロックされている可能性があります」という*属性*の下に* Security *行があります。また、右に* Unblock *ボタンが表示されます。 「アプリケーションマニフェスト」を検索すると、それが何であるかを知ることができます。ファイルを2回修正した後でもデジタル署名が有効なのですか?私は本当にそれを疑う。 –

+0

あなたはそうです、それは実際にそこにあるブロック解除ボタンです。ダウンロードしたファイルにあります。このファイルをコピーした後もコピーに残ります。ファイルを変更すると消えます。私が通常に戻すと、それは再び表示されません。私はマニフェストを検索してお知らせします。 デジタル署名について - 特定のハッシュです。したがって、何かを変更して変更を元に戻すと、元のハッシュと同じハッシュになります(両方のファイルが同じです:))、デジタル署名が有効になります。その目的は変更を防止することではありません。それは違いを見つけることです。 – Samuel

0

他のディレクトリにchrome.exeをコピーし、アプリケーションにランダムなバイトを書き始める。

プロパティを確認したところ、デジタル署名がありました。私はアプリケーションを変更しました。実行することができませんでした(いくつかの内部エラーのキングを与えるのではなくウィンドウエラー)が、プロパティに有効な証明書を表示しています。おかしいです。

私はWindowsがアプリケーションの証明書を1回だけ検証すると思います。

0

ファイルを変更した後でもデジタル署名が表示されますが、その署名の[詳細]ボタンをクリックすると、署名が有効でないことがわかります。 元の内容に正確に戻したときに、署名が有効であることを再度伝えました。 (ただし、改行を加えたり、意図せずにバイトを編集するエディタを使用する必要があります)

関連する問題