本記事では、AWSでホストされているインターネット向けWebアプリケーションを保護する方法について解説します。セキュリティ対策は、Webアプリケーションの可用性、整合性、機密性を維持するために不可欠です。この記事では、一般的な攻撃方法や、AWS WAFなどのセキュリティサービスを使用してアプリケーションを保護する方法について、具体的に説明します。
インターネットに公開されているWebアプリケーションの一般的なアーキテクチャは、以下の要素で構成されます。
要素 | 説明 |
---|---|
インターネット | ユーザーがWebアプリケーションにアクセスするためのグローバルネットワーク。 |
AWSリージョン | AWSのサービスが提供される地理的なエリア。 |
アベイラビリティゾーン | リージョン内に存在する、物理的に分離されたデータセンター。 |
VPC (Virtual Private Cloud) | AWSアカウント内で論理的に分離されたネットワーク環境。 |
パブリックサブネット | インターネットから直接アクセス可能なサブネット。 |
プライベートサブネット | インターネットから直接アクセスできないサブネット。 |
アプリケーションロードバランサー (ALB) | パブリックサブネットに配置され、トラフィックを複数のWebサーバーに分散させる。 |
Webサーバーインスタンス | プライベートサブネットに配置され、Webアプリケーションを実行する。 |
データベースインスタンス | プライベートサブネットに配置され、Webアプリケーションのデータを格納する。 |
典型的なWebアプリケーションでは、ユーザーはインターネット経由でALBにアクセスし、ALBはトラフィックをプライベートサブネット内のWebサーバーインスタンスに分散させます。Webサーバーインスタンスは、プライベートサブネット内のデータベースインスタンスと通信して、データの取得や更新を行います。
現代のサイバー攻撃は、複数の攻撃ベクトルを組み合わせた「マルチベクトル攻撃」が主流となっています。これは、攻撃者が単一の脆弱性ではなく、複数の脆弱性を悪用してシステムに侵入を試みる攻撃です。
例えば、ランサムウェア攻撃では、以下のような複数の段階を経て攻撃が実行されます。
段階 | 説明 |
---|---|
偵察活動 | 攻撃者は、ポートスキャンや脆弱性スキャンなどを行い、標的システムの情報収集を行います。 |
バックドアアクセス | 脆弱性を悪用して、システムにバックドアを仕掛けることで、不正なアクセス経路を確保します。 |
マルウェア感染 | バックドアアクセスを利用して、ランサムウェアなどのマルウェアをシステムに侵入させます。 |
内部拡散 | マルウェアはシステム内で拡散し、他のシステムやデータを暗号化したり、盗み出したりします。 |
マルチベクトル攻撃に対抗するには、個々の攻撃要素を個別に防御するだけでなく、攻撃全体を時間軸に沿って把握し、それぞれの要素間の関連性を分析することが重要です。複数のセキュリティサービスを連携させることで、攻撃をより効果的に検知、防御、修復することが可能となります。
AWSは、セキュリティ対策を多層的に行うための様々なセキュリティサービスを提供しています。これらのサービスは、大きく以下の5つのカテゴリに分類できます。
カテゴリ | サービス例 |
---|---|
Identify (識別) | AWS Organizations, AWS Shield, AWS Certificate Manager |
Protect (保護) | AWS WAF, AWS Firewall Manager, AWS Secrets Manager |
Detect (検出) | Amazon GuardDuty, Amazon Macie, Amazon Inspector, AWS Security Hub |
Respond (対応) | AWS Step Functions, AWS Lambda, Amazon CloudWatch |
Recover (復旧) | Amazon S3 Glacier, AWS CloudFormation |
AWS WAF (Web Application Firewall) は、Webアプリケーションへの攻撃を防御するためのマネージド型サービスです。WAFは、HTTP/HTTPSトラフィックを検査し、定義したルールに基づいて不正なリクエストをブロックします。
WAFの主な機能は以下のとおりです。
機能 | 説明 |
---|---|
レート制限 | 特定のIPアドレスからのリクエスト数を制限することで、DoS攻撃やブルートフォース攻撃を緩和します。 |
ジオベースのブロッキング | 特定の国や地域からのアクセスをブロックすることで、地域を限定した攻撃や不正アクセスを防止します。 |
IPベースのルール | 特定のIPアドレスやIPアドレス範囲からのアクセスを許可または拒否するルールを設定できます。 |
マネージドルール | AWSが提供する既製のルールセットを使用することで、一般的なWeb攻撃を簡単に防御できます。 |
カスタムルール | 独自のルールを作成することで、特定のニーズに合わせたセキュリティ対策を実現できます。 |
ボットコントロール | ボットによるアクセスを検知し、ブロックする機能です。 |
SQLインジェクション対策 | SQLインジェクション攻撃を検知し、ブロックするルールが用意されています。 |
クロスサイトスクリプティング (XSS) 対策 | XSS攻撃を検知し、ブロックするルールが用意されています。 |
WAFは、ALBやCloudFrontなどのサービスと連携して使用することができます。WAFをALBに設定することで、ALBに届くトラフィックをWAFで検査し、不正なリクエストをブロックすることができます。また、WAFをCloudFrontに設定することで、CloudFrontのエッジロケーションでトラフィックを検査し、世界中のユーザーからの攻撃を防御することができます。
具体的な攻撃シナリオと、WAFやその他のセキュリティサービスを使用した対策例を以下に示します。
攻撃者は、大量のUDPトラフィックをWebアプリケーションに送信し、サービスを妨害しようとします。
対策:
対策 | 説明 |
---|---|
AWS Shield Standard | AWS Shield Standardは、AWSのインフラストラクチャを標的としたDDoS攻撃を自動的に防御する無料のサービスです。 |
AWS Shield Advanced | より高度なDDoS対策が必要な場合は、AWS Shield Advancedを使用することができます。Shield Advancedは、DDoS攻撃を検知し、緩和するための追加機能を提供します。 |
CloudFront | CloudFrontは、コンテンツ配信ネットワーク (CDN) サービスです。CloudFrontを使用してWebアプリケーションの静的コンテンツをキャッシュし、エッジロケーションから配信することで、オリジンサーバーへの負荷を軽減することができます。 |
攻撃者は、Webアプリケーションの入力フォームに悪意のあるSQL文を注入し、データベースに不正にアクセスしようとします。
対策:
対策 | 説明 |
---|---|
AWS WAF | WAFのSQLインジェクション対策ルールを使用して、SQLインジェクション攻撃を検知し、ブロックすることができます。 |
データベースセキュリティ | データベースインスタンスにセキュリティグループを設定し、アクセスを制限することができます。また、データベースの認証情報を適切に管理し、不正アクセスを防ぐ必要があります。 |
攻撃者は、ダークウェブなどで入手した不正な認証情報を使用して、Webアプリケーションにログインしようとします。
対策:
対策 | 説明 |
---|---|
AWS WAF | WAFのレート制限機能を使用して、特定のIPアドレスからのログイン試行回数を制限することで、ブルートフォース攻撃を緩和することができます。 |
多要素認証 (MFA) | MFAを有効にすることで、ユーザー名とパスワードに加えて、追加の認証要素 (SMSコードや認証アプリなど) を入力させることで、アカウント乗っ取りを防止することができます。 |
AWS Secrets Manager | データベースの認証情報など、機密性の高い情報をSecrets Managerで管理することで、不正アクセスを防ぐことができます。 |
AWSでホストされているインターネット向けWebアプリケーションを保護するには、複数のセキュリティ対策を組み合わせて、多層的な防御体制を構築することが重要です。AWS WAFなどのセキュリティサービスを活用することで、一般的なWeb攻撃を効果的に防御し、アプリケーションの可用性、整合性、機密性を維持することができます。
セキュリティ対策は、常に進化する攻撃手法に対応するために、継続的な見直しと改善が必要です。AWSは、セキュリティに関する最新の情報を提供し、お客様のセキュリティ対策を支援しています。
AWSモダナイズ開発、データ分析基盤構築とデータ活用支援、基幹業務システムのUI.UX刷新はお気軽にお問い合わせください。
スモールスタート開発支援、サーバーレス・NoSQLのことなら
ラーゲイトまでご相談ください
低コスト、サーバーレスの
モダナイズ開発をご検討なら
下請け対応可能
Sler企業様からの依頼も歓迎