ALPACA - HTTPS に対する MITM 攻撃の新しい手法

ドイツの複数の大学の研究者チームが、セッション Cookie やその他の機密データを抽出したり、別のサイトのコンテキストで任意の JavaScript コードを実行したりできる、HTTPS に対する新しい MITM 攻撃を開発しました。 この攻撃は ALPACA と呼ばれ、さまざまなアプリケーション層プロトコル (HTTPS、SFTP、SMTP、IMAP、POP3) を実装しているが、共通の TLS 証明書を使用する TLS サーバーに適用される可能性があります。

攻撃の本質は、攻撃者がネットワーク ゲートウェイまたはワイヤレス アクセス ポイントを制御できる場合、Web トラフィックを別のネットワーク ポートにリダイレクトし、TLS 暗号化をサポートし、 HTTP サーバーと共通の TLS 証明書であり、ユーザーのブラウザは、要求された HTTP サーバーとの接続が確立されていると想定します。 TLS プロトコルは汎用であり、アプリケーション レベルのプロトコルに関連付けられていないため、すべてのサービスの暗号化された接続の確立は同一であり、間違ったサービスにリクエストを送信するエラーは、サービスの処理中に暗号化されたセッションを確立した後にのみ判断できます。送信されたリクエストのコマンド。

したがって、たとえば、もともと HTTPS 宛てだったユーザー接続を、HTTPS サーバーと共有される証明書を使用するメール サーバーにリダイレクトすると、TLS 接続は正常に確立されますが、メール サーバーは送信されたメッセージを処理できません。 HTTP コマンドを実行すると、エラー コードを含む応答が返されます。 この応答は、要求されたサイトからの応答としてブラウザによって処理され、正しく確立された暗号化通信チャネル内で送信されます。

XNUMX つの攻撃オプションが提案されています。

  • 「アップロード」は、認証パラメータを含む Cookie を取得します。 この方法は、TLS 証明書の対象となる FTP サーバーでデータのアップロードと取得が許可されている場合に適用できます。 この攻撃の亜種では、たとえば、FTP サーバーがリクエストを保存ファイルとして解釈したり、受信リクエスト全体を記録した場合、攻撃者はユーザーの元の HTTP リクエストの一部 (Cookie ヘッダーの内容など) を保持する可能性があります。 攻撃を成功させるには、攻撃者は保存されているコンテンツを何らかの方法で抽出する必要があります。 この攻撃は、Proftpd、Microsoft IIS、vsftpd、filezilla、serv-u に適用されます。
  • クロスサイト スクリプティング (XSS) を整理するための「ダウンロード」。 この方法は、攻撃者が個別の操作を行った結果、共通の TLS 証明書を使用するサービスにデータを配置し、ユーザーの要求に応じて証明書を発行できることを意味します。 この攻撃は、上記の FTP サーバー、IMAP サーバー、POP3 サーバー (Courier、cyrus、kerio-connect、zimbra) に適用されます。
  • 「リフレクション」は、別のサイトのコンテキストで JavaScript を実行します。 このメソッドは、攻撃者が送信した JavaScript コードを含むリクエストのクライアント部分に返すことに基づいています。 この攻撃は、前述の FTP サーバー、cyrus、kerio-connect、zimbra IMAP サーバー、および sendmail SMTP サーバーに適用されます。

ALPACA - HTTPS に対する MITM 攻撃の新しい手法

たとえば、ユーザーが攻撃者によって制御されているページを開くと、このページはユーザーがアクティブなアカウントを持っているサイト (bank.com など) からリソースのリクエストを開始する可能性があります。 MITM 攻撃中、bank.com の Web サイトに宛てられたこのリクエストは、bank.com と共有されている TLS 証明書を使用する電子メール サーバーにリダイレクトされる可能性があります。 メールサーバーは最初のエラー後にセッションを終了しないため、サービスヘッダーと「POST / HTTP/1.1」や「Host:」などのコマンドは不明なコマンドとして処理されます(メールサーバーは、次のエラーに対して「500 unrecognized command」を返します)。各ヘッダー)。

メール サーバーは HTTP プロトコルの機能を理解せず、POST リクエストのサービス ヘッダーとデータ ブロックは同じ方法で処理されるため、POST リクエストの本文に次のコマンドを含む行を指定できます。メールサーバー。 たとえば、次のように渡すことができます: MAIL FROM: alert(1); メールサーバーは501エラーメッセージを返しますalert(1); : 不正なアドレス:alert(1); 従わないかもしれない

この応答はユーザーのブラウザによって受信され、応答が正しい TLS セッション内で受信されたため、攻撃者が最初に開いた Web サイトではなく、リクエストが送信された Bank.com Web サイトのコンテキストで JavaScript コードが実行されます。 、その証明書により、bank.com の応答の信頼性が確認されました。

ALPACA - HTTPS に対する MITM 攻撃の新しい手法

世界規模のネットワークをスキャンしたところ、一般的に約 1.4 万台の Web サーバーがこの問題の影響を受けており、異なるプロトコルを使用したリクエストを混在させることで攻撃を実行できることが判明しました。 他のアプリケーション プロトコルに基づく TLS サーバーが付属している 119 の Web サーバーに対して、実際の攻撃の可能性が確認されました。

エクスプロイトの例は、ftp サーバーの pureftpd、proftpd、microsoft-ftp、vsftpd、filezilla および serv-u、IMAP および POP3 サーバーの dovecot、courier、exchange、cyrus、kerio-connect および zimbra、SMTP サーバー postfix、exim、sendmail に対して準備されています。 、mailenable、mdaemon、opensmtpd。 研究者らは、FTP、SMTP、IMAP、POP3 サーバーと組み合わせてのみ攻撃を実行する可能性を研究していますが、TLS を使用する他のアプリケーション プロトコルでも問題が発生する可能性があります。

ALPACA - HTTPS に対する MITM 攻撃の新しい手法

攻撃をブロックするには、ALPN (Application Layer Protocol Negotiation) 拡張機能を使用してアプリケーション プロトコルを考慮して TLS セッションをネゴシエートし、SNI (Server Name Indication) 拡張機能を使用してホスト名にバインドすることが提案されています。複数のドメイン名をカバーする TLS 証明書。 アプリケーション側では、コマンド処理時のエラー数の制限を設け、その後接続を終了することをお勧めします。 攻撃を阻止するための対策を策定するプロセスは、昨年 1.21.0 月に始まりました。 同様のセキュリティ対策は、Nginx 3.0.4 (メール プロキシ)、Vsftpd 5.1.0、Courier XNUMX、Sendmail、FileZill、crypto/tls (Go)、および Internet Explorer ですでに行われています。

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

コメントを追加します