問題
string_interpret_escape() を呼び出すコードは実際のサイズに基づいてドレインのバッファを割り当て、公開されたポインタはバッファの境界外の領域になります。 したがって、入力文字列を処理しようとすると、割り当てられたバッファの境界外の領域からデータを読み取る状況が発生し、エスケープされていない文字列を書き込もうとすると、バッファの境界を超えて書き込む可能性があります。
デフォルト構成では、サーバーへの安全な接続を確立する際に、特別に設計されたデータを SNI に送信することにより、この脆弱性が悪用される可能性があります。 この問題は、クライアント証明書認証用に構成された構成のpeerdn値を変更することによって、または証明書をインポートするときに悪用される可能性もあります。 リリース時からSNIやpeerdn経由の攻撃が可能
エクスプロイト プロトタイプは、Glibc を備えた Linux システム上の i386 および amd64 アーキテクチャ上で実行される、SNI 経由の攻撃に備えて準備されています。 このエクスプロイトでは、ヒープ領域上のデータ オーバーレイが使用され、ログ ファイル名が保存されているメモリが上書きされます。 ファイル名は「/../../../../../../../../etc/passwd」に置き換えられます。 次に、送信者のアドレスを含む変数が上書きされ、最初にログに保存されます。これにより、新しいユーザーをシステムに追加できるようになります。
ディストリビューションによってリリースされた脆弱性修正を含むパッケージ更新
脆弱性をブロックする回避策として、TLS サポートを無効にするか、TLS サポートを追加できます。
ACL セクション「acl_smtp_mail」:
拒否条件 = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
拒否条件 = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
出所: オープンネット.ru