web-dev-qa-db-ja.com

スプーフィングされたソースIPパケットがNATingを使用してプライベートネットワークからディスパッチされるとどうなるか

攻撃者として、PingまたはSYN Flood攻撃を実行したいとします。

自分のマシンで生成されたパケットのソースIPを偽/偽のパブリックIPアドレスに変更して、検出が回避されるように返信がその偽装されたIPに送信されるようにすることができます。

WiFiルーターまたはそのための任意のデバイス..ソースIPが偽のパブリックIPである場合、パケットをドロップしますか、それともパケットを宛先に転送しますか、またはNATingが行われ、応答がルーターのパブリックIPアドレスに戻りますか?

この場合、IPスプーフィングはどのように機能しますか? ..ここでのネットワーキングデバイスの一般的な動作は何ですか

編集:ネットワーキングデバイスの動作に非常に多くのバリエーションがある場合、ボットネットオペレーターはスレーブからDDoSをどのように実行しますか?主にボットはNATされたホーム/ビジネス環境にあるのですか?

4
riteshtch

パケットがLANからルーターに送信されるとき、3つの動作が考えられます。

  1. ルータは逆ルートフィルタリングを適用し、パケットをドロップします。
  2. ルータはフィルタリングしません。代わりに、ルーターはLANからの他のパケットと同様に扱います。つまり、送信元IPはルーターのIPに置き換えられ、ルーターは接続追跡エントリを作成します。
  3. ルータはフィルタリングまたはNATを適用しません。代わりに、ルーターは送信元アドレスが偽装されたパケットを転送します。

最初のケースでは、これ以上何も起こりません。 3番目のケースでは、パケットはISPによってドロップまたは転送されます。これらのケースの1つでは、スプーフィングされたパケットがターゲットまで到達します。ただし、このルーターはスプーフィングされたIPに送信されるため、このルーターには返信が返されません。

最も興味深いケースは、NATがパケットに適用されるケースです。この場合、ソースIPは次のよ​​うになっているため、ISPはソースIPに基づいてパケットをドロップできなくなります。 ISPに関する限り有効な事実ですが、宛先に到達するとパケットは送信元IPに基づいて簡単にフィルタリングできるため、それほど害はありません(宛先でフラッドが目立つほど大きいと仮定すると)。リフレクションがNATルーターに戻るため、リフレクション攻撃で簡単に悪用されます。

NATルーターに返信が返ってきた場合はどうなりますか。これらは接続追跡エントリと一致します。ただし、NATが適用された後、宛先アドレスはLAN内ではなく外部にあります。この時点で、いくつかの結果が考えられます。

  • ルーターはパケットを受け取ったところからインターフェースに送り返されるため、パケットの転送を拒否する場合があります。
  • ルーターは、接続追跡エントリに従ってNAT)を適用するとすぐに、パケットを外部ネットワークに転送して戻すことができます。
  • ルーターは、パケットに対してNAT=を再度実行しようとする可能性があります。これは、パケットが外部インターフェイスに残されるためです。

パケットがドロップされる最初のケースは、特に興味深いものでも有害なものでもありません。

パケットが外部ネットワークに転送される2番目のケースは、より興味深いものです。これは、NATが最初になりすましが行われるのを防止した場合ですが、これの副作用として、応答の処理時に、実際にはソースIPが偽装されたパケットが生成されます(事実上、元のパケットの送信元と宛先のIPが逆になっています)。

無効なソースIPが原因でISPがパケットをフィルタリングしない場合、リターントラフィックは最初に偽装されたIPに転送されます。また、到着時に、NATがまったく発生していなかった場合と同じように見えます。

しかし、これには攻撃ネットワークの外部接続を介した3回のトリップが含まれるため、攻撃トラフィックのレートは、これまでと比べて制限されます。

ルーターがNAT=をもう一度試みた場合、少し興味深いものになります。ここでの問題は、それがフローの最初のパケットではないため、NAT =層はその処理方法を認識していない可能性があるため、フローの最初のパケットを確認せずにNATが適用されるため、パケットがドロップされる可能性があります。

接続追跡エントリが作成されることも可能です。その新しく作成された接続追跡エントリは明らかにフローの最初のパケットに適用されなかったため、これがTCP接続に対してまったく機能しない可能性はありません。ただし、他のプロトコルがただし、この特定のパケットはスプーフィングが原因であるので、NATすることから何も得られません。

これがTCP SYN-ACKパケットであると想定し、ルーターがNATパケットをまったく意味をなさないにもかかわらず、再びパケットを送信した場合、SYN -ACKはISPによって転送されます。SYN-ACKはRST応答をトリガーし(宛先が機能している場合)、RSTは両方の接続追跡エントリを経由して戻り、SYN-ACKが送信された場所からホストに転送されます。接続をクリーンアップします。

ご覧のとおり、このフローには多くのifがあります。そして、私が考慮していない可能性のある結果がおそらくあります。

6
kasperd

ルーターの設定によって異なります。

  • ルーターでフィルタリングが設定されている場合、その送信元アドレスはルーターが認識しているネットワークからのものではないため、パケットがドロップされます。私は通常、これを行うようにゲートウェイ/ファイアウォール/ルーターを構成します。

  • ルーターにフィルタリングがない場合(最も一般的なシナリオ)は、パケットの送信元アドレスを独自のアドレスに変更し、パケットが属する接続を「記憶」するために内部テーブルにエントリを配置します。応答を受け取るとすぐに、ルーターはその内部テーブルを調べて、パケットの送信先を確認します。アドレスは内部ネットワークからのものではないため、ルーターはデフォルトゲートウェイにパケットを送信します。

編集:DDoSボットネットは通常、この方法に依存していません。それらは一般に、数十(または数百)の感染したコンピューターで構成され、いくつかのサイトを攻撃するコマンドを待っています。コマンドが到着すると、感染したすべてのコンピュータが同時に同じサイトに接続します。ボットマスターのネットワークに100.000個のボットがあり、それぞれが平均4 Mbpsのダウンリンクを備えている場合、理論的には400 Gbpsのトラフィックを生成できます。

amplificationと呼ばれる別のDDoSメソッドがあります。ソースを偽装し、送信されたよりも多くのデータを返すサービスにパケットを送信することで機能します。 DNSとNTPは、最も一般的な不正使用プロトコルです。 DNS増幅 は、約60の送信バイトを使用し、多くの場合、4kバイトを超える結果を返します。70:1の比率です。

この場合、非常に小さなボットネット(平均4Mbps接続の10.000ボット)は、多くのサイトをノックダウンするのに十分なトラフィックを生成できます。

3
ThoriumBR