Ghostscriptにコード実行を可能にする脆弱性が見つかりました

数年前 彼らがニュースを発表した日 識別されたものの Ghostscriptの脆弱性(CVE-2020-15900) どのような可能性 ファイルの変更と任意のコマンドの実行を引き起こす 特別にフォーマットされたPostScriptドキュメントを開くとき。

Ghostscriptに慣れていない人は、次のことを知っておく必要があります。 これはPostscriptおよびPDFコンテンツのレンダリングエンジンです また、PDFおよびPostscriptドキュメントをプレビュー、サムネイル、および印刷の目的で画像に変換するために一般的に使用されます。

また、Androidの人気のあるビューアを含む、多くのPDFビューアのフル品質のドキュメント複製にも使用され、クラウドでのレンダリングについてGoogleなどのいくつかの大企業からライセンスを受けています。

Ghostscriptの脆弱性について

バグは、rsearch演算子の使用で特定されました 非標準のPostScript タイプuint32_tのオーバーフローを引き起こす可能性のあるドキュメント内 サイズを計算するとき、 バッファからメモリ領域を上書きする ファイルシステム上のファイルに割り当てられ、アクセスを取得します。これを使用して、システム上で任意のコードを実行する攻撃を仕掛けることができます(たとえば、〜/ .bashrcまたは〜/ .profileにコマンドを追加することにより)。

AFLによって検出されたスニペットは、空の文字列をスタックにプッシュしました。空の角かっこ()は、これへの参照をコピーし、XNUMXつの空の文字列()()を含むスタックを作成してから、逆ルックアップを実行しました。 つまり、最後から空の文字列の中から空の文字列を探していました。

残念ながら、彼らは空の文字列が検索される境界のケースを見逃しました。 空の文字列を検索する場合、これは即時成功として定義されます。検索するものがないため、最後までジャンプします。 ただし、結果は、一致前、一致、および一致後の値に分割する必要があります。 残念ながら、コードは少なくとも4,294,967,295回は調べたと想定し、ゼロからXNUMXを引くことによって試合後の結果の長さを誤って計算したため、最大値のXNUMXに戻りました。

このエラー 故障の可能性があるメモリ破損の欠陥です そしてそれはいつも起こります。 スタックガードなどを扱う必要はありません。大容量のメモリセグメントに対して必要なものを読み書きするだけです。 これにより、経験豊富なエクスプロイトライターではない人でも簡単にエクスプロイトを利用できるようになりました。

このアンダーフローのため、この文字列は割り当てられたことがなく、実際のスペースを占有しませんでした。 しかし、それは別のメモリに拡張された長さを持っていました。 ランダムなアドレスでそのメモリを読み書きしようとすると、メモリの制限を超えてしまうため、すべてのファジングエラーが発生します。 ただし、次のコードスニペットを使用して、参照を保存して使用できるようにすることができます。

それを考慮に入れることが重要です Ghostscriptの脆弱性はより深刻ですこのパッケージは、多くの一般的なPostScriptおよびPDF処理アプリケーションで使用されているためです。 たとえば、Ghostscriptは、デスクトップでサムネイルを作成するとき、バックグラウンドでデータにインデックスを付けるとき、および画像を変換するときに呼び出されます。

攻撃を成功させるには、多くの場合、エクスプロイトファイルをダウンロードするか、Nautilusでそれを使用してディレクトリを参照するだけで十分です。

Ghostscriptの脆弱性は、イメージドライバーを介して悪用される可能性もあります ImageMagickおよびGraphicsMagickパッケージに基づいて、画像の代わりにPostScriptコードを含むJPEGまたはPNGファイルを渡します(MIMEタイプはコンテンツによって認識され、拡張子に依存しないため、このファイルはGhostscriptで処理されます)。

ソリューション

この問題はバージョン9.50から9.52に影響します (バグはバージョン9.28rc1以降に発生していますが、脆弱性を特定した研究者によると、バージョン9.50以降に発生しました)。

しかし、それに加えてバージョン9.52.1で修正がすでに提案されており、アップデートが公開されました Debian、Ubuntu、SUSEなどの一部のLinuxディストリビューション用のパッチパッケージの一覧です。

一方、RHELのパッケージは影響を受けません。

出典 https://insomniasec.com


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。