DoS攻撃

DoS攻撃について

DoS(Denial of Service)とは

DoS攻撃とは、システムに過負荷を与えたり、例外処理やバグなどのシステムの欠点を突くことでターゲットのサービスを正常動作できないようにする攻撃手法です。

例えば、特定のWEBサーバに対して、同時刻に大量のリクエストを発行することでWEBサーバを機能不全にする攻撃が挙げられます。

DoS攻撃は、サービス妨害攻撃や使用不能攻撃とも呼ばれます。


DDoS(Distributed Denial of Service)攻撃

DDoS攻撃とは、踏み台と呼ばれる複数のコンピュータが、ターゲットサーバに対してDoS攻撃を行うことです。

事前にボットなどを作成し、多数のホストに侵入してDDoS用攻撃ツールを仕掛けておき、攻撃開始時にツールを同時起動して一斉に攻撃することで、被害を拡大させます。

DDoS攻撃は、実行の意思をもった攻撃者が一人でも行える攻撃です。

協調分散型DoS攻撃、分散型サービス不能攻撃などとも呼ばれます。


DRDoS(Distributed Reflection Denial of Service)攻撃

DRDoS攻撃とは、TCP/IPプロトコルの基本的な通信手順やアプリケーションによって生成される応答パケットを複数のホストで大量に発生させてDoS攻撃を行う攻撃手法です。

DDoS攻撃では予めエージェントホストを作成する必要がありますが、DRDoS攻撃ではTCP/IPの基本通信手順を利用するだけなので、事前準備の必要がありません。

分散反射型サービス不能攻撃とも呼びます。


DoS攻撃の種類

SYN flood

TCPの接続開始要求であるSYNパケットを大量に送信することで、ターゲットサーバのシステムリソースを浪費させてサービスを停止状態にする手法です。

サーバはクライアントからのACKパケットを一定時間 (数十秒) のあいだ待たなければならないTCP/IPの仕様を突いた攻撃となっています。


サーバに大量のSYNパケットを送ったあと、サーバから返された「SYN ACK」パケットを無視します。

サーバ側からすれば、クライアントからACKパケットが届かないということは、ネットワーク障害が発生しているか、通信速度が非常に遅いかと判断して、待ち合わせ処理を行います。

全てのSYNパケットに対してタイムアウトするまでクライアントの情報を保持することとなり、システムリソース(特にメモリ)を使い尽くすこととなり、サービスの正常提供が不可能な状態に追い込まれます。


UDP flooding attack

ターゲットホストのUDPポートに大量のパケットを送信することでシステムリソースを浪費させてサービスを停止状態にする手法です。

UDPはコネクションレス通信であるため、発信元アドレスの偽造が容易であり、攻撃者の特定を困難にします。


ICMP flooding attack

ターゲットホストに大量のICMP echo requestパケット(ping)を送信することでシステムリソースを浪費させてサービスを停止状態にする手法です。

多人数で同時に実行することで、正規に用意された機能でもシステムの正常稼働を阻害することができる例です。


Ping of Death

規格外や悪意のあるpingを送りつけることによる攻撃手法です。

ネットワークプロトコルに違反する(65,536バイト以上のサイズなどの)pingを送ることでバッファオーバフローを発生させ、クラッシュの引き金となります。

1996年頃にping of deathが明らかとなりましたが、以降修正されており、既に過去のものとなっています。


smurf攻撃

ICMP echo requestパケット(ping)の送信元を偽装し、LAN上の複数ホストに送信することで、ターゲットホストに大量のパケットを送りつける攻撃手法です。

他マシンを利用することで、間接的に攻撃する方法です。

応答を返すホスト数が多いほど大量のパケットをターゲットホストに送信することができます。


Connection Flood攻撃

大量のTCPコネクションを確立させるだけで後は何もしない攻撃手法です。

ターゲットのサーバーは接続を維持し続けるためにリソースを使い尽くしてしまいます。


HTTP GET Flood

TCPコネクション確立後に繰り返しHTTP GETコマンドを送り,サーバーにコンテンツ送信の負荷をかける攻撃手法です。


メール爆弾(e-mail bombing)

ターゲットホストのメールアドレスに対して大量の電子メールを送り付けることで負荷をかける攻撃手法です。

携帯電話のメールアドレスに大量のメールを送信すれば、その携帯電話は一定時間メール受信処理のみに追われることとなります。


WinNuke attack

標的サーバーが Windows 9x の場合、NETBIOS(TCP Port 139)に OOB (Out of Bounds) のデータを送ってダウンさせる攻撃手法です。


finger attack

finger サービスにコマンド「finger username@@@...@@@標的host」を送りつける攻撃手法です。

「@」が多いほど、効果が大きい。


"land"/"latierra" attack

乗っ取ったSYN パケットを識別可能な送信元/送信先アドレス/ポートとともに送信することで、システムはTCP接続を完了しようとして無限ループに陥れる攻撃手法です。


その他DoS攻撃

F5攻撃

多数のユーザが同時的一斉に「F5」ボタンをクリックして、WEBリクエストを発行することで、WEBサーバに負荷をかける攻撃手法です。

簡単な操作にもかかわらず、大勢の参加者があつまることで意外と大きな被害を生むこととなります。


田代砲シリーズ

田代砲とは、WEBサーバに対して大量のリクエストを行うCGIスクリプトです。

「田代砲」で検索すれば、すぐに利用できるWEBサイトが複数見つかります。

実際には、連続でWEBリクエストを発行する簡単なスクリプトです。


関連ページ