57

最近 、フィンランドのインターネット セキュリティ専門家のこのビデオを見ました。11 分頃のどこかで、彼は画像に隠され、画像が表示されようとしているときに実行されるウイルスについて話します。

彼らは技術的にどのようにそのようなことを行うのだろうか、つまり、ウイルス実行されるのはなぜなのか、いつ画像が表示されるべきなのか、そして画像が何らかの形で侵害されないのはなぜなのか. 私は、コンピューターが最初に拡張機能を見て、適切なプログラムでそれを開いて、プログラム自体を動作させると考えました (そして、通常の画像ビューアーがそれ自体でウイルスを実行できるとは思いません)。明らかにそのようには機能しませんが、私が尋ねた誰もこれを手伝ってくれませんでした.

それで、彼らがこれをどのように行うか、原則を知っている人はいますか?どうもありがとうございました。

4

4 に答える 4

55

OS がプログラムを選択し、イメージを開くように要求することは正しいです。OS はプログラムにイメージの実行を要求しません— それはナンセンスです。

ただし、画像は複雑な形式であり、多くの場合、メタデータ (写真が撮影された日時など) やその他の直接表示されない部分が含まれています。画面上の画像に影響を与えることなく、そこにあるものを隠すことができます。そのため、画像ファイル内に敵対的なデータが潜んでいる可能性があります。

さらに、プログラムにはバグ、特にバッファ オーバーフローが含まれる場合があります。簡単に言うと、ウイルスはメタ データ セクションに非常に大きなデータ (イメージをデコードするプログラムが予想するよりも大きなデータ) を配置することで、これを悪用する可能性があります。内部バッファがオーバーフローし、十分なスキルがあれば、ウイルス作成者は実行可能コードをメモリ内の適切な場所に配置して、イメージをデコードするプログラムがコードを実行するようにすることができます。そうすれば、イメージのような無害で「死んだ」ファイルがエクスプロイトをホストする可能性があります。

于 2012-03-12T22:56:24.620 に答える
2

ウイルスは画像に情報を保存したり、画像表示プログラムの脆弱性を悪用したりできます。悪意を持って画像を変更し、その画像を開く可能性のあるプログラムが破壊され、そのプロセスでエクスプロイトがトリガーされるように、画像を「感染」させることはできません。

ウイルスがプログラム X を悪用するために画像に不正な形式のデータを挿入し、その画像をプログラム Y で開くと、画像が不正すぎるためにレンダリングされないか、無害またはランダムに見える画像としてレンダリングされる可能性があります。そのプログラム。

これらすべてと同様に、欠陥は画像フォーマットにあるのではなく、画像デコーダの実装にあります。

于 2012-03-12T23:30:43.977 に答える
2

表示する必要はありません。読む必要があります。

OS には、見つかったすべての画像を解析するサムネイル生成スレッドがある場合があります。そのコードでバッファ オーバーフローが発生すると、ユーザーの介入なしにコードを実行できます。

これは、mp3 のプロパティを抽出したり、PDF にインデックスを付けたりするための、あらゆる形式の自動読み取り機能を持つファイルに当てはまります。

于 2012-03-12T23:16:53.783 に答える