DDoS攻撃とは?攻撃の目的・種類・事例・対策について解説
サイバー攻撃は年々手口が巧妙になっていますが、中でもDDoS攻撃は防ぐのが難しい攻撃のひとつです。インターネットでサービスを提供している企業や団体だけでなく、個人レベルでもDDoS攻撃による被害を受ける可能性があります。この記事では、DDoS攻撃の意味や全体像について説明し、DDoS攻撃の主な目的や、事例、対策方法について解説します。
目次
DDoS攻撃とは?どのような仕組みなのか?
DDoS(分散型サービス拒否)攻撃とは、サイバー攻撃の種類のひとつで、攻撃者が複数の機器を踏み台にして、特定のサーバーなどの機器に一斉に攻撃を仕掛け、それを利用しようとする人がアクセスできなくなるようにする攻撃方法です。踏み台になる機器は互いに関連性がなく、犯人を特定しにくいという特徴を持ちます。日常生活の現象で例えるなら、道路がハッカーの送った車で渋滞しているために、側道からくる正規の車が入れなくなっているような状態です。
DDoS攻撃は、複数のコンピュータを利用するため、かなり強力です。ハッカーは、機器を感染させてボットにし、遠隔操作で特定の人やあなたのIPアドレスに一斉に誘導することでネットワークを構築します。これにより、サービスがクラッシュすることがあります。
DDoS攻撃は24時間以上続くこともあり、追跡するのは困難です。あなたのコンピュータがボットネットの一部となり、悪意のあるコマンドに密かに応答しているかもしれませんが、ターゲットにされている人たちはそれに気づくことはありません。わずかにパフォーマンスが低下したり、デバイスが過熱したりする程度の兆候しかないため、気づくのはとても困難なのです。ターゲットを攻撃するトラフィックは、マルウェアに感染しているとはいえ、一般のデバイスから来ています。そのため、本物のトラフィックと悪意のあるトラフィックの区別がさらに難しくなります。
DDoS攻撃は、ネットワーク接続の各種コンポーネントを標的にすることもあれば、それらを混合して標的にすることもあります。インターネット上で行われるすべての接続は、OSIモデルのレイヤーを通過します。ほとんどのDDoS攻撃は、以下の3つの層で発生します。
- ネットワーク層(レイヤー3):Smurf攻撃、ICMP Flood攻撃、IP/ICMPフラグメンテーションなどの攻撃があります。
- トランスポート層(レイヤー4):この層の攻撃には、SYNフラッド、UDPフラッド、TCPコネクションの枯渇などがあります。
- アプリケーション層(レイヤー7):主に、HTTP暗号化攻撃です。
DoS攻撃とDDoS攻撃の違い
DoS攻撃とDDoS攻撃の違いは、攻撃対象となるコンピュータの数にあります。DoS攻撃は、1台のコンピュータで行われます。そのため、攻撃の規模には限界があり、攻撃者の特定も容易です。
一方、DDoS攻撃は多数のコンピュータを踏み台にするため、DoS攻撃よりもはるかに高度で大規模な攻撃を仕掛けることができます。さらに、多数のコンピュータを踏み台にする攻撃者を特定することは容易ではありません。
攻撃者が特定できなければ、DDoS攻撃による被害を被害者が補償しなければいけません。以上の理由で、DDoS攻撃は私たちが強く警戒すべき脅威なのです。
DDoS攻撃の目的
では、DDoS攻撃の目的は何なのでしょうか?考えられる4つの目的を見てみましょう。
- 脅迫:DDoS攻撃の目的としては、企業や組織のサービスを脅かすことが考えられます。実際に攻撃を仕掛けてサーバーに負荷をかけてアクセスを遮断するケースと、攻撃を告知して金銭を要求するケースの2種類があります。
- 金銭の搾取:上記の「脅迫」に関連して、DDoS攻撃を仕掛けてサーバーへのアクセスを遮断した上で、「お金を払えば攻撃をやめる」という要求をする、金銭の搾取を目的とした攻撃もあります。
- 抗議活動:DDoS攻撃の中には、企業や組織への抗議を目的としたものがあります。たとえば、政治への不信感や不満を表明するために、政府機関のサーバーへのアクセスを遮断するDDoS攻撃が行われることもよくあります。
- 特定の企業に対する嫌がらせ:特定の企業に対する嫌がらせを目的とした攻撃もあります。具体的な動機を推測することは困難ですが、たとえば、ライバル企業のサイトをダウンさせたり、サイト運営者に迷惑をかけたりする目的でDDoS攻撃が行われる可能性があります。
DDoS攻撃の種類
一般的に知られているDDoS攻撃には、以下のようなものがあります。
TCPコネクション攻撃
TCPコネクション攻撃は、別名SYNフラッド攻撃と呼ばれ、ホストとサーバー間の3ウェイTCPハンドシェイクが完了しない場合に起こります。この攻撃では、ハンドシェイクは開始されますが、ハッカーはサーバーをぶら下げ、ポートを開いたままにします。これは、サーバーが他のリクエストを受けられないことを意味します。ハッカーはさらにハンドシェイクを繰り返し、最終的にはサーバーをクラッシュさせます。
ボリュメトリック攻撃
ボリュメトリック攻撃は、DDoS攻撃の中でも最も一般的なタイプで、単純に、標的とインターネットの間で利用可能なすべての帯域幅を消費するというものです。ボットネットを利用し、特定のターゲットに誘導することで行われるケースがほとんどです。
ボリュメトリック攻撃の例としては、ハッカーがターゲットのIPに偽装して、オープンなDNSサーバーに複数のリクエストを行うことが考えられます。この攻撃は、DNSサーバーが応答したときに、ターゲットが処理できる範囲を超えた量のデータを送信するように構成されています。
フラグメンテーション攻撃
インターネット上で送信されるトラフィックは、データパケットに分けられます。データパケットは、使用されているトランスポートプロトコルがTCPかUDPかによって、異なる方法で移動し再構成されます。フラグメンテーション攻撃は、データの流れを乱す偽のデータパケットを送信するため、サーバーに負担をかけることになります。
アプリケーション層攻撃
アプリケーション層またはレイヤー7の攻撃は、その名の通りアプリケーションを対象としています。つまり、サーバーがウェブページを生成したり、HTTPリクエストに応答したりする層です。このような攻撃は、サーバーにとっては、誰かが同じページで何度も更新ボタンを押すようなもので、一見正当なトラフィックのように見えます。それゆえ、このような攻撃は、ネットワーク層の攻撃に比べてコストがかからず、検知が困難です。
増幅型DDoS攻撃の種類
増幅型DDoS攻撃とは、サイバー犯罪者がDNS(ドメイン・ネーム・システム)サーバーのセキュリティ脆弱性を狙って行う攻撃です。小さなリクエストを巨大なリクエストに変換し(これが「増幅」という言葉の由来です)、ターゲットの帯域を圧迫し、標的となったサーバーの処理を停止させます。増幅型攻撃には「DNSリフレクション」と「CharGENリフレクション」の2つのタイプがあります。
DNSリフレクション
DNSサーバーの仕事は、あなたが検索バーに入力したドメイン名のIPアドレス(インターネット上の住所のようなもの)を探すことです。DNSリフレクション攻撃とは、ハッカーがターゲットのIPアドレスをコピーしてDNSサーバーにリクエストを送り、大きな返信を求めるものです。返答は通常の70倍にまで増幅され、ターゲットを瞬時に圧倒します。
CharGENリフレクション
CharGENとは、インターネットの基準からすると、1983年にデバッグやテストのために作られた古いプロトコルのことです。残念ながら、インターネットに接続されたプリンターやコピー機の多くは、いまだにこのプロトコルを積極的に使用しており、ハッカーはCharGENの古いシステムが持つ多くの抜け穴を利用しています。ハッカーは、ターゲットのIPアドレスを装って、CharGEN上で動作しているものに、たくさんの小さなデータパケットを送信します。そして、そのデバイスはターゲットのシステムにUDP(ユーザー・データグラム・プロトコル)の応答を殺到させ、ターゲットとなるサーバーを圧倒して再起動させたり、完全に切断させたりするのです。
DDoS攻撃に対するセキュリティ対策
では、DDoS攻撃に対しては、どのような対策が有効なのでしょうか。ここでは、3つの基本的な対策を紹介します。
- 国別にアクセスを制限する:DDoS攻撃は海外のコンピュータを経由して行われることが多いため、日本国内からのアクセスのみを許可し、海外からのアクセスを拒否することは、セキュリティ対策として有効な方法です。
- IPアドレスを制限する:DoS攻撃はコンピュータからのデータ通信によって行われるため、攻撃者のIPアドレスを制限することで防げる可能性があります。しかし、DDoS攻撃はDoS攻撃のように「単一のIPアドレス」から発生するものではないため、攻撃者のIPアドレスを正確に把握して100%攻撃を防ぐことは困難です。とはいえ、DoS攻撃に有効なIPアドレス制限は、セキュリティ向上の一環として実施すべき対策といえるでしょう。
- DDoS対策ツールを導入する:DDoSを防ぐためには、DDoS対策ツールを導入するのもいいでしょう。DDoS対策ツールとは、アプリケーションインフラをサイバー攻撃から守るためのツールであり、一般的にはWAF(Webアプリケーションファイアウォール)が代表的なツールとされています。AWSに代表されるようなクラウドサービスにも、WAFの機能を利用して標的型攻撃からアプリケーションを守ってくれる機能があります。
DDoS攻撃の数
技術の進歩に伴い、セキュリティシステムのレベルは年々高まっていますが、それと同時に、セキュリティシステムを突破するためのツールも進化しています。1990年代の攻撃と、現代の標準的なDDoS攻撃の強度を比較すると、その差は歴然です。
90年代のDDoS攻撃の平均リクエスト数は、1秒間に150回を超えることはほとんどありませんでした。一方、最近のDDoS攻撃で成功した最大の記録である2018年のGitHub攻撃では、1秒間に1.35テラビットのトラフィックがサイトに投げ込まれたことがわかります。この攻撃により、サイトは8分間機能を停止しました。
DDoSによるチート行為は違法なのか?
DDoSは、多くの国で違法行為とみなされます。たとえば、アメリカでは、DDoSは連邦犯罪とみなされ、罰則や懲役刑が科せられることがあります。ヨーロッパのほとんどの国では、DDoS攻撃を行うと逮捕される可能性があり、イギリスでは最高10年の懲役刑が科せられることもあります。
また、DDoSによるチート行為もゲーム業界に蔓延しています。日本では、「サドンアタック」というオンラインゲームのサーバーにDDoS攻撃を仕掛けた少年3人が書類送検されるというニュースがありました。この事件からわかるように、日本でもDDoSによるチート行為は違法です。
DDoS攻撃を追跡することはできるのか?
DDoS攻撃は、そのほとんどが何百、何千もの機器に分散しているため、追跡するのはかなり困難です。また、このような攻撃を仕掛ける側は、通常、見つからないように対策をしています。
ある種のサイバーセキュリティツールを使ってトラフィックを分析することで、DDoS攻撃が発生したときにそれを特定することは可能です。しかし、それでは攻撃を止めることはできません。せいぜいデータを分析したり、DDoS攻撃をリアルタイム可視化したりして、今後のために適切なサイバーセキュリティの変更を行うことができる程度です。
VPNはDDoS対策になるのか?
DDoSは主に、開発者やパブリッシャーを脅迫したり、特定の人物やプラットフォームの評判や売上を落としたりするために利用されます。しかし、個人ユーザーも被害を受ける可能性があります。これは通常、オンラインゲームで起こります。対戦相手があなたのゲームプレイを妨害するためにDDoS攻撃を仕掛けてくるかもしれません。それ自体はセキュリティ上のリスクではありませんが、競争の激しいゲームをプレイしている場合には、非常にイライラさせられることもあります。こうしたことを防ぐため、DDoS攻撃対策を個人レベルでも行いたい時があるかもしれません。
例えば、P2Pゲームでは、他のプレイヤーに直接接続すると、相手があなたのIPアドレスを調べて、それを使ってあなたにDoSを仕掛けることができます。他のプレイヤーから直接接続される事態を防ぐには、VPNを利用するといいでしょう。VPNとはWeb上でやりとりするトラフィックを暗号化してくれる仕組みで、VPNを使用中のパソコンやスマホに導入すれば、元のIPアドレスを隠すことができます。あなたの本当のIPを知らなければDoS攻撃はできないため、これは有効な対策となります。