IPv6でARPがNDPに置き換えられるのはなぜですか?


49

ARPはNDP(Neighbour Discovery Protocol)に置き換えられました。しかし、私はこれの正確な理由を知りません。

  • ARPにセキュリティ上の問題はありますか?
  • なぜARPはNDPに置き換えられますか?
  • ARPの利点は何ですか?

誰もこれを簡単な言葉で説明できますか?

回答:


67

ARPにセキュリティ上の問題はありますか?

はい。ここに幾つかあります:

  • ARPスプーフィング。

    偽のARPメッセージはLANを介して送信されるため、攻撃者のMACアドレスがネットワーク上の正当なコンピューターまたはサーバーのIPアドレスにリンクされます。

    ARPスプーフィング/ポイズニングの詳細については、以下を参照してください。

  • MACフラッディング。

    どのMACアドレスがどの物理ポートにあるかを追跡する変換テーブルには、限られた量のメモリがあります。これにより、変換テーブルをフラッディングすることでスイッチを活用できます。過剰なデータの処理方法を知らないプリミティブスイッチは、「フェールオープン」され、すべてのネットワークフレームをすべてのポートにブロードキャストします。

  • MAC複製。

    MAC複製攻撃では、2つのポートが同じMACアドレスを持っていると考えるのにスイッチが混同されます。データは両方のポートに転送されるため、IP転送は不要です。

TCP / IPアドレス解決プロトコル(ARP)のソースセキュリティ


ARPがNDPに置き換えられたのはなぜですか?

IPv6の改善と追加機能を提供します。

NDPとプロトコルのアドレス解決プロトコル[ARP]、ICMPルーター発見[RDISC]、およびICMPリダイレクト[ICMPv4]の比較については、以下を参照してください。


NDPはARPスプーフィング/ポイズニングに対してどのように防御しますか?

Secure Neighbor Discovery(SEND)プロトコルを使用します。暗号で生成されたアドレスは、NDPメッセージの要求されたソースが要求されたアドレスの所有者であることを保証します。

IPv6近隣探索プロトコル(NDP)の機能の1つは、ネットワーク層(IP)アドレスをリンク層(イーサネットなど)アドレスに解決することです。これは、アドレス解決プロトコル(ARP)によってIPv4で実行される機能です。Secure Neighbor Discovery(SEND)プロトコルは、ブロードキャストセグメントにアクセスする攻撃者がNDPまたはARPを悪用して、ホストをだまして他人宛ての攻撃者トラフィックを送信させないようにします。これはARPポイズニングと呼ばれます。

ARPポイズニングやNDP機能に対するその他の攻撃から保護するには、ブロードキャストセグメントへのアクセスを防止できない場合にSENDを展開する必要があります。

SENDは、RFC 3972、Cryptographically Generated Addresses(CGA)で定義されているように、RSAキーペアを使用して暗号で生成されたアドレスを生成します。これにより、NDPメッセージの要求元が要求アドレスの所有者になることが保証されます。

セキュアIPv6近隣探索の設定ソース


ARPスプーフィングはどのように機能しますか?

ARPスプーフィングは、ARPポイズンルーティング(APR)またはARPキャッシュポイズニングとも呼ばれます。

ARPスプーフィングは、悪意のあるアクターがローカルエリアネットワークを介して偽装されたARP(アドレス解決プロトコル)メッセージを送信する攻撃の一種です。これにより、攻撃者のMACアドレスがネットワーク上の正当なコンピューターまたはサーバーのIPアドレスにリンクされます。

攻撃者のMACアドレスが本物のIPアドレスに接続されると、攻撃者はそのIPアドレス向けのデータの受信を開始します。

ARPスプーフィングにより、悪意のある者が転送中のデータを傍受、変更、または停止することができます。ARPスプーフィング攻撃は、アドレス解決プロトコルを使用するローカルエリアネットワークでのみ発生します。

ソースVeracode ARPスプーフィング


ARPスプーフィング攻撃はどのように機能しますか?

通常、ARPスプーフィング攻撃の手順は次のとおりです。

  1. 攻撃者はARPスプーフィングツールを開き、ツールのIPアドレスをターゲットのIPサブネットに一致するように設定します。人気のあるARPスプーフィングソフトウェアの例には、Arpspoof、Cain&Abel、Arpoison、Etercapが含まれます。

  2. 攻撃者はARPスプーフィングツールを使用して、ターゲットのサブネット内のホストのIPアドレスとMACアドレスをスキャンします。

  3. 攻撃者はターゲットを選択し、攻撃者のMACアドレスとターゲットのIPアドレスを含むARPパケットをLAN経由で送信し始めます。

  4. LAN上の他のホストがスプーフィングされたARPパケットをキャッシュするため、それらのホストが被害者に送信するデータは代わりに攻撃者に送信されます。ここから、攻撃者はデータを盗んだり、より高度なフォローアップ攻撃を開始したりできます。

ソースVeracode ARPスプーフィング

攻撃者は、パケットの検査(スパイ)を選択し、トラフィックを実際のデフォルトゲートウェイに転送して発見を回避したり、データを変更してから転送(中間者攻撃)したり、サービス拒否攻撃を開始したりできます。ネットワーク上のパケットの一部またはすべてをドロップすることによる攻撃。

ソースウィキペディアのARPスプーフィング


[NDPの] IPv4との比較

IPv6近隣探索プロトコルは、IPv4プロトコルのアドレス解決プロトコル[ARP]、ICMPルーター探索[RDISC]、およびICMPリダイレクト[ICMPv4]の組み合わせに対応しています。

IPv4では、ホスト要件ドキュメント[HR-CL]はデッドゲートウェイ検出(近隣到達不能検出が取り組む問題のサブセット)のいくつかの可能なアルゴリズムを指定していますが、近隣到達不能検出のプロトコルまたはメカニズムについては一般的に合意されていません。

近隣探索プロトコルは、プロトコルのIPv4セットに対して多くの改善を提供します。

  • ルーター発見は、基本プロトコルセットの一部です。ホストがルーティングプロトコルを「スヌープ」する必要はありません。

  • ルーターアドバタイズメントにはリンク層アドレスが含まれます。ルーターのリンク層アドレスを解決するために追加のパケット交換は必要ありません。

  • ルーターアドバタイズメントには、リンクのプレフィックスが含まれています。「ネットマスク」を設定するために別のメカニズムを用意する必要はありません。

  • ルーターアドバタイズにより、アドレスの自動構成が可能になります。

  • ルーターは、ホストがリンクで使用するMTUをアドバタイズし、すべてのノードが明確に定義されたMTUのないリンクで同じMTU値を使用するようにします。

  • アドレス解決マルチキャストは、1600万(2 ^ 24)を超える「マルチキャスト」アドレスであり、ターゲット以外のノードでのアドレス解決関連の割り込みを大幅に削減します。さらに、非IPv6マシンはまったく中断しないでください。

  • リダイレクトには、新しい最初のホップのリンク層アドレスが含まれます。リダイレクトの受信時に、個別のアドレス解決は必要ありません。

  • 同じリンクに複数のプレフィックスを関連付けることができます。デフォルトでは、ホストはルーターアドバタイズメントからすべてのオンリンクプレフィックスを学習します。ただし、ルーターは、ルーターアドバタイズメントから一部またはすべてのプレフィックスを省略するように構成できます。このような場合、ホストは宛先がオフリンクであると想定し、トラフィックをルーターに送信します。その後、ルーターは必要に応じてリダイレクトを発行できます。

  • IPv4とは異なり、IPv6リダイレクトの受信者は、新しいネクストホップがオンリンクであると想定します。IPv4では、ホストは、リンクのネットワークマスクに従ってオンリンクではないネクストホップを指定するリダイレクトを無視します。IPv6リダイレクトメカニズムは、[SH-MEDIA]で指定されたXRedirect機能に類似しています。ノードがリンク上の宛先のすべてのプレフィックスを知ることが望ましくない、または不可能な非ブロードキャストおよび共有メディアリンクで役立つことが期待されます。

  • 近隣到達不能検出はベースの一部であり、障害のあるルーター、部分的に障害または分割されたリンク、またはリンク層アドレスを変更するノードが存在する場合のパケット配信の堅牢性を大幅に向上させます。たとえば、モバイルノードは、古いARPキャッシュのために接続を失うことなく、リンク外に移動できます。

  • ARPとは異なり、Neighbor Discoveryは(Neighbor Unreachability Detectionを使用して)ハーフリンク障害を検出し、双方向接続が存在しない近隣へのトラフィックの送信を回避します。

  • IPv4ルーター発見とは異なり、ルーターアドバタイズメントメッセージには設定フィールドが含まれていません。プリファレンスフィールドは、異なる「安定性」のルーターを処理するために必要ではありません。Neighbor Unreachability Detectionは、死んだルーターを検出し、稼働中のルーターに切り替えます。

  • リンクローカルアドレスを使用してルーターを一意に識別する(ルーターアドバタイズおよびリダイレクトメッセージ用)ことにより、サイトは、新しいグローバルプレフィックスを使用するためにサイトの番号を変更した場合に、ルーターの関連付けを維持できます。

  • Hop Limitを255に設定することにより、Neighbor Discoveryは、誤ってまたは意図的にNDメッセージを送信するオフリンク送信者の影響を受けません。IPv4では、オフリンク送信者はICMPリダイレクトとルーターアドバタイズメントメッセージの両方を送信できます。

  • ICMPレイヤーにアドレス解決を配置すると、プロトコルがARPよりもメディアに依存せず、必要に応じて汎用IPレイヤー認証およびセキュリティメカニズムを使用できるようになります。

IPv6のソースRFC 4861近隣探索


参考文献


NDPはアガイスト中毒をどのように防御しますか?
-grawity

@grawity良い質問です!Secure Neighbor Discovery(SEND)プロトコルを使用します。回答が更新されました。
DavidPostill

2
うーん、実際にSENDを使用しているオペレーティングシステムの数
粗さ

2
@DavidPostillいいえ、IPsecはARP / NDPとは異なるレイヤーで動作します。セキュリティ機能を確立するには、有効な通信チャネルが必要です。
scai

4
@DavidPostill素晴らしい投稿。ただし、あなたの投稿は、SeNDが(a)NDPの不可欠な部分であり、(b)一般的な解決策であることを示唆しているという点で誤解を招きます。これは当てはまりません。SeNDはアドオンであり、実験的なもの以外にSeND実装はありません。さらに、SeNDには独自の欠点があり、サービス拒否攻撃の可能性が開かれています。最後に、SeNDは(少なくとも現在の形式では)決して解除されないため、大声で提案すべきではないと想定するのが妥当です。
カウンター

9

NDPには、ARPよりも多くの機能があります。

  • NDPを介して、ネットワーク上のデバイスはMAC /リンク層アドレスを判別できます(ARPと同じ機能)。

  • NDPを使用すると、ネットワーク上のデバイスは、外部ネットワーク内の別のデバイスに到達するためのパスを特定し、宛先デバイスに最適なルーターを特定できます。

  • NDPは、IPv6アドレスの自動構成を可能にします。

ARPと比較すると、メカニズムは異なります。

ARPはブロードキャストメッセージを使用し、NDPはマルチキャストICMPv6メッセージを使用します。

デバイスは、「近隣要請ICMPメッセージ」またはNSと呼ばれるマルチキャストメッセージを送信します。宛先デバイスは、「Neighbor Advertisement ICMPメッセージ」またはNAで応答します。

NSメッセージは、IPv6アドレスの最後の24ビットが同じであるすべてのホストを表す要請ノードマルチキャストアドレスと呼ばれる特別なマルチキャスト宛先アドレスを使用します。ブロードキャストの代わりにマルチキャストを使用すると、ネットワーク上の不要なトラフィックのフローが減少します。


5

ARPの代わりにNDPが導入されたのは、主にIPの周りの制御プロトコルを統合したいという願望によるものです。IPv4は、ICMP、IGMP、ARP / RARPなどのいくつかの制御プロトコルを利用しています。IPv6では、NDP(ARPの後継)とMLD(IGMPの後継)がICMPv6のサブプロトコルとして設計されたため、制御プロトコルは1つだけです。これにはセキュリティ上の理由はなく、NDはARPと同じようにスプーフィングの影響を受けやすく、NDはセキュリティ用に設計されていません。

IPv6の開発のIPsecの初期の頃のように見られました一般的なセキュリティ対策のため、必須でした。ただし、この要件は推奨事項に格下げされました(RFC 6434、主に組み込みデバイスとIoTが原因で、公開キーの計算を実行できないだけでなく、あらゆる種類のPKIの問題につまずくでしょう)とにかく)そしてNDを確保するために(丁寧に言えば)うまく動作しません。SeNDはNDにセキュリティを追加するために導入されましたが、遡及的セキュリティのソフトウェア設計におけるこれまでのすべての試みに関して、結果は、たとえば最適ではありませんでした。いくつかの実験的なものを保存するSeNDの実装はまだないため、すべての実用的な目的のために、SeNDは存在しません。さらに、少なくとも現在の形ではSeNDが決して解除されないと信じる理由があります。

対照的に、SAVIはより有望に見えますが、スイッチングインフラストラクチャの変更が必要であり、SAVI対応機器はそれほど低価格ではないため、急速に普及することもありません。SAVIは、サイト内でHWアドレス(MACアドレス)とIPアドレス間のマッピングが正当であることが「既知」である必要があるため、偽のNDPメッセージを識別して削除できるはずです。

最良のレシピは最も単純なものですが、見落とされることがよくあります。同じLAN内のターゲットに対してのみARPおよびNDスプーフィング作業のために、大きなLANを小さなものに分割します。したがって、信頼できないデバイスを独自のLANセグメントに配置するだけで(ファイアウォール/フィルタリングルールは不要)、攻撃対象領域が大幅に削減されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.