web-dev-qa-db-ja.com

DHCPスプーフィング攻撃を行う場合のARPポイズニングの役割とは

トピックに関する私の現在の背景

DHCPスプーフィングは、ホストからのDHCP要求に応答するネットワーク上の不正なDHCPサーバーによって実行されます(攻撃者は、正当なDHCPサーバーに対してDHCPスターベーション攻撃を実行して、IPアドレスを渡さないようにすることができます)。悪意のあるサーバーはゲートウェイとDNSサーバーを偽装できます。ローカルサブネットから離れるすべてのDNSとトラフィックが攻撃者に流れ始めるためです。その後、攻撃者は受信したトラフィックを適宜転送するため、ホストは接続の中断に気付かず、MITM攻撃を効果的に阻止します。

ARPポイズニングでは、攻撃者がスプーフィングされたarpメッセージをネットワークに送信し、スイッチのarpキャッシュに誤った情報が含まれるため、スイッチは攻撃者(元は別のホストまたはデフォルトゲートウェイに移動する必要があります)にトラフィックを送信し始めます

DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、およびDHCPACKはブロードキャストメッセージであるため、通常、ローカルサブネット内のすべてのホストがこのメッセージをすべて受信します。攻撃者がローカルサブネットですでにARPポイズニングを行っていても、DHCPのプロセスには影響しません。

ARPは、インターネット層アドレスをリンク層アドレスに解決するために使用されます。DHCPプロセスが完了するまで、ホストにはIPアドレスがないため、DHCPではARP攻撃は役に立たないようです。

私の質問私の理解によると、これらの2つの攻撃は、同じ結果を達成するために使用できる2つの異なる方法です。しかし、私はこれを疑いなく明確にする必要があります。

ARPポイズニングを使用してDHCPスプーフィング攻撃を阻止する方法はありますか?

3
RanjanaLK

私はたまたま、そのようなネットワーク攻撃を実際的な観点からカバーする一連の記事を書いています。 ここ はDHCPに関する記事で、ARPが続きます。

DHCPとARPは確かに2つの異なる攻撃であり、攻撃者はサブネット内でMITMを実行することができます。

DHCPスプーフィングは、ホストからのDHCP要求に応答するネットワーク上の不正なDHCPサーバーによって実行されます(攻撃者は、正当なDHCPサーバーに対してDHCPスターベーション攻撃を実行して、IPアドレスを渡さないようにすることができます)。悪意のあるサーバーはゲートウェイとDNSサーバーを偽装できます。ローカルサブネットから離れるすべてのDNSとトラフィックが攻撃者に流れ始めるためです。その後、攻撃者は受信したトラフィックを適宜転送するため、ホストは接続の中断に気付かず、MITM攻撃を効果的に阻止します。

これは正しいです。

ARPポイズニングでは、攻撃者がスプーフィングされたarpメッセージをネットワークに送信し、スイッチのarpキャッシュに誤った情報が含まれるため、スイッチは攻撃者(元は別のホストまたはデフォルトゲートウェイに移動する必要があります)にトラフィックを送信し始めます

従来のARP攻撃は、スイッチではなくエンドデバイスを対象としています。

IPを与えられた各デバイスは、通信を確立するために対応するMACアドレスを取得する必要があります。これがARPの目的です。

攻撃は、正当なIPアドレスではなく、攻撃者のMACアドレスとしてIPを解決するようにデバイスを強制することです。

それにもかかわらず、スイッチを標的とする攻撃はそれほど一般的ではなく、特定のMACアドレスが正規のアドレスではなく攻撃者のポートを介して到達できると考えられます。この攻撃はあまり便利ではなく、前の攻撃が機能しない状況(たとえば、デバイス構成でハードコードされたMACアドレス)のために予約されています。

DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、DHCPACKはブロードキャストメッセージです

DHCPDISCOVERとDHCPREQUESTは実際にブロードキャストされますが、他の2つは通常はブロードキャストされません。

したがって、通常、ローカルサブネット内のすべてのホストは、このメッセージをすべて受信します。攻撃者がローカルサブネットですでにARPポイズニングを行っていても、DHCPのプロセスには影響しません。

これは、攻撃者がすでにネットワークに拡散しているカオスの程度によって異なります;)が、基本的にはあなたの言うとおりです。ここでは、ARPはDHCPとは関係ありません。

ARPは、インターネット層アドレスをリンク層アドレスに解決するために使用されます。DHCPプロセスが完了するまで、ホストにはIPアドレスがないため、DHCPではARP攻撃は役に立たないようです。

ARPベースの攻撃がDHCPベースの攻撃を補完する2つのケースを考えます。

  1. 通常、DHCPクライアントメッセージは、ネットワークデバイスが起動したとき(または正当なDHCPサーバーが応答しないとき... DOS?)の初期ネットワーク構成中にのみブロードキャストされます。デバイスがDHCPリースを更新する必要がある場合、DHCP REQUESTメッセージは通常ブロードキャストされなくなり、最初にリースを提供したDHCPサーバーに送信されるユニキャストメッセージのみになります。

    したがって、DHCP MITM攻撃は通常、デバイスの起動プロセス中、または実行中のデバイスがネットワークに参加しているときにのみ可能です。

    ARPを使用すると、DHCPサーバーになりすまし、クライアントのDHCP REQUESTメッセージを傍受することができます。これは、たとえば、正当なルーターのMACアドレスがハードコードされているデバイスに新しいデフォルトルーターIPをプッシュする方法である可能性がありますが、IPはハードコードされていません。

  2. もっと楽しい:DHCP DOS攻撃の場合。 DHCPig ツールを確認してください。これは、DHCP枯渇攻撃を実装するDOSツールです。攻撃者は、DHCPサーバーからすべての使用可能なIPアドレスをリースするため、他のデバイスで使用できる新しいアドレスはありません。

    この攻撃の中心は基本的なものであり、DHCPメッセージのみに依存していますが、DHCPigには、ARPメッセージに関連するいくつかの機能が追加されています。

    • DHCPigはARPスキャンを使用して、現在実行中の他のデバイスとそのIPを検出し、DHCP RELEASEメッセージをDHCPサーバーに送信するため、攻撃者が盗むことができるようにIPを空きとしてマークします。

    • DHCPサーバーがDOSアウトされると、DHCPigは、サブネットを構成する各IPアドレスのIP競合をシミュレートするARPメッセージをブロードキャストできます。 Unixライクなシステムの場合、これはあまり効果がありませんが、Windowsシステムがそのような競合を検出すると、すぐに現在のIPアドレスをドロップし、DHCPサーバーに新しいIPアドレスを要求します。未構成のクライアント。つまり、Windowsデバイスをネットワークから追い出すことを許可されたARPパケット。

5
WhiteWinterWolf

ARPには認証または検証がないため、不正なDHCPサーバーをセットアップし、自分にDHCPサーバーであることをサーバーに伝える偽のARPパケットを送信し、必要に応じてDHCP予約を渡すことができます。 DHCPとARPポイズニングを使用すると、たとえば、ホストにファイアウォールがあり、1台のコンピューター以外のすべてからのSSHを通常ブロックしているにもかかわらず、コンピューターがSSH経由でホストに接続できるようにすることができます。

対照的に-

上記のように、DHCPのみの攻撃はDHCPサーバーを危険にさらし、それを使用して悪意のあるデバイスに機密性の高いIPを与える-ARPポイズニングは不要です!

ARPのみの攻撃では、ARPキャッシュを汚染して、デバイスが悪意のあるデバイスにトラフィックをルーティングするため、MITMまたはトラフィックをスニッフィングできます。