(57)【要約】  本発明によるＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記クライアントから送信された前記接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する確認応答（ＡＣＫ＿６）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
2010539735.tif 000002
【特許請求の範囲】
【請求項１】
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、
前記サーバが前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、
前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、
前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記クライアントから送信された前記接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する確認応答（ＡＣＫ＿６）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備えることを特徴とするＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項２】
前記タイムアウト時間は、６０秒に設定することを特徴とする請求項１に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項３】
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、
前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、
前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、
前記サーバが、同一の接続要請（ＳＹＮ）パケットを再受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備えることを特徴とするＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項４】
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングしてサービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、
前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、
前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、
前記サーバが、前記クライアントの終了（ＦＩＮ）パケットを受信すれば、前記クライアントに前記終了（ＦＩＮ）パケットに対する応答確認（ＡＣＫ＿３）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断準備（ＣＬＯＳＩＮＧ）状態に移動する段階と、
前記サーバが、前記クライアントから送信された前記応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断準備（ＣＬＯＳＩＮＧ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態に移動する段階と、
前記サーバが前記クライアントに前記応答確認（ＡＣＫ＿４）パケットに対する応答確認（ＡＣＫ＿５）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備えることを特徴とする
ＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項５】
前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿４）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断準備（ＣＬＯＳＩＮＧ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することを特徴とする請求項４に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項６】
前記タイムアウト時間は、１０秒に設定することを特徴とする請求項５に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項７】
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、
前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、
前記サーバが前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、
前記サーバが、前記クライアントから送信された接続要請応答（ＳＹＮ／ＡＣＫ＿１）に対する応答確認（ＡＣＫ＿２）と共にＦＩＮフラッグがセットされた応答確認終了（ＡＣＫ＿２／ＦＩＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する段階と、
前記サーバが、前記クライアントから不正な応答確認（ＡＣＫ＿６）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備えることを特徴とするＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項８】
前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿６）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することを特徴とする請求項７に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項９】
前記タイムアウト時間は、１０秒に設定することを特徴とする請求項８に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１０】
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、
前記サーバが前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、
前記サーバが前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、
前記サーバが前記クライアントから前記接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する応答確認（ＡＣＫ＿２）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態に移動し、ＴＣＰ接続を完了する段階と、
前記サーバが前記クライアントの終了（ＦＩＮ）パケットを受信すれば、前記クライアントに前記終了（ＦＩＮ）パケットに対する応答確認（ＡＣＫ＿３）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する段階と、
前記サーバが前記クライアントから前記応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備えることを特徴とするＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１１】
前記サーバがあらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿４）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することを特徴とする請求項１０に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１２】
前記タイムアウト時間は、１０秒に設定することを特徴とする請求項１１に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１３】
前記ＴＣＰ接続が完了した後、前記サーバが前記クライアントのリセット（ＲＳＴ）又は接続要請（ＳＹＮ）フラッグがセットされたパケットを受信すれば、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに前記遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することを特徴とする請求項１０に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１４】
前記ＴＣＰ接続が完了した後、前記サーバがあらかじめ設定されたタイムアウト時間の間に何らのパケットをも受信しなければ、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに前記遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することを特徴とする請求項１０に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１５】
前記タイムアウト時間は、３０分に設定することを特徴とする請求項１４に記載のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法。
【請求項１６】
コンピュータで読み取り可能な記録媒体であって、請求項１乃至１５のいずれか１つに記載の方法を実行するためのプログラムが記録されていることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伝送制御プロトコル（Transmission Control Protocol、以下、ＴＣＰという）状態遷移を利用したサービス拒否攻撃の遮断方法に関し、より詳細には、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（Denial of Service；ＤｏＳ）攻撃をあらかじめ遮断することによって、サーバ側の負荷を効果的に低減することができ、さらに安全なサービスを提供することができるＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法に関する。
【背景技術】
【０００２】
図１は、一般的なＴＣＰ状態遷移動作を説明するための全体的な概念図であって、ＴＣＰ接続を確立し終了するためのＴＣＰプロトコルをさらに詳しく説明するために使用された全体標準有限状態機械を示しており、正確性のためにすべての状態及び変換が示されている。
【０００３】
まず、ＴＣＰ接続状態は、下記のように定義される。
ＬＩＳＴＥＮ：サーバのデモンが動作し、接続要請を待つ状態である。
ＳＹＮ＿ＳＥＮＴ：ローカルのクライアントアプリケーションが遠隔ホストに接続を要請した状態である。
ＳＹＮ＿ＲＣＶＤ：サーバが遠隔クライアントから接続を要求されて、クライアントに応答をしたが、未だクライアントから確認メッセージを受けていない状態である。
ＥＳＴＡＢＬＩＳＨＥＤ：  スリーウェイハンドシェイクが完了した後、互いに接続された状態である。
ＦＩＮ＿ＷＡＩＴ＿１、ＣＬＯＳＥ−ＷＡＩＴ、ＦＩＮ＿ＷＡＩＴ＿２：サーバが接続を終了するためにクライアントに終了を要請し、応答を受けて終了する過程の状態である。
ＣＬＯＳＩＮＧ：頻繁ではないが、主に確認メッセージが伝送途中に紛失された状態である。
ＴＩＭＥ−ＷＡＩＴ：接続は終了したが、紛失されたかも知らない遅いセグメントのためにしばらくソケットを開いた状態である。
ＣＬＯＳＥＤ：完全に終了した状態である。
【０００４】
ＴＣＰ接続を確立し終了するＴＣＰ通信の接続原理は、非特許文献１に定義されているように、クライアントとサーバがＴＣＰ接続を行うために、スリーウェイハンドシェイク手続を必ず行わなければならない。
【０００５】
すなわち、クライアントとサーバがＴＣＰ通信を行うためには、接続要請（Synchronous；ＳＹＮ）、接続要請応答（Synchronous/Acknowledge；ＳＹＮ／ＡＣＫ）及び応答確認（Acknowledge；ＡＣＫ）パケットをやり取りする手続が必ず必要である。
【０００６】
ここで、接続要請（ＳＹＮ）、接続要請応答（ＳＹＮ／ＡＣＫ）及び応答確認（ＡＣＫ）のスリーウェイハンドシェイク手続が成功的に行われれば、クライアントとサーバ間のＴＣＰ接続が達成されたことを意味するもので、クライアントが申請したサーバのＴＣＰ通信ポートが通信のためにオプンされているものである。
【０００７】
しかしながら、最近、インターネットを用いてサービスを提供する会社が多くなり、インターネットを用いてスリーウェイハンドシェイク手続を悪用した攻撃、例えば、ＳＹＮフラッディング攻撃のようなサービス拒否（ＤｏＳ）攻撃を受けている。
【０００８】
これを具体的に例示して説明すれば、第一に、サーバが悪意のあるクライアントからＳＹＮフラッグがセットされた接続要請（ＳＹＮ）パケットを受信した後に、直ちにＦＩＮフラッグがセットされた終了（ＦＩＮ）パケットを受信すれば、サーバ側のＴＣＰ状態（State）は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ）状態に直ちにジャンプする場合が発生するようになる。このため、サーバは、終了（ＦＩＮ）パケットに対するＡＣＫフラッグがセットされた応答確認（ＡＣＫ）パケットをクライアントに伝送し、その応答としてクライアントの応答確認（ＡＣＫ）パケットを続いて待つ状態が発生する問題点がある。
【０００９】
第二に、サーバがクライアントの接続要請（ＳＹＮ）パケットを受信し、接続要請を受け入れるという意味として、自分のＳＹＮとＡＣＫフラッグがセットされた接続要請応答（ＳＹＮ／ＡＣＫ）パケットをクライアントに送信した後、これに対する応答確認（ＡＣＫ）パケットをクライアントから受信されなければ、サーバ側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態でサーバが応答確認（ＡＣＫ）パケットを受信するまで待つようになる。すなわち、悪意のあるクライアントがサーバに続いてこのような方式でパケットを送信した後、終了を行わなければ、サーバでは、キューがあふれるようになり、サービス拒否（ＤｏＳ）現象が発生する問題点がある。
【００１０】
第三に、ＳＹＮフラッディング攻撃、すなわちクライアントが接続要請（ＳＹＮ）パケットだけを続いて送る攻撃であって、サーバ側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態で続いて待つようになる。このため、サーバは、続いてキューに接続要請（ＳＹＮ）パケットが積もるようになり、以後には、キューが完全に満たされるようになり、何らの接続をもサーバが受け入れることができない問題点がある。
【００１１】
特に、既存のＴＣＰ状態遷移は、オペレーティングシステム（ＯＳ）の具現によってその動作を全部支サポートするものもあり、そうではないものもあり、ＳＹＮフラッディング攻撃のようなサービス拒否（ＤｏＳ）攻撃は、初期スリーウェイハンドシェイク手続においてスペックで提示した状態遷移をすべて従うようにする確認段階がサーバ側にないから、サービス中のサーバに負荷が多くかかり、サービスを提供せず、ダウンされる場合がしきりに発生する問題点がある。
【先行技術文献】
【特許文献】
【００１２】
【非特許文献１】Transmission Control Protocol, RFC 793, Jon Postel, DARPA Internet Program Protocol Specification, September 1981
【発明の概要】
【発明が解決しようとする課題】
【００１３】
本発明は、前述した問題点を前述したような問題点を解決するためになされたもので、本発明の目的は、
ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃をあらかじめ遮断することで、サーバ側の負荷を効果的に低減することができ、さらに安全なサービスを提供することができるＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を提供することにある。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明の第１様態に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記クライアントから送信された前記接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する確認応答（ＡＣＫ＿６）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
【００１５】
ここで、前記タイムアウト時間は、６０秒に設定することが好ましい。
【００１６】
また、本発明の第２態様に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが、同一の接続要請（ＳＹＮ）パケットを再受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
【００１７】
また、本発明の第３態様に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングしてサービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバから前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが、前記クライアントの終了（ＦＩＮ）パケットを受信すれば、前記クライアントに前記終了（ＦＩＮ）パケットに対する応答確認（ＡＣＫ＿３）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断準備（ＣＬＯＳＩＮＧ）状態に移動する段階と、前記サーバが、前記クライアントから送信された前記応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断準備（ＣＬＯＳＩＮＧ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態に移動する段階と、前記サーバが前記クライアントに前記応答確認（ＡＣＫ＿４）パケットに対する応答確認（ＡＣＫ＿５）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
【００１８】
ここで、前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿４）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断準備（ＣＬＯＳＩＮＧ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することが好ましい。
【００１９】
好ましくは、前記タイムアウト時間は、１０秒に設定する。
【００２０】
また、本発明の第４態様に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが、前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバが前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが、前記クライアントから送信された接続要請応答（ＳＹＮ／ＡＣＫ＿１）に対する応答確認（ＡＣＫ＿２）と共にＦＩＮフラッグがセットされた応答確認終了（ＡＣＫ＿２／ＦＩＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する段階と、前記サーバが、前記クライアントから不正な応答確認（ＡＣＫ＿６）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
【００２１】
ここで、前記サーバが、あらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿６）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することが好ましい。
【００２２】
好ましくは、前記タイムアウト時間は、１０秒に設定する。
【００２３】
また、本発明の第５態様に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃を遮断するための方法であって、前記サーバが前記クライアントの接続要請（ＳＹＮ）パケットを受信すれば、前記サーバ側のＴＣＰ状態を聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する段階と、前記サーバが前記クライアントに接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続要請受信（ＳＴＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する段階と、前記サーバが前記クライアントから前記接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する応答確認（ＡＣＫ＿２）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記応答待機（ＡＣＫ＿ＷＡＩＴ）状態から接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態に移動し、ＴＣＰ接続を完了する段階と、前記サーバが前記クライアントの終了（ＦＩＮ）パケットを受信すれば、前記クライアントに前記終了（ＦＩＮ）パケットに対する応答確認（ＡＣＫ＿３）パケットを送信した後、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する段階と、前記サーバが前記クライアントから前記応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットを受信すれば、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する段階と、を備える。
【００２４】
ここで、前記サーバがあらかじめ設定されたタイムアウト時間の間に前記応答確認（ＡＣＫ＿４）パケットを受信しなければ、前記サーバ側のＴＣＰ状態を前記遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了することが好ましい。
【００２５】
好ましくは、前記タイムアウト時間は、１０秒に設定する。
【００２６】
好ましくは、前記ＴＣＰ接続が完了した後、前記サーバが前記クライアントのリセット（ＲＳＴ）又は接続要請（ＳＹＮ）フラッグがセットされたパケットを受信すれば、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに前記遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００２７】
好ましくは、前記ＴＣＰ接続が完了した後、前記サーバがあらかじめ設定されたタイムアウト時間の間に何らのパケットをも受信しなければ、前記サーバ側のＴＣＰ状態を前記接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに前記遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００２８】
好ましくは、前記タイムアウト時間は、３０分に設定する。
【００２９】
また、本発明の第６態様は、ＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を実行するためのプログラムを記録したコンピュータが読み込み可能な記録媒体を提供する。
【発明の効果】
【００３０】
以上説明したような本発明のＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法によれば、ＴＣＰプロトコルを使用してクライアントとサーバとの間に伝送されるパケットの流れをモニタリングし、サービス拒否（ＤｏＳ）攻撃をあらかじめ遮断することによって、サーバ側の負荷を効果的に低減することができ、さらに安全なサービスを提供することができる利点がある。
【００３１】
また、本発明によれば、サーバ側に設けられた防火壁、プロクシサーバ又は侵入探知システムなどに適用させることによって、既存のＴＣＰ状態遷移動作を妨害せず、サービス拒否（ＤｏＳ）に対する弱点を補完することができ、この弱点を利用したサービス拒否（ＤｏＳ）攻撃も初期に発見、確認及び遮断し、安全なサービスを提供することができる利点がある。
【図面の簡単な説明】
【００３２】
【図１】一般的なＴＣＰ状態遷移動作を説明するための全体的な概念図である。
【図２】本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を具現するためのモニタリングモデルを示す全体的な概念図である。
【図３】クライアントとサーバ間の正常なＴＣＰ接続完了過程に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図４】クライアントとサーバ間の正常なＴＣＰ接続終了過程に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図５】不正なＴＣＰ接続の第１例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図６】不正なＴＣＰ接続の第２例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図７】不正なＴＣＰ接続の第３例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図８】不正なＴＣＰ接続の第４例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図９】不正なＴＣＰ接続の第５例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【図１０】不正なＴＣＰ接続の第６例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【発明を実施するための形態】
【００３３】
以下、添付の図面を参照して本発明の実施例を詳細に説明する。しかし、下記に例示する本発明の実施例は、様々な他の形態に変形可能であり、本発明の範囲は下記に説明する実施例に限定されるものではない。本発明の実施例は、当業界における通常の知識を有する者に本発明をさらに完全に説明するために提供されるものである。
【００３４】
図２は、本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を具現するためのモニタリングモデルを示す全体的な概念図である。
【００３５】
図２を参照すれば、本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を具現するためのモニタリングモデルは、聞き取り（ＬＩＳＴＥＮ）、接続要請受信（ＳＹＮ＿ＲＣＶＤ）、応答待機（ＡＣＫ＿ＷＡＩＴ）、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）、遮断準備（ＣＬＯＳＩＮＧ）、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１及びＣＬＯＳＥ＿ＷＡＩＴ＿２）及び遮断（ＣＬＯＳＥＤ）状態で構成されており、クライアントとサーバとの間に送受信されるパケットの流れによって多様な形態で接続されている。
【００３６】
ここで、説明の便宜上、本発明の実施例では、既存のＴＣＰプロトコルの基本スペックで使用された同一の形態の聞き取り（ＬＩＳＴＥＮ）、接続要請受信（ＳＹＮ＿ＲＣＶＤ）、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）、遮断準備（ＣＬＯＳＩＮＧ）及び遮断（ＣＬＯＳＥＤ）状態について同一の名称を使用したが、これらに限定されず、任意に指定された他の名称を使用することもできる。
【００３７】
一方、本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を具現するためのモニタリングモデルは、既存のＴＣＰプロトコルの基本スペックモデルを変更するものではなく、通常のＴＣＰプロトコルを使用したクライアントとサーバ間の接続関係はそのまま構成し、サーバ側に設けられた防火壁、プロクシサーバ又は侵入探知システムなどに本発明のモニタリングモデルを適用し、クライアント（１００）とサーバ（２００）との間にＴＣＰ接続が正常に行われるか否かについて伝送されるパケットの流れをモニタリングし、不正なＴＣＰ接続、例えば、ＳＹＮフラッディング攻撃のようなサービス拒否（ＤｏＳ）攻撃が生じた場合、ＴＣＰ接続を安全に終了させることによって、既存のＴＣＰプロトコルの基本スペックによるＴＣＰ状態遷移動作を妨害せず、サービス拒否（ＤｏＳ）に対する弱点を補完することができ、この弱点を利用したサービス拒否（ＤｏＳ）攻撃をも初期に発見、確認及び遮断し、安全なサービスを提供することができる。
【００３８】
すなわち、本発明の実施例に適用されたモニタリングモデルは、クライアントとサーバとの間にやり取りするパケットをモニタリングすると共に、各ＴＣＰ接続状態を移動してやり取りするパケットのＴＣＰスペックとの妥当性可否を確認及び判断するようになる。
【００３９】
また、本発明の実施例に適用されたモニタリングモデルは、クライアントからサーバに新しいセッションで接続しようとするとき、新しいセッション別に初期状態にセットした後、各パケットを読み取りながらパケットのタグをチェックし、タグの検証結果が正しくないとき、当該セッションや接続状態を終了するようになる。その他には、サーバからクライアントへの応答パケットを調べ、次回の接続状態に変更させると共に、続いてやり取りするパケット交換の流れをモニタリングするようになる。
【００４０】
図３は、クライアントとサーバ間の正常なＴＣＰ接続完了過程に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００４１】
図２及び図３を参照すれば、初めてクライアント（１００）とサーバ（２００）との間にセッションが形成されるとき、本発明のＴＣＰ接続初期状態の聞き取り（ＬＩＳＴＥＮ）状態に置かれるようになる。
【００４２】
その後、クライアント（１００）は、接続しようとするサーバ（２００）の特定ポートにＳＹＮフラッグがセットされた接続要請（ＳＹＮ）パケットを送信するようになるが、本発明によって、サーバ（２００）がクライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動する。
【００４３】
次に、サーバ（２００）は、クライアント（１００）に接続要請を受け入れるという意味として、自分の接続要請（ＳＹＮ）と応答確認（ＡＣＫ＿１）フラッグがセットされた接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットを送信するようになるが、本発明によって、サーバ（２００）がクライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００４４】
その後、クライアント（１００）は、サーバ（２００）に接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する応答確認（ＡＣＫ＿２）パケットを送信するようになるが、本発明によって、サーバ（２００）がクライアント（１００）から送信された応答確認（ＡＣＫ＿２）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態に移動し、ＴＣＰ接続を完了する。その後、クライアント（１００）とサーバ（２００）との間にデータ伝送が自由に行われる。
【００４５】
図４は、クライアントとサーバ間の正常なＴＣＰ接続終了過程に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００４６】
図２及び図４を参照すれば、クライアント（１００）とサーバ（２００）との間にＴＣＰ接続が完了した接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態で、ＴＣＰ接続を終了するために、クライアント（１００）は、ＴＣＰ接続を終了しようとするサーバ（２００）の特定ポートにＦＩＮフラッグがセットされた終了（ＦＩＮ）パケットを送信するようになるが、サーバ（２００）では、クライアント（１００）から送信された終了（ＦＩＮ）パケットを受信されれば、ＴＣＰ接続終了を確認した意味として、これに対する応答確認（ＡＣＫ＿３）パケットを当該クライアント（１００）に伝送する。
【００４７】
この際、本発明によって、サーバ（２００）からクライアント（１００）に終了（ＦＩＮ）パケットに対する応答確認（ＡＣＫ＿３）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する。
【００４８】
その後、クライアント（１００）は、サーバ（２００）に応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットを送信するようになるが、本発明によって、サーバ（２００）がクライアント（１００）から送信された応答確認（ＡＣＫ＿４）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を終了する。
【００４９】
一方、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態でクライアント（１００）が応答確認（ＡＣＫ＿４）を送信せず、あらかじめ接続を終了した場合、タイムアウトが作動するようになり、サーバ（２００）もＴＣＰ接続を終了するために遮断（ＣＬＯＳＥＤ）状態に移動する。
【００５０】
すなわち、サーバ（２００）が、あらかじめ設定されたタイムアウト時間（好ましくは、約１０秒程度）の間に応答確認（ＡＣＫ＿４）パケットを受信しなければ、サーバ（２００）側のＴＣＰ状態は、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００５１】
以下、不正なＴＣＰ接続の多様な例を参照して本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法について詳細に説明する。
図５は、不正なＴＣＰ接続の第１例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００５２】
図２及び図５を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）からクライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００５３】
次に、サーバ（２００）が、クライアント（１００）から送信された応答確認（ＡＣＫ＿２）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態に移動し、ＴＣＰ接続を完了する。
【００５４】
その後、サーバ（２００）が、クライアント（１００）から送信されたリセット（ＲＳＴ）又はＳＹＮフラッグがセットされたパケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００５５】
一方、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態でクライアント（１００）が何らのパケットを送信せず、不正に接続を終了した場合、本発明によって、タイムアウトが作動するようになり、サーバ（２００）もＴＣＰ接続を終了するために直ちに遮断（ＣＬＯＳＥＤ）状態に移動する。
【００５６】
すなわち、サーバ（２００）が、あらかじめ設定されたタイムアウト時間（好ましくは、約３０分程度）の間に何らのパケットを受信しなければ、サーバ（２００）側のＴＣＰ状態は、接続確立（ＥＳＴＡＢＬＩＳＨＥＤ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００５７】
図６は、不正なＴＣＰ接続の第２例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００５８】
図２及び図６を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）が、クライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００５９】
次に、サーバ（２００）が、クライアント（１００）から送信された終了（ＦＩＮ）パケットを受信され、クライアント（１００）にこれに対する応答確認（ＡＣＫ＿３）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断準備（ＣＬＯＳＩＮＧ）状態に移動し、当該セッションを安定的に終了する準備をするようになる。
【００６０】
この際、遮断準備（ＣＬＯＳＩＮＧ）状態でクライアント（１００）が何らのパケットを送信せず、不正に接続を終了した場合、本発明によって、タイムアウトが作動するようになり、サーバ（２００）もＴＣＰ接続を終了するために直ちに遮断（ＣＬＯＳＥＤ）状態に移動する。
【００６１】
すなわち、サーバ（２００）が、あらかじめ設定されたタイムアウト時間（好ましくは、約１０秒程度）の間に何らのパケットを受信しなければ、サーバ（２００）側のＴＣＰ状態は、遮断準備（ＣＬＯＳＩＮＧ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００６２】
図７は、不正なＴＣＰ接続の第３例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００６３】
図２及び図７を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）が、クライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００６４】
次に、サーバ（２００）が、クライアント（１００）から送信された終了（ＦＩＮ）パケットを受信され、クライアント（１００）にこれに対する応答確認（ＡＣＫ＿３）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断準備（ＣＬＯＳＩＮＧ）状態に移動し、当該セッションを安定的に終了する準備をするようになる。
【００６５】
その後、サーバ（２００）が、クライアント（１００）から送信された応答確認（ＡＣＫ＿３）パケットに対する応答確認（ＡＣＫ＿４）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、遮断準備（ＣＬＯＳＩＮＧ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態に移動する。
【００６６】
次に、サーバ（２００）が、クライアント（１００）に応答確認（ＡＣＫ＿４）パケットに対する応答確認（ＡＣＫ＿５）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿１）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００６７】
図８は、不正なＴＣＰ接続の第４例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００６８】
図２及び図８を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）からクライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００６９】
次に、クライアント（１００）がサーバ（２００）に接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットに対する応答確認（ＡＣＫ＿２）とＦＩＮフラッグがセットされた応答確認終了（ＡＣＫ＿２／ＦＩＮ）パケットを送信する場合、本発明によって、サーバ（２００）が、クライアント（１００）から送信された応答確認終了（ＡＣＫ＿２／ＦＩＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態に移動する。
【００７０】
その後、サーバ（２００）が、クライアント（１００）から送信された不正な応答確認（ＡＣＫ＿６）パケット（すなわち、正常なパケット流れに対する応答確認パケットでなく、悪意のあるクライアントが故意に伝送する任意の応答確認パケットを意味する）の受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）から遮断（ＣＬＯＳＥＤ）状態に移動する。
【００７１】
一方、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態でクライアント（１００）が不正な応答確認（８８ＡＣＫ＿６）パケットを含めて何らのパケットを送信せず、不正に接続を終了した場合、本発明によって、タイムアウトが作動するようになり、サーバ（２００）も、ＴＣＰ接続を終了するために、直ちに遮断（ＣＬＯＳＥＤ）状態に移動する。
【００７２】
すなわち、サーバ（２００）が、あらかじめ設定されたタイムアウト時間（好ましくは、約１０秒程度）の間に何らのパケットを受信しなければ、サーバ（２００）側のＴＣＰ状態は、遮断待機（ＣＬＯＳＥ＿ＷＡＩＴ＿２）状態から遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００７３】
図９は、不正なＴＣＰ接続の第５例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００７４】
図２及び図９を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）が、クライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００７５】
このような応答待機（ＡＣＫ＿ＷＡＩＴ）状態でクライアント（１００）が何らのパケットを送信せず、不正に接続を終了した場合、本発明によって、タイムアウトが作動するようになり、サーバ（２００）も、ＴＣＰ接続を終了するために直ちに遮断（ＣＬＯＳＥＤ）状態に移動する。
【００７６】
すなわち、サーバ（２００）が、あらかじめ設定されたタイムアウト時間（好ましくは、約６０秒程度）の間に何らのパケットを受信しなければ、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態からすぐ遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００７７】
図１０は、不正なＴＣＰ接続の第６例に対するパケットの流れ及び本発明の実施例に適用されたＴＣＰ状態遷移の動作を説明するための図である。
【００７８】
図２及び図１０を参照すれば、サーバ（２００）が、クライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、聞き取り（ＬＩＳＴＥＮ）状態から接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態に移動した後、サーバ（２００）が、クライアント（１００）への接続要請応答（ＳＹＮ／ＡＣＫ＿１）パケットの送信を確認すれば、サーバ（２００）側のＴＣＰ状態は、接続要請受信（ＳＹＮ＿ＲＣＶＤ）状態から応答待機（ＡＣＫ＿ＷＡＩＴ）状態に移動する。
【００７９】
このような応答待機（ＡＣＫ＿ＷＡＩＴ）状態で同じクライアント（１００）が同一の接続要請（ＳＹＮ）パケットを続いて送信する場合、本発明によって、サーバ（２００）が同じクライアント（１００）から送信された接続要請（ＳＹＮ）パケットの受信を確認すれば、サーバ（２００）側のＴＣＰ状態は、応答待機（ＡＣＫ＿ＷＡＩＴ）状態から直ちに遮断（ＣＬＯＳＥＤ）状態に移動し、ＴＣＰ接続を安全に終了する。
【００８０】
前述したように、本発明の実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法を具現するためのモニタリングモデルによれば、既存のＴＣＰプロトコルスペックにおいてサーバ側に継続的なキューの積載によるサービス拒否現象が発生する前に確認及び遮断することによって、初期にサービス拒否に対する攻撃を効果的に防止することができる。
【００８１】
一方、本発明の一実施例に係るＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法は、コンピュータで読み取り可能な記録媒体にコンピュータが読み取り可能なコードとして実装可能である。コンピュータが読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存される任意の記録装置を含む。
【００８２】
例えば、コンピュータが読み取り可能な記録媒体として、ＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、ハードディスク、フロッピー（登録商標）ディスク、移動式保存装置、非揮発性メモリ（フラッシュメモリなど）、光データ保存装置などが挙げられ、また、搬送波（例えば、インターネットを用いた伝送）の形態で具現されるものも含まれる。
【００８３】
また、コンピュータで読み取り可能な記録媒体は、コンピュータ通信網で接続されたコンピュータシステムに分散され、その方法は分散方式で読み出すことができるコードで保存され実行されることができる。
【００８４】
前述した本発明によるＴＣＰ状態遷移を利用したサービス拒否攻撃の遮断方法の好ましい実施例について説明したが、本発明は、これに限定されるものではなく、特許請求範囲と発明の詳細な説明及び添付の図面の範囲内で様々に変形して実施することが可能であり、これも本発明に属する。
【符号の説明】
【００８５】
１００  クライアント
２００  サーバ
【図１】
2010539735.tif 000003
【図２】
2010539735.tif 000004
【図３】
2010539735.tif 000005
【図４】
2010539735.tif 000006
【図５】
2010539735.tif 000007
【図６】
2010539735.tif 000008
【図７】
2010539735.tif 000009
【図８】
2010539735.tif 000010
【図９】
2010539735.tif 000011
【図１０】
2010539735.tif 000012
【国際調査報告】
2010539735.tif 000013
2010539735.tif 000014