Exim に重大な脆弱性があり、root 権限でサーバー上でコードが実行される可能性があります。

Eximメールサーバー内 特定された クリティカル 脆弱性 (CVE-2019-10149)、特別に作成されたリクエストを処理するときに、root 権限を持つサーバー上でリモート コードが実行される可能性があります。 この問題が悪用される可能性は、バージョン 4.87 から 4.91 まで、または EXPERIMENTAL_EVENT オプションを使用してビルドする場合に指摘されています。

デフォルト設定では、外部アドレスの追加チェックを実行する「verify = 受信者」ACL が適用されるため、ローカル ユーザによる不必要な複雑化を伴うことなく攻撃を実行できます。 リモート攻撃は、別のドメインのセカンダリ MX として機能する、「verify=recipient」ACL を削除する、または local_part_suffix への特定の変更など、設定が変更されたときに発生する可能性があります。 攻撃者がサーバーへの接続を 7 日間開いたままにしておくことができる場合 (たとえば、タイムアウトを回避するために XNUMX 分あたり XNUMX バイトを送信する)、リモート攻撃も可能です。 同時に、問題をリモートから悪用するためのより単純な攻撃ベクトルが存在する可能性があります。

この脆弱性は、/src/deliver.c ファイルに定義されているdelivery_message() 関数で受信者のアドレスが正しく検証されないことが原因で発生します。 アドレス形式を操作することにより、攻撃者は root 権限で execv() 関数を通じて呼び出されるコマンドの引数に自分のデータを置き換えることができます。 この操作には、バッファ オーバーフローやメモリ破損に使用される複雑な手法を使用する必要はなく、単純な文字置換で十分です。

この問題は、アドレス変換のための構造の使用に関連しています。

delivery_localpart = Expand_string(
string_sprintf("${local_part:%s}", new->address));
delivery_domain = Expand_string(
string_sprintf("${ドメイン:%s}", 新しい->アドレス));

Expand_string() 関数は、外部ハンドラーの起動につながるコマンド「${run{コマンド引数}」の認識を含む、非常に複雑な結合器です。 したがって、SMTP セッション内で攻撃するには、ローカル ユーザーは「RCPT TO “username+${run{...}}@localhost”」のようなコマンドを送信するだけで済みます。ここで、localhost は local_domains リストのホストの XNUMX つです。 username は既存のローカル ユーザーの名前です。

サーバーがメールリレーとして機能する場合は、コマンド「RCPT TO "${run{...}}@relaydomain.com"」をリモートから送信するだけで十分です。ここで、relaydomain.com は、relay_to_domains にリストされているホストの XNUMX つです。設定セクション。 Exim はデフォルトで特権モードをドロップしない (deliver_drop_privilege = false) ため、「${run{...}}」経由で渡されたコマンドは root として実行されます。

注目に値するのは、この脆弱性が 排除された 4.92月にリリースされたXNUMXリリースでは、この修正がセキュリティ上の問題を引き起こす可能性があるとは強調していなかった。 この問題は開発中に修正されたため、Exim 開発者による意図的な脆弱性の隠蔽があったと信じる理由はありません。 修正 これは、誤ったアドレスが送信されたときに発生する障害であり、この脆弱性は Exim の変更の監査中に Qualys によって特定されました。

ディストリビューションで引き続き使用される以前のバージョンの修正は、現在、次の方法でのみ入手可能です。 パッチ。 この問題を修正するための以前のブランチの修正リリースは 11 月 XNUMX 日に予定されています。 パッケージのアップデートの準備ができました Debianの, Ubuntu, openSUSEの. アーチのLinux и フェドーラ 彼らはバージョン 4.92 を提供していますが、このバージョンでは問題は発生しません。 RHEL と CentOS の問題 影響を受けない, Exim は通常のパッケージ リポジトリに含まれていないためです。

出所: オープンネット.ru

コメントを追加します