助け合いフォーラム

AWS

AWS ソリューションアーキテクト - アソシエイト(SAA-C03)
問題ID : 35731
問題を開く
ある企業はALBの背後に配置されているWebサービスを運営している。最近、Webサービスに対する膨大なアクセスの影響で、応答遅延や障害が発生するレベルの負荷が発生した。調査の結果、IPアドレスを変更して送信される不審なリクエストが、Webサービスに対して大量に発生していることが確認された。
ソリューションアーキテクトの対応として適切なものはどれか。

正解

AWS WAFを使用し、レートベースのルールを設定する

解説

AWS WAF(Web Application Firewall)は、Web ACLというアクセスコントロールリストで、IPアドレス、HTTPヘッダー、HTTP本文、URI文字列などに対してフィルタリングの条件を設定できます。AWS WAFは、CloudFront、ALB、API Gatewayなどに割り当てて利用します。

WAFでは、短期間に大量のリクエストを送信してくるIPアドレスを自動的にブロックする「レート(リクエスト頻度)ベースのルール」を設定できます。レートベースのルールは、設定されたリクエスト頻度を超えたIPアドレスからのリクエストを自動的にブロックするので、IPアドレスを変更して送信される不審なリクエストにも動的にアクセス制限できます。

したがって正解
・AWS WAFを使用し、レートベースのルールを設定する
です。

・Amazon Inspectorを使用し、リクエストの不正な挙動を検出したら自動的にアクセスを制限する
InspectorはEC2インスタンスやコンテナ、Lambda関数などの脆弱性を自動的に検出するセキュリティサービスです。アクセスの制限機能はないため、誤りです。

・AWS WAFを使用し、特定の国や地域からのアクセスを制限する地理的一致ルールを設定する
WAFの地理的一致ルールでのアクセス制御は、国や地域ごとのアクセス制限を行うことは可能ですが、特定のIPアドレスからの不審なリクエストを制限できません。よって、誤りです。

・ネットワークACLにルールを追加し、特定のIPアドレスからのリクエストをブロックする
ネットワークACLは、特定のIPアドレスやIPアドレスの範囲からのトラフィックを拒否するルールを設定できますが、IPアドレスが変更されるリクエストに対して動的にIPアドレスをブロックできません。レートベースのルールが使用可能なWAFの方が適しているので、誤りです。

参考

【AWSリソースの保護】
不特定多数のユーザーがアクセスするWebサービスには、インターネットからの攻撃に対して保護が必要です。AWSではAWSリソースを保護するためのサービスとして「AWS WAF」と「AWS Shield」が提供されています。どちらもマネージド型のサービスです。

【AWS WAF】
AWS WAF(Web Application Firewall)は、脆弱性を突いた外部からの攻撃や不正アクセスから、Webアプリケーションを保護するサービスです。具体的には、ウェブサイトに悪意のあるデータを送り込むことで情報を盗み出す「SQLインジェクション」や、ユーザーになりすまして不正な操作を行う「クロスサイトスクリプティング」などを防御します。
ユーザーは「Web ACL」と呼ばれるアクセス制御リストで、訪問者のIPアドレスや、ウェブページへのリクエスト内容(例:HTTPヘッダー、HTTP本文、ウェブページのアドレスなど)に基づいて、どのようなアクセスを許可し、どのようなアクセスを遮断するかを細かく決めることができます。例えば、特定の国からのアクセスを全て遮断したり(地理的一致ルール)、短時間に異常に多くのリクエストを送ってくるIPアドレスを自動的にブロックする(レートベースのルール)などの設定が可能です。
AWS WAFは、Amazon CloudFront、Application Load Balancer、Amazon API Gatewayなどに割り当てて利用します。

[WAFのイメージ図]


【AWS Shield】
AWS Shieldは、DDoS攻撃からの保護に特化したサービスです。DDoS攻撃とは、ウェブサイトやサーバーに大量のアクセスを送り込むことで、サービスを停止させる攻撃のことです。AWS Shieldには、すべてのAWSユーザーが無償で利用できる「AWS Shield Standard」と、有償版の「AWS Shield Advanced」があります。

○AWS Shield Standard
ネットワーク層およびトランスポート層への一般的なDDoS攻撃からAWSリソースを保護します。デフォルトで有効になっています。

○AWS Shield Advanced
EC2インスタンス、Elastic Load Balancing、Amazon CloudFrontなどを標的としたDDoS攻撃に対して、高度な保護サービスを利用できます。例えば、高度化された大規模な攻撃からの保護、DDoS攻撃発生時のモニタリングやレポート、AWSのDDoS対応チームによるサポート、攻撃によって増加したAWS利用料金の補填などがあります。

【AWS Firewall Manager】
AWS Firewall Managerは、複数のAWSアカウントやサービスを対象に、firewallのルールを一元的に設定・管理するセキュリティ管理サービスです。セキュリティルールを中央で一元的に管理することにより、セキュリティ対策の手間とコストを削減します。AWS WAF、AWS Shield Advancedなどと連携し、包括的なセキュリティガバナンスを実現します。

[Firewall Managerのイメージ図]
上に戻る

なぜレートベースが正解なのか

投稿日 2024/09/29

レートベースがIPアドレスを参照するなら、攻撃者がIPアドレスを頻繁に変更する今回のケースでは不適切ではないでしょうか?

2024/09/29 23:15

攻撃元が異なるアドレスに切り替わったとしても、そのアドレスからの「過剰な」リクエストレートを判断基準にしているので特に問題ないと思うのですが…
もしよければ ksjym2 さんが「適切」と思われるこの問題の他の選択肢とその理由をお聞かせいただけないでしょうか?


コメント

k ksjym2

2024/09/30 07:06

極端なことを言うと、毎リクエストIPアドレスが違う場合は過剰なリクエストレートだと判断されないのではと思いました 他の選択肢が適切と考えている訳ではなく、問題がおかしいのではないかと考えました

a arashi1977

2024/09/30 08:06

なるほど。 頻繁にIPアドレスを変更する不審な外部アクセスからの「過剰な」リクエストが - 変更した IP アドレスごとに「過剰」 - 頻繁に変更した IP アドレスからのリクエストの "合計が" 「過剰」 と考えた時に後者だったら IP アドレスごとのレートが閾値を超えないので効果が低いのでは、ということですね。 逆に前者の場合であれば適切と言えるという認識をお持ちだという理解で間違いないでしょうか?

k ksjym2

2024/09/30 08:42

はい、その通りです

a arashi1977

2024/10/02 12:38

修正されたようですが&セキュリティ本職じゃないので今更かもしれませんが。 IPアドレスを頻繁に変更するのって「対策されたから」というのがモチベーションのはずであって、「頻繁に変更 **しながら** ちょっとずつリクエストを送る」というのは手間とか効果を考えると採用されにくい攻撃方法かなぁと思います。 なので、個人的には問題としても特におかしくないのではないかなと思っています。

この返信に対して
コメントを記入できます

スタッフからの返信

s staff_satomi

2024/10/01 22:20

ksjym2様 arashi1977様 ご指摘の点を修正いたしました。 ご報告いただきまして、誠にありがとうございます。

この投稿に対して返信しませんか?