DDos攻撃対策となるサービス「AWS Shield」の概要や「AWS WAF」の違いについて紹介

はじめに

かつてはセキュリティ面が懸念され、個人情報を扱うようなシステムはクラウドサービスではなくオンプレミスで環境構築・開発が行われることがほとんどでした。しかしAmazonやGoogle、Microsoftといった大手IT企業が次々とクラウドサービスをリリースしてセキュリティ面の課題もクリアすると、個人利用に限らず開発のスピード感を重視するベンチャーやスタートアップ企業で利用されるようになり、さらには大手企業や政府関連のシステムにおいても採用されることが珍しくなくなりました。2023年現在では「クラウドファースト」という考えの下、新たなシステム導入や移行先として優先的にクラウドが選択されるようになっている状況です。

クラウドサービスはマネージドあるいはフルマネージドであることが基本で、サービス形態によって異なるもののベンダー側で多くの部分を管理してくれます。そのことによってエンジニアの人件費や作業工数の削減、効率の良い開発が可能となりますが、一方でユーザー側で管理しなければならない部分が残っているのも事実です。その一つがセキュリティであり、この部分に関しては各ベンダー側で様々なリスクに対応できる無料・有料のセキュリティサービスが提供されていて、ユーザーは必要に応じてそれらを利用し自身で管理することとなっています。

今回はそんなAWSの提供するセキュリティサービスの一つ「AWS Shield」について紹介していきます。初めてクラウドサービスやAWSを利用する方に向けて初めにAWSの概要を紹介した上でサービスの説明に移るため、すでにAWSに関して十分に把握している方はAWS Shieldの説明からご覧ください。なおその他、セキュリティを脅かす脅威やOSIモデル、AWS WAFとの違いについても紹介するので、すでにAWSを運用中でどのセキュリティサービスを導入するか迷っている方もぜひご覧ください。

Amazon Web Services (AWS)について

AWSはAmazonにより2006年にサービス開始されたパブリッククラウドサービスで、2023年時点で200以上のサービスが提供されています。AWSのサービスの一部には無料枠というものが設けられていて、その枠内であればずっと無料でシステム運用することができます。またクラウドサービスならではの稼働後の柔軟なスケーリングも可能なため、試しに使ってみたい、スモールスタートしたいという要望にも応えてくれます。無料枠が用意されているサービスについてはAWSの公式サイト内「AWS 無料利用枠」で紹介されているので、ぜひ利用前に確認してみてください。なお、無料枠を利用する場合は事前にAmazonの無料アカウントの作成が必要という点は抑えておきましょう。

代表的なサービスとしては仮想マシンの「Amazon EC2」、ストレージの「Amazon S3」、DNSの「Amazon Route 53」、リレーショナルデータベースシステムの「Amazon RDS」、監視サービスの「Amazon CloudWatch」等が挙げられます。他にもデータ分析や機械学習に特化したサービスもあり、AWSだけでほとんどの分野のシステム環境の構築・開発が行える程のサービスが揃っていると言えます。

基本的にこれらのサービスを単独もしくは複数組み合わせて利用しますが、オンプレミス環境と連携することや、「Amazon RDS on VMware」のように一部のサービスにおいてはオンプレミス環境上で稼働させることが可能なサービスもあります。そのためAWSはオンプレミスの移行先で検討することも可能です。

AWSで定義されている「責任共有モデル」とは?

AWSではベンダー側とユーザー側の管理における責任分界点について「責任共有モデル」として公式サイト内に掲載しています。AWSではIaaS、PaaSという形態のクラウドサービスが提供されており形態によって多少異なるものの、基本的にインフラストラクチャーを実装している施設がAWS側の責任範囲となることが示されています。実装している施設とは主にデータセンターのことを指し、データセンターに設定されているサーバーの物理的な障害や自然災害、攻撃、情報漏洩といったリスクの管理・保守がAWSによって行われます。またコンピュータ内で利用しているホストOSのセキュリティに関してもAWS側の責任範囲となっています。

一方でゲストOSやネットワーク設定、アプリケーション、アクセス権限の設定・管理、データの暗号化に関してはユーザー側の責任範囲となり、これらに付随するシステムのセキュリティは自身で守らなければなりません。

そうは言ってもAWSはそれらに一切関与せずというわけではなく、実際には様々なセキュリティサービスを提供してユーザーをサポートしている状況です。そのセキュリティサービスに該当するのが今回紹介する「AWS Shield」や「AWS WAF」で、他にも「AWS Organizations」「Amazon GuardDuty」等があり、無料で利用できる部分もあります。

AWS Shieldについて

今回取り上げるAWS Shieldは名称に「シールド(盾、保護物等を意味する)」とあるようにDDoS攻撃からコンピュータを保護するマネージドなセキュリティサービスです。AWS Shieldの詳細について紹介する前に、DDoS攻撃を含めたセキュリティの脅威についておさらいしておきます。

様々なセキュリティの脅威とDDos(Denial of Service Attack)攻撃について

基本情報技術者試験等を運営する独立行政法人情報処理推進機構(IPA)が2022年に発表した「情報セキュリティ10大脅威」によると、1位からランサムウェア、標的型攻撃による情報窃取、サプライチェーンの悪用、テレワーク等の働き方の変化を利用した攻撃、内部不正による情報漏洩、脆弱性対策情報の悪用、修正プログラムの公開前を狙うゼロデイ攻撃、ビジネス詐欺メールによる金銭被害、予期せぬIT基盤の障害による業務停止、不注意による人的な情報漏洩の順で10大脅威が紹介されていました。

ランサムウェアは一時期話題になりましたが、データを暗号化して利用できない状態にした上で復元するための手段として身代金(ransom)を要求するという手法を採ったウィルスです。仕掛けた側は暗号化したデータを自由に扱えるため流出されてしまう可能性もあり、慌てて身代金を払ったとしてもデータが正常に復元されて戻ってくるとは限りません。このランサムウェアには多くの企業や病院等が感染し、その修復には多くのコストと時間が費やされたという事例があります。

標的型攻撃による情報窃取は、機密情報等の重要度の高い情報を保持した企業や研究所、さらには政府機関を標的としたものです。このサイバー攻撃によって有名企業の情報が流出したというニュースを耳にしたことがある人も多いと思いますが、気づくまでに時間がかかることも多く、発覚した時には取り返しのつかない状況となっていることも多いです。また次のサプライチェーンの悪用にも関連性があり、ビジネスを提携している企業の中でもセキュリティに脆弱性の多い企業のシステムを踏み台にして、最終的に真のターゲットである企業のシステムを狙って攻撃を仕掛けるという手法が採られることもあります。

テレワーク等の働き方の変化を利用した攻撃は、COVID‑19の大流行で急な在宅勤務を余儀なくされ、セキュリティ関連の整備が整わずにその脆弱性を狙って攻撃が仕掛けられたパターンを指します。VPN(専用回線)を利用している場合でも脆弱性がある場合は攻撃される可能性があったり、管理が十分に行き届いていない企業では無許可で個人用のパソコンを業務で使用していたりという状況もあります。内部不正による情報漏洩も管理や教育が不十分な企業に起こりやすく、社外持ち出し禁止のデータをUSBメモリ等で持ち出されたり、不要なアカウントが残っていたことによってそのアカウントを悪用されたりして情報が流出してしまう状況があります。退職者によって顧客情報等が転職先の企業に流出するというインシデントもこのパターンに該当します。

脆弱性対策情報の悪用は、公開された脆弱性やバグの情報を基に攻撃を仕掛けられるというパターンです。脆弱性やバグが見つかった際はベンダー側の当然の義務としてユーザーに注意喚起するために情報が一般に公開されますが、この対策に未対応の企業のシステムに対して攻撃を仕掛けられるという状況があります。また次のゼロデイ攻撃とは、ベンダー側が発見して修正プログラム等を作成する前に攻撃者が脆弱性を発見して攻撃用のプログラムを作成してしまう攻撃のことを指します。この攻撃を仕掛けられた場合は、改修プログラムがリリースできるまでソフトウェア等の利用停止をユーザーに呼び掛けなければならない状況に陥る可能性もあります。

ビジネス詐欺メールによる金銭被害は、疑うことのない人物になりすましたメールが送信されてきたり、実際にその人物のメールアドレスを乗っ取って金銭を要求する詐欺の手段です。当初は明らかに日本語がおかしい等の違和感に気付けるものが多かったものの、次第に内容が巧妙になり、気付きづらいメールが送信される状況になっています。また同じメール関連の脅威として、近年「Emotet(エモテット)」と呼ばれるマルウェアに巧妙に作成されたメールを介して感染させるという攻撃も見受けられます。

予期せぬIT基盤の障害による業務停止はいわゆるシステム障害に該当します。不注意による情報漏洩は主に不注意等による人為的なミスのことであり、各組織で再発を起こさない仕組み作りや教育が求められます。

以上の10大脅威の中に直接的に用語が含まれていないものの、システムの脆弱性を利用して処理できない程の大量のパケットを送ってシステムダウンを誘発するDDoS攻撃は脅威の一つであることには変わりなく、利用者の多い大規模なシステムが標的となることもあります。DDoS攻撃を仕掛けるための踏み台とするマルウェアが登場したこともありました。DDoS攻撃の目的は単なる嫌がらせであったり、サービス停止に追い込むことによる業務妨害、政治的な意思表示や政治目的とするハクティビズムであったりと様々で、2023年現在においてもこれらの目的を持ったDDoS攻撃が特定のレイヤー(階層)に向けて増加している状況です。それでは次にこの「レイヤー」の概念について詳しく解説します。

OSIモデルについて

ネットワークを共通化するための統一モデルとしてOSI(Open Systems Interconnection)があり、このモデルではレイヤー(階層)を7つに分けて定義しています。一番低層となる第1層には物理層があり、第2層にデータリンク層、第3層にネットワーク層、第4層にトランスポート層、第5層にセッション層、第6層にプレゼンテーション層、第7層にアプリケーション層と上に連なっていきます。

物理層はケーブルやスイッチといったデータ転送関連の物理機器における電圧レベルや切り替えタイミング、伝送レート、伝送距離、コネクタ等が該当します。データリンク層は物理層とネットワーク層の間に位置して両者の仲介となるプロトコル等を定義している層となります。ネットワーク層は異なるネットワーク間におけるデータ転送のルーティング等を行う層であり、同ネットワーク間で通信を行う場合この層は不要となります。

トランスポート層は、次に来るセッション層からデータを取得してセグメントに分割したうえでネットワーク層に受け渡す役割を持ちます。フロー制御やエラー制御を行うのもこの層です。セッション層は通信の開始・終了に関する層である他、データ転送とチェックポイントの同期をとることで転送中に通信不安定等で中断が発生しても途中から再開することを可能としています。

プレゼンテーション層は最後のアプリケーション層が問題なくデータを処理できる状態に変換や、暗号化等を用いて調整する役割を持っています。複数の通信によるデータ構造の違いをプレゼンテーション層で調整してアプリケーション層に渡します。またアプリケーション層から送られたデータを圧縮してデータの転送量を抑える役目もあります。アプリケーション層はユーザーと直接の接触がある層であり、Webブラウザやメールソフトはこの層と直接通信を行います。HTTP、SMTPといった良く聞くプロトコルが存在するのもアプリケーション層となります。

データの送信側・受信側によって以上のOSIモデルにおける各階層を上から下、下から上へと遷移するととなります。そしてDDoS攻撃はこれらの階層のうち第3層、第4層のネットワーク層、トランスポート層あるいは第7層のアプリケーション層といった特定の階層を標的として実施されます。

AWS Shieldの特徴

遠回りとなりましたが、今回の本題となるAWS Shieldの特徴について紹介します。ここまで解説してきたセキュリティの脅威やOSIモデルについて理解できていればAWS Shieldそのものを理解するのは難しくないため、独自の仕様となっている部分について押さえておきましょう。

AWS ShieldがDDoS攻撃からコンピュータを保護するサービスであることは既に述べましたが、具体的には第3層のネットワーク層、第4層のトランスポート層、第7層のアプリケーション層に対するDDoS攻撃からの保護をすることができます。AWS Shieldはオンプレミス環境に対しても対応可能であり、 IPv4・IPv6の両方にも対応しています。

AWS Shieldには無料で利用できる「Standard」と有料の「Advanced」という2つのプランがありますが、「Advanced」を契約することでアプリケーション層の保護が可能になるといった仕様になっています。その他の違いとしては「Advanced」の方が総合的に高機能である他、EC2、ELB、CloudFront、AWS Global Accelerator、Route 53で実行されているアプリケーションの保護が可能であること、専門知識を持ったサポートチームによる24時間365日のサポート(DRTその後のSRT)が受けられ、DDoS攻撃によって意図せず増えてしまった従量課金分の払い戻し(スケーリング用DDoSコスト保護)が可能となる点が挙げられます。そのためDDoS攻撃による脅威から十分に保護したいという場合は「Advanced」がおすすめではありますが、月額料金3,000.00USDと小規模なシステムにおいては割高になる程度に高額な料金が発生する点は注意が必要です。なお1年のサブスクリプション契約も用意されています。

ネットワーク層、トランスポート層へ攻撃されることによって発生する負荷やリソース不足を防げる点だけでも十分なメリットですが、通常Webアプリケーションの脆弱性を狙ったアプリケーション層への攻撃は検出が難しい部分があるため、それを防げる点も大きなメリットとなります。また「Advanced」においてはAmazon CloudWatchを利用することで通知を受け取ったり、AWS WAF and AWS Shieldマネジメントコンソールによって攻撃の可視化をしたりすることも可能です。

AWS WAF(Application Firewall)との違い

AWS Shieldと似ていますがAWS WAFは第7層であるアプリケーション層における各種アタックからの保護に特化したサービスとなっています。各種アタックというのはDDos攻撃だけではなく、他にもSQLインジェクション、クロスサイトスクリプティング、Webクローラー、スクレイピングのbot等、Web上で受けることの多い攻撃も防いでくれるという意味です。

料金は従量課金制で作成したウェブアクセスコントロールリスト(ウェブACL)の数やウェブACL に追加するルールの数、受信するウェブリクエストの数が課金対象となります。また無料枠も設けられており、最初の1,000万件/1ヶ月の検査リクエストが無料となります。AWS ShieldのStandardはネットワーク層、トランスポート層を保護しますが、AWS WAFではAdvancedで可能となるアプリケーション層の保護が可能なため、Advanced程の費用をかけたくないという場合はAWS ShieldのStandardとAWS WAFを利用してコストを抑えるというのも一つの手と言えます。

CDN(Content Delivery Network)サービスについて

AWS ShieldやAWS WAFと併用するとより攻撃を防ぐ確率を高くできるサービスがあり、それがCDNのCloudFrontとなります。CDNはコンテンツの高速な配信が主な機能となっていますが、その仕組みによりDDos攻撃対策にも適しています。クライアントとWebサーバー間に位置して一度Webサーバーから返されたコンテンツ内容をキャッシュすることで、次回からリクエストがあった場合はそのキャッシュを基にコンテンツ配信が可能となるため、Webサーバーの負荷を軽減することが可能です。

この仕組みを利用し、DDos攻撃による大量アクセスがあったとしてもWebサーバーには送らずCDNで受け止め切ってしまうという利用ができます。ただし全てのアクセスを受け止めることはできない、当然ながらキャッシュのないコンテンツへのアクセスは止められない、例え攻撃によるアクセスであっても課金対象となってしまうというデメリットもあります。そのため決してDDos攻撃の対策はCDNのCloudFrontだけで十分というわけではないですが、合わせて利用することでより効果的となることを覚えておいて損はないです。

Advancedプランを利用するには?

Standardは無料で特に申し込みの必要なく利用できますが、Advancedを利用したい場合はAWSコンソール上でアクティブ化(有効化)する必要があります。「WAF & Shield」内の「AWS Shield」を選択後「Protected resources(保護されているリソース)」「Activate service(サービスのアクティブ化)」の順で画面遷移します。今回詳細は省きますが、その後は保護リソースやWebACLの関連付け、レートベースのルール作成、保護リソースの正常性ベースの検出、SNS Topic(配信対象に一斉に通知を配信する仕組み)の設定を完了させることでAdvancedが利用できるようになります。なお一度購入すると、解約する際はサポートへの連絡が必要となる点にはご注意ください。

まとめ

AWS Shieldを利用すると特定のレイヤーにおけるDDos攻撃が防御できること、 無料の「Standard」と有料の「Advanced」2つのプランがあること、AWS WAFやCDNと組み合わせることでさらに強固な環境を実現できることがわかっていただけたことでしょう。セキュリティに関してはユーザー自身が管理し、ネットワーク上に存在する様々な脅威から守っていかねばならず、そのためほとんどのサービスにおいてセキュリティ対策は欠かせません。

今回紹介した「Advanced」のお試し期間は用意されていないものの「Standard」は無料で利用できるため、まずは無料で利用し、システムの規模によってはぜひ今回の記事を参考に「Advanced」の導入も検討してみてはいかがでしょうか。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次の記事

Amazon S3とは