web-dev-qa-db-ja.com

HTTPを介したMITM攻撃から「保護」することは可能ですか?

Twitterでの会話 で、セキュリティの脆弱性についてサイトに警告しました。具体的には、MITM(Man in the Middle)攻撃の可能性が、登録フォームを侵害するために使用されていました。

私の警告に対する反応は、「我々は中間者攻撃から保護します。それゆえ、まだ当てはまりません」でした。

SSLを実装せずにMITM攻撃から「保護」することは可能ですか(SSLも防弾ではないことは承知していますが、常に最初のステップだと思っていました)?

12
David Murdoch

SSL経由で投稿を行っています。これは、資格情報がポストバックで暗号化されるため、パッシブMITMに対する保護を提供しますが、トラフィックを変更できるアクティブな攻撃者に対しては効果がありません。ポストバックURLを変更するだけで、ユーザーエクスペリエンスは変化しないためです。 。

スマートクライアントは、資格情報の送信前にポストバックURLの整合性を検証し(URLを変更する可能性があるJavaScriptのページを検査することを含む)、MITM攻撃を回避できますが、実際には、平均的なインターネットユーザーにとっては安全ではありません。あなたが訪問していたサイトは、完全にHTTPSページのログイン画面を提供するように切り替える必要があります。

12
AJ Henderson

reallyman-in-the-middle攻撃 から保護するには、次のことを行う必要があります。

  • クライアントとサーバー間のすべての交換に、ある種の整合性チェックを適用します。
  • 少なくとも一方向の認証を強制します(サーバーがクライアントを認証するか、クライアントがサーバーを認証する必要があります)。

基本的に、SSLの機能を実行します。プレーンHTTPのWebコンテキストでは、クライアントは愚かであり、必要なことを行いません。クライアントを「インテリジェント」にするには、クライアント側にJavascriptなどのコードを含める必要があります。ただし、そのJavaScriptをHTTPS経由でダウンロードしないと、データが失われます。

だから私の推測では、あなたの対談者は見当違いであるか、故意にあなたに嘘をついているか、あるいはその両方だと思います。

10
Thomas Pornin

真ん中の男は保護するのが難しい問題です。そのようなものは、時間を止める方法がある、または選択できないロックがあるということです。私の一般的な答えは「いいえ」です。一般的に、MiTM攻撃、期間を保護、カルテブランチを保護する方法はなく、それらを阻止するための良い方法もありません。

これらの問題を常に解決する最善の方法は、階層化されたソリューションを使用して、MiTM攻撃に対する基準を引き上げることです。そうしないと、単一点ソリューションは常にバイパスされて失敗します。あなたは真ん中に男性がいます。

0
Tek Tengu