web-dev-qa-db-ja.com

jpg / pngのシェルコード

Jpgファイルにシェルコードを書き込むことが可能な場合、画像をアップロードできるすべてのWebアプリが感染していないのはなぜですか?

クライアントコンピューターでは、シェルコードを実行するためにjpgビューアーを利用する必要がありますか?

5
Peter11

簡単に言うと、シェルコードをjpgファイルに見せかけるにはさまざまな方法がありますが、ファイルを実行する必要があります。これを実行できるかどうかは、サーバーやOSの構成などのさまざまな要因によって異なります。アップロードされたシェルを何らかの方法で(ローカルまたはリモートで)実行パスに含めることができ、特定のセキュリティメカニズムが導入されていない場合は、「jpg」ファイルを実行できます。

したがって、仮装されたjpgをアップロードできたとしても、埋め込みシェルコードを実行できるとは限りません。さらに、jpgファイルの有効性を検出する方法があります(ただし、より高度なマスカレードメソッドでバイパスすることもできます)。

注:シェルコードは単に攻撃のペイロードであり、ビューアに悪用可能な脆弱性が存在し、何らかの形でjpgファイルを実行できる場合にのみ機能します。

6

画像ファイル内のコードを実行するには2つの方法があります。

  1. ゼロデイの脆弱性:スタックバッファオーバーフロー などの脆弱性により、画像を含むファイルの処理中にコードが実行される可能性がありますファイル。これらの脆弱性は一般に知られるとすぐに修正されますが、 不明ではない です。
  2. 直接実行:システムをだましてバイナリのようにイメージファイルを実行させるさまざまな方法があります。 ( 例を参照 。)
3
Neil Smithline