web-dev-qa-db-ja.com

ポート80でのSYNフラッディングの可能性。Cookieの送信

最近、サーバーのダウンタイムがありました。私はどこを見てもログファイルで見つけた唯一のものは次のとおりです。

Feb 17 18:58:04 localhost kernel: possible SYN flooding on port 80. Sending cookies.
Feb 17 18:59:33 localhost kernel: possible SYN flooding on port 80. Sending cookies.

誰かがそれについてもっと情報をくれませんか。 WHat is it、どのようにして原因をデバッグでき、どのようにしてそれを修正できますか?私も投稿しました ipconntrackが突然大きくなりすぎました これは、別のデータポイントが異常であることがわかりました。2つが同時に発生したので別のサーバーで発生したため、2つが接続されているのではないかと思いました。 1つはリバースプロキシで、もう1つは実際のバックエンドVarnishサーバーで)

ありがとう

4
Sparsh Gupta

Synフラッドは攻撃であり、ほとんどの場合、攻撃者はサーバーへの接続を確立しようとする細工されたパケットの送信元アドレスを偽装します(この場合はポート80)。

攻撃者がそのようなパッケージを大量にすばやく生成した場合、攻撃者は接続プールを使い果たし、正当なユーザーがホストに接続できないようにすることができます。

TCP Syn Cookieは、攻撃下の状況をより適切に処理するために使用される方法であり、いくつかの偽陰性があるため、多くのユーザーはSYNフラッド攻撃を受けているときにサービス(ウェブ)にアクセスできます。

5
Hrvoje Špoljar

上記のルールセットは、SYN攻撃が単一のIPアドレスからのものである場合は役に立ちません。他の正当なトラフィックもブロックされるため、制限オプションは単一のIPアドレスを考慮しないため、connlimitまたはhashlimitを使用することをお勧めします。

1
Muzi

http://blog.dubbelboer.com/2012/04/09/syn-cookies.html はこれについて優れた記事を書いています。接続が本物で予期されたものである場合は、net.ipv4.tcp_max_syn_backlogおよびnet.core.somaxconnカーネルパラメーターと、アプリケーションのlisten()呼び出しに渡されるバックログサイズを調整してみてください。

1
tarkeshwar

これは、 syn Flood攻撃 と呼ばれる基本的なDDOS攻撃です。基本的に、攻撃者はボットネットを使用してマシンのハーフオープンTCP=接続を確立し、conntrackテーブルを準備します。これを防ぐには、iptablesを使用するか、以下を含むCSFのようなファイアウォールを使用するこれらのルールが組み込まれています。私はこれについて ここ について書いたので、これらの保護機能が組み込まれた ConfigServer Firewall (CSF)をお勧めします。

この種の攻撃について具体的な質問がある場合はお知らせください。

1
Dave Drager

これは、高速に使用できるiptablesルールです

iptables -N syn_flood
iptables -A INPUT -p tcp --syn -j syn_flood
iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN
iptables -A syn_flood -j DROP
1
Luigi Molinaro