Man in the Middle(MitM)攻撃は、d明期から存在しています。原理は単純です-悪者が2人の当事者間の会話の途中で自分自身を挿入し、第三者が第三者に気付かないうちに互いのメッセージを中継します。インターネットのコンテキストでは、これは、ミドルパーティーがいずれかのパーティーから送信されたすべてを読み取り、それを変更する機能を持っていることを意味します.
中間者攻撃の仕組み?
昔のフレーズは、真ん中の文字通りの人を指していました。ボブ将軍は馬に乗ってメッセンジャーを派遣し、アリス大佐に左脇腹を攻撃するよう指示した。真ん中にいる邪悪な(女性)マロリー夫人は、そのメッセンジャーを邪魔してメッセージを盗みました。次に、メッセージをアリス大佐に変更し、フォールバックするよう指示し、元の側面注文を確認してボブ将軍に返信します。その後まもなく、ボブ将軍は彼の左脇腹が完全に無防備だったため、見事な戦術的恥ずかしさで戦争に負けました.
インターネットMitM攻撃も同じ形式を取ります。一般的なMitM攻撃は、マロリーが公共の場所に偽のワイヤレスアクセスポイントをセットアップすることです。たとえば、コーヒーショップ。彼女は偽のアクセスポイントに「coffeeshop-customer-free-wifi」などの正当な名前を付けます。まもなく、顧客は正当なアクセスポイントではなくそのアクセスポイントに接続し始めます。その時点で、Malloryはデバイスとインターネット全体の間のデータストリームに自分自身を挿入し、すべてのトラフィックをキャプチャできます。暗号化を使用していない場合は、マロリーがすべてのトラフィックを読み取って潜在的に変更できるようになることも意味します.
この傍受のいくつかの結果は次のとおりです。
セッションハイジャック:ウェブメールを使用してメールを送信する場合を考えます。あなたがあなたのウェブメールにログインしたとき、マロリーはあなたのブラウザに送信されたときにあなたの認証クッキーのコピーをつかみました、そして今、彼女はあなたのウェブメールにアクセスするためにそのクッキーを使用できます.
注:以前の記事では、ウェブが実際にどのように機能するかと、どのように機能するかを説明しました。私たちはウェブサイトに「ログオン」しません。むしろ、ブラウザーはWebサイトを要求し、それがローカルコンピューターに送信されます。次に、Webサイトサーバーに送信されるログイン資格情報を入力します。資格情報が正しい場合、Webサイトは何らかの認証トークン(通常はCookie)で応答します。コンピューターからさらにリクエストを行うと、そのCookieがそれらのリクエストとともに送信されるため、ウェブサイトは私たちが誰であるかを認識し、別のページにアクセスするたびにログインすることはありません。そのクッキーは機密トークンであり、盗まれた場合に価値があります.
リプレイ攻撃:マロリーはリプレイ攻撃を実行できます。彼女はあなたのすべてのデータを持っているので、あなたがしたことを「リプレイ」することが可能です。たとえば、100個のRunescapeクレジットを友人に転送した場合、元の転送に含まれていたパケットを再送信すると、別の転送が発生する可能性があり、現在200クレジットが出ています。.
変更されたコンテンツ:ウェブメールの例に戻ると、おそらく最近の法的取引の資金を差し控えるよう弁護士に指示しているでしょう。マロリーはそのメールを構成するすべてのパケットを持っているため、「保留」という単語を「リリース」に変更して、あらゆる種類の混乱を引き起こすことができます。これは、Kodi Media Centerのアドオン攻撃で使用されているMitM攻撃の一般的なタイプであり、ボブ将軍を倒すために使用される架空の攻撃でもあります.
不足しているコンテンツ:変更されたコンテンツのもう1つのバリアントは、コンテンツを単に完全に非表示にすることです。何らかの信号が何かをするのを待っているのかもしれません。マロリーは、それが到着しないことを確認することができます.
中間者攻撃を防ぐための保護?
これらの攻撃には無限の方法がありますが、実際に何度も悪用されるものはほんのわずかです。 MitM攻撃から保護するには、次のものが存在する必要があります。
否認防止:メッセージの送信元と言う人またはデバイスからのメッセージ.
メッセージの完全性:送信者の制御を離れたため、メッセージは変更されていません
「メッセージ」という言葉は、完全なメールやスタックの下位のデータパケットなど、多くの概念を指すために一般的に使用されていることに留意してください。データの種類に関係なく、同じ概念が適用されます.
MitM攻撃の被害者にならないようにする方法は次のとおりです。
可能な限りHTTPSを使用する
ブラウザのアドレスバーにHTTPSを表示すると、Webサイトへの接続が暗号化されます。そのウェブサイトを他よりも信頼する必要があるという意味ではなく、デバイスとサイトの間を移動するときにデータが暗号化されることを意味します。悪意のあるWebサイトは、MitM攻撃のセットアップに関与する可能性があるため、アクセスするすべてのWebサイトに注意を払って、最初から合法であることを確認してください.
HTTPSはTransport Layer Security(TLS)を使用します.
注:TLSは、ほぼ普遍的にSSL(Secure Sockets Layer)と呼ばれています。 SSLはTLSの前身ですが、名前がスタックしているようです.
TLSとHTTPは連携して、暗号化と否認防止を提供するHTTPSを生成します。ブラウザが最初にHTTPSサイトに接続すると、ブラウザはサーバーとネゴシエートします。そのプロセス中に、ブラウザはサーバーの証明書を調べて、サーバーが考えているサイトに接続していることを確認し(否認防止)、セッション暗号化キーのセットも生成します。これらのキーは後続のセッション全体でデータを暗号化するために使用され、メッセージの整合性が保証されます.
Malloryがサーバーからユーザーに送信されるデータを正常に変更するには、ブラウザーとサーバーの両方のセッションキーを所有している必要があります。どちらも送信されません。これは、彼女がクライアントとサーバーの両方を制御する必要があることを意味します。その場合、最初にMitM攻撃を仕掛ける必要はありません。.
HTTPSがサイトで利用可能になると、ブラウザにHTTPSを使用させるブラウザプラグインがあります。多くのサイトはHTTPSをサポートしていますが、必ずしもブラウザーで強制的に使用するように構成されているわけではないため、このようなプラグインは多くの場合に役立ちます.
公開キーのピン留めをサポートするブラウザーを使用する
一部のMitM攻撃は非常に複雑な場合があります。 TLSと暗号化から多くの保護が発生するため、暗号化が破られにくいため、上級の攻撃者がWebサイトを模倣する方が簡単です。たとえば、TLS証明書は、ブラウザーが信頼する認証局(CA)によって署名されているため、ブラウザーによって信頼されています。 MalloryがCAの侵害に成功した場合、彼女はWebブラウザーによって信頼される任意のドメインに対して有効な証明書を発行できます。 Malloryが正当なWebサイトになりすますことができたら、残っている唯一の課題は、ユーザーを標準のフィッシング手法でそのサイトにアクセスさせることです。.
これは2011年にオランダのCA DigiNotarが侵害され、多数のイランのGmailユーザーをだましてGoogleのユーザー名とパスワードを放棄させるための証明書が作成されたときのケースでした.
HTTP公開キーピニング(HPKP)は、Webサイトの所有者がWebサイトが使用する公開キーをブラウザーに通知できる方法です。ブラウザがそのサイトにアクセスし、リストにない他の公開キーが提示された場合、それはサイト、または少なくともTLS証明書が無効であることを示しています.
サーバーの所有者がピン留めを行う必要がありますが、公開キーのピン留めをサポートするブラウザーを使用して、ユーザーとして自分自身を保護できます。この日付の時点で、Firefox(バージョン32)、Chrome(バージョン56)、およびOpera(33)がサポートしています。 Internet ExplorerとEdgeはサポートしていません。 Firefoxのabout:configにはsecurity.cert_pinning.enforcement_level; 1という名前の設定があり、これによりHPKPを無効にできますが、なぜですか?ブラウザがHKPKをサポートしているかどうかをテストする場合は、このHPKPテストURLにアクセスしてください。 HPKPヘッダーと無効な公開キーを提示します。ブラウザがHPKPをサポートしている場合、エラーメッセージが表示されます.
仮想プライベートネットワーク(VPN)を使用する
VPNは、デバイスとVPNサーバーの間に暗号化されたトンネルを作成します。すべてのトラフィックはこのトンネルを通過します。つまり、非HTTPSサイトの使用を強制された場合、または悪意のあるwifiアクセスポイントの使用をだまされた場合でも、MitMに対するある程度の保護を維持できます。.
WiFiアクセスポイントの問題を考慮してください。マロリーの偽のアクセスポイントに接続している場合、マロリーはすべてのトラフィックを見ることができます。しかし、VPNを使用するとトラフィックはすべて暗号化されるため、彼女が取得するのは、データをほとんど提供しない読み取り不能な暗号化されたBLOBの束だけです。常にVPNを使用するのは良い考えですが、公共のwifiなどの大雑把な状況で使用することは必須です.
HTTP Strict Transport Security(HSTS)をサポートするブラウザーを使用します
HTTPSは、WebでのMitM攻撃を防ぐための非常に良いステップですが、潜在的な弱点もあります。 Webサイトの所有者が訪問者にHTTPSの使用を強制するためには、2つのオプションがあります。 1つは、暗号化されていないHTTPポート80を完全にシャットダウンすることです。つまり、http://を使用してサイトにアクセスしようとしても何も得られず、サイトはタイムアウトするだけです。ほとんどのウェブサイトの所有者は、訪問者にこのネガティブな体験をさせたくないので、代わりにポート80を開いたままにしますが、これを使用して、ブラウザにhttps://.
実際には、これはうまく機能しますが、そのリダイレクト中に攻撃者がダウングレード攻撃を実行する機会があります。ダウングレード攻撃は、Webサーバーがより弱い暗号を使用するように強制する可能性があり、その後のMitM攻撃を容易にします。 HSTSを採用しているWebサイトは、HTTPSを使用するようにブラウザーに指示する最初の接続時にヘッダーをブラウザーに送信します。その後、ブラウザは既存のセッションを切断し、HTTPSを使用して再接続します。これは小さな違いのように思えるかもしれませんが、標準のHTTPからHTTPSへのリダイレクトの攻撃ベクトルを大幅に軽減します。ほとんどすべての最新ブラウザーはHSTSをサポートしていますが、市場には多くのブラウザーが存在するため、特定のブラウザーがそれをサポートしていることを確認するのは有益です.
非上品なMitM攻撃
また、一部のMitM攻撃は非常にエレガントで基本的なものであることに注意してください。たとえば、技術的な専門知識がまったくない場合、マロリーはアリスとボブの2つのメールアドレスを厳密に一致させて、一方と会話を開始し、他方と会話することができます。多くのメールクライアントはアドレスの名前のみを表示し、メールアドレスは表示しないため、この策略は必要以上に頻繁に機能します。 Malloryが両方のメールボックスを操作し、会話の途中に無期限に残ることが可能になります.
このタイプのMitM攻撃に対する最善の防御策は警戒することです。珍しい言葉などの明白な兆候を探し、送信者のメールアドレスにカーソルを合わせて、正当なものであることを確認します.
既知のMitM攻撃の例
MitM wifiとリプレイ攻撃については既に触れましたが、MitMの一般的な手法を攻撃として使用する方法にほとんど制限はありません。複数の当事者が通信するプロセス(ネタバレ:それは すべて)悪者が真ん中に自分自身を注入するための適切なものを持っています.
ARP中毒: アドレス解決プロトコルは、IPネットワーキングの名のないヒーローであり、パケットが目的のネットワークカードに確実に到着するようにします。パケットが宛先LANに入ると、宛先のネットワークカードのメディアアクセス制御(MAC)アドレスを知る必要があります。これは、ローカルネットワーク上のすべてのコンピューターにパケットの宛先IPアドレスを「誰が」持っているかを尋ねるARP who-hasリクエストによって実現されます。理論的には、そのIPアドレスが割り当てられたネットワークカードがMACアドレスで応答し、パケットが配信されます。実際には、ARPプロトコルには認証が組み込まれていないため、マロリーはそのIPを持っていると応答し、トラフィックは彼女に配信されます。この攻撃を真のMitMにするには、パケットが正しいMACアドレスにも転送されるようにする必要があります.
ポート窃盗:これは高度な攻撃で、ネットワークスイッチを使用する大規模なネットワークで使用できます。スイッチには、サービス対象のネットワークカードのMACアドレスと対応するポートとの関係を記録するContent Addressable Memory(CAM)テーブルが含まれています。他のセキュリティ設定がない場合、CAMテーブルは動的に構築され、スイッチが認識するすべてのパケットで再構築されます。攻撃者は被害者のMACアドレスでパケットをスプーフィングでき、スイッチはその関連付けを記録します。これは、被害者宛ての後続のパケットが代わりに攻撃者に送信されることを意味します.
MitM攻撃は検出が非常に難しく、MitM攻撃に対する「銀の弾丸」防御はありません。主に、MitM攻撃を完全に防御できないことは、悪者が考えうる種類の攻撃にほとんど終わりがないという事実に起因しています。コンピューターからインターネット上のサーバーにデータのパケットを取得するプロセスには、多くのプロトコル、多くのアプリケーション、およびルーターやスイッチのような多くのデバイスが含まれ、これらはすべて悪用される可能性があります。あなたができる最善のことは、「非常に高い成果」になり、MitM攻撃の被害者になるのを難しくするための措置を講じることです。ほとんどの攻撃は、最大の成功の可能性を提供するために、多数の人々を対象としています。敵に明確に狙われている場合を除き、この記事の手順は優れた防御策となります.
また、VPNが好きかもしれません
ストするために、私たちは常に注意を払う必要があります。Man in the Middle(MitM)攻撃は、古くから存在しており、私たちのインターネット上での活動に影響を与える可能性があります。しかし、HTTPSを使用する、公開キーのピン留めをサポートするブラウザーを使用する、仮想プライベートネットワーク(VPN)を使用するなど、いくつかの方法があります。私たちは自分自身を保護するためにこれらの方法を使用する必要があります。