リモートで悪用される可能性のあるqmailの脆弱性が見つかりました

Qualysのセキュリティ研究者は 悪用の可能性 qmailメールサーバーの脆弱性、 2005年(CVE-2005-1513)から知られていますが、修正されていません。 qmailは、実用的なエクスプロイトを作成することは非現実的であると主張しました これは、デフォルト構成のシステムを攻撃するために使用される可能性があります。

しかし、qmail開発者は Qualysがエクスプロイトを準備することができたので、彼らは間違っていました これはこの仮定に反論し、特別に細工されたメッセージを送信することにより、サーバー上でリモートコード実行を開始できるようにします。

この問題は、stralloc_readyplus()関数のオーバーフローが原因で発生します。これは、非常に大きなメッセージを処理するときに発生する可能性があります。 この操作には、64GBを超える仮想メモリ容量を備えた4ビットシステムが必要でした。

2005年の最初の脆弱性分析で、Daniel Bernsteinは、割り当てられた配列のサイズが常に32ビット値に適合するというコードの仮定は、各プロセスにギガバイトのメモリを提供する人がいないという事実に基づいていると主張しました。

過去15年間で、サーバー上の64ビットシステムが32ビットシステムに取って代わり、提供されるメモリの量とネットワーク帯域幅が劇的に増加しました。

qmailに付属するパッケージは、Bernsteinのコメントと qmail-smtpdプロセスを開始すると、使用可能なメモリが制限されていました (たとえば、Debian 10では、制限は7MBに設定されていました)。

しかし、 Qualysのエンジニアは、これでは不十分であることを発見しました また、qmail-smtpdに加えて、リモート攻撃をqmail-localプロセスで実行できます。これは、テストされたすべてのパッケージで無制限のままでした。

証拠として、エクスプロイトのプロトタイプが用意されました。 これは、デフォルト構成のqmailでDebian提供のパッケージを攻撃するのに適しています。 攻撃中のリモートコード実行を整理するには、 サーバーには4GBの空きディスク容量と8GBのRAMが必要です.

このエクスプロイトにより、任意のコマンドを実行できます 「/ home」ディレクトリに独自のサブディレクトリを持たないrootおよびシステムユーザーを除く、システム上のすべてのユーザーの権限を持つシェル

攻撃は、非常に大きな電子メールメッセージを送信することによって実行されます。 これには、ヘッダーに複数の行が含まれ、サイズは約4GBと576MBです。

qmail-localで上記の行を処理する場合 ローカルユーザーにメッセージを配信しようとすると、整数オーバーフローが発生します。 整数オーバーフローは、データをコピーするときにバッファオーバーフローを引き起こし、メモリページをlibcコードで上書きする機能をもたらします。

また、qmail-localでqmesearch()を呼び出すプロセスでは、ファイル ".qmail-extension"がopen()関数を介して開かれ、システムの実際の起動につながります( ".qmail-extension")。 ただし、「extension」ファイルの一部は受信者のアドレスに基づいて形成されるため(たとえば、「localuser-extension @ localdomain」)、攻撃者はユーザー「localuser-;」を指定してコマンドの開始を整理できます。 コマンド; @localdomain»メッセージの受信者として。

コードの分析により、追加パッチにXNUMXつの脆弱性も明らかになりました Debianパッケージの一部であるqmailのチェック。

  • 最初の脆弱性(CVE-2020-3811)は、電子メールアドレスの検証をバイパスすることを可能にし、2020番目の脆弱性(CVE-3812-XNUMX)は、ローカル情報の漏洩につながります。
  • XNUMX番目の脆弱性は、ローカルドライバーへの直接呼び出しを通じて、rootのみが使用できるファイルとディレクトリ(qmail-verifyはroot権限で開始)を含む、システム上のファイルとディレクトリの存在を確認するために使用できます。

このパッケージ用に一連のパッチが用意されており、alloc()関数コードにハードメモリ制限を追加することで2005年の古い脆弱性を排除し、qmailに新しい問題を追加しています。

さらに、qmailパッチの更新バージョンが別途用意されました。 notqmailバージョンの開発者は、古い問題をブロックするパッチを準備し、コード内で発生する可能性のあるすべての整数オーバーフローを排除するための作業も開始しました。

出典 https://www.openwall.com/


記事の内容は、次の原則に準拠しています。 編集倫理。 エラーを報告するには、 ここで.

コメントを最初に

コメントを残す

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

*

*

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