×
サイバー攻撃について

次の2つは混同しやすい項目です。

キュー保持するもの主な関連設定
SYN backlogハンドシェイク未完了の要求tcp_max_syn_backlog
accept queue接続完了後、アプリ未acceptの接続somaxconnlisten()のbacklog

SYNフラッドが直接狙う中心はSYN backlogです。

一方、アプリケーションの処理が遅く、確立済み接続を取り出せない場合はaccept queueが問題になります。

両者を同じ「backlog」として説明すると、原因調査を誤る可能性があります。


タイムアウトは常に数分とは限らない

Linuxのtcp_synack_retriesは、受動接続でSYN-ACKを再送する回数を制御します。

現行Linuxのカーネル資料では、標準値5の場合、最後の再送まで約31秒、接続要求が最終的に破棄されるまで約63秒と説明されています。

ただし、次の条件で時間は変わります。

  • OSとカーネルの種類

  • カーネルバージョン

  • 再送回数の設定

  • SYN Cookieの使用状態

  • ファイアウォールやロードバランサーの実装

  • クラウド事業者の前段防御

そのため、「通常75秒」「必ず数分」と固定して書くのは適切ではありません。


TCP SYNフラッド攻撃の分類

分類は「送信方法」と「枯渇させる資源」を分けて考える