セキュリティ

DoS攻撃とは

2019年11月14日

DoS攻撃って知っているかな?
ドス攻撃?
サーバに過剰な負荷を与えてサーバをダウンさせたりする攻撃ですよね。
そうだね。本記事では「DoS攻撃」について分かりやすく説明していきます。

DoS攻撃ってなに?

DoS攻撃(Denial of Servicesの略)とは、攻撃の標的となったWebサイトやサーバに対して大量のデータを送信するサイバー攻撃の一種です。

大量データの負荷に耐えられなくなった、Webサイトやサーバはシステムを正常に稼働することが困難な状態に追い込まれます。

DoS攻撃には、以下の2通りが存在します。

名前 説明
フラッド型 Floodとは"洪水"という意味で、大量のデータや巨大なデータを送り付けることでサービスを利用不能にする攻撃。
脆弱性型 サービスの脆弱性を利用することで、"不正処理"を行わせサービスを利用不能にする攻撃。

DoS攻撃とDDoS攻撃の違い

DDoS攻撃とは、攻撃者が大量のマシン(踏み台)を不正に乗っ取ったうえで、標的サービスに対し一斉にDos攻撃を仕掛ける攻撃のことをいいます。

DoS攻撃は、標的に対して"攻撃するマシンは1つ"ですが、DDoS攻撃は"攻撃するマシンが複数"となります。

DoS攻撃の攻撃手法

Dos攻撃の代表的な攻撃手法を紹介します。

SYNフラッド攻撃

SYNフラッド攻撃とは、TCP3ウェイ・ハンドシェイクを利用した攻撃です。

3ウェイハンドシェイクのイメージは、下記図の通りです。

※SYNは質問、ACKには回答が入ります。

3ウェイハンドシェイク

3ウェイハンドシェイクは2つのコンピュータ間で、SYN(質問)とACK(回答)のやり取りをして通信を確立する方式です。

  1. PC1がSYNを投げる(接続OK?)
  2. PC2がSYNとACKを投げる(OKです。こちらも接続OK?)
  3. PC1がACKを投げる(OKです)
  4. 接続が確立

SYNフラッド攻撃は、以下のように大量のSYNを投げ、ACKを返さないという手法です。

  1. PC1が大量のSYNを投げる(接続OK?)
  2. PC2が大量のSYNに対するSYN/ACKを投げる(OKです。こちらも接続OK?)
  3. PC1はACKを投げずに無視
  4. PC2はACKが返ってこないので待機。結果、リソースを食いつぶされてしまう

UDPフラッド攻撃 / ICMPフラッド攻撃

ICMPやUDPのようなコネクションレスのサービスでは発信元の偽装が容易なので、DoS攻撃を行う攻撃者にとっては都合のよいプロトコルです。

UDPフラッド攻撃とは、UDPポートに対して大量のデータを送信する攻撃です。

そしてICMPフラッド攻撃は、ICMPパケット(ping等)を大量に送信する攻撃。どちらも大量にパケットを送信することで、サーバに負荷を掛けサービスを利用不能にしようとする攻撃です。

F5アタック(F5攻撃)

F5アタックとは、Webブラウザに備わっている再読み込み機能を利用した手法です。キーボードの「F5」キーを連打することで、再読み込みを繰り返し、サーバに負荷を掛けるという非常に単純な攻撃手法です。

「F5」キー連打くらいでサーバの負荷になるの?
例えば1万回「F5」キーが連打されたら、1万回更新処理が走るということなので、サーバによっては負荷になるかもしれません。

ただ、最近はサーバの性能が上がっているので、「F5」キーの連打でサーバがダウンすることは、ほとんどないと考えらえます。

helpful