
AWSマネージドルールは、AWSが提供しているAWS WAF専用のルールセット(シグネチャ)です。AWSマネージドルールをAWS WAFにアタッチするだけでルールの細かい設定を行う必要なく、AWS WAFを活用することができます。
では、AWSマネージドルールには具体的にどのようなルールが含まれているのか。そもそもマネージドルールとは何なのか。
この記事では、AWSマネージドルールの基本からルールの種類や内容までについてわかりやすく解説します。運用上の落とし穴とその対策も紹介するので、AWSマネージドルールの導入を検討していればぜひ最後までご覧ください。
【無料資料配布中】AWS WAFの運用に悩んでいます?AWS WAF運用のノウハウを完全解説する資料をご用意しております。詳しくはこちらからダウンロードしてください。
目次
- AWSマネージドルールとは?
- AWSマネージドルールグループ一覧
- コアルールセット(Core Rule Set、CRS)マネージドルールグループ
- 管理者保護(Admin Protection)マネージドルールグループ
- 既知の不正な入力(Known Bad Inputs)マネージドルールグループ
- SQLデータベース(SQL Database)マネージドルールグループ
- Linuxオペレーティングシステム(LINUX operating system)マネージドルールグループ
- POSIXオペレーティングシステム(POSIX Operating System)マネージドルールグループ
- Windowsオペレーティングシステム(Windows Operating System)マネージドルールグループ
- PHPアプリケーション(PHP Application)マネージドルールグループ
- WordPressアプリケーション(WordPress Application)マネージドルールグループ
- Amazon IPレピュテーションリスト(Amazon IP Reputation)マネージドルールグループ
- 匿名IPリスト(Anonymous IP List)マネージドルールグループ
- AWS WAF Fraud Controlアカウント乗っ取り防止(ATP)ルールグループ
- AWS WAF Bot Controlルールグループ
- AWSマネージドルールの4つの落とし穴
- AWS WAFを導入するならWafCharmがおすすめ!
AWSマネージドルールとは?
AWSマネージドルールとは、AWS WAFで使用可能なAWSが提供しているルールセットのことです。AWSマネージドルールをAWS WAFに入れることで脆弱性を突く攻撃や望ましくないトラフィックからアプリケーションを守ることができます。
そもそもAWS WAFとは?
AWS WAFとは、AWSが提供している、AWS環境のWebアプリケーションを防御できるWAFです。ほかのWAFと同じく、SQLインジェクションやクロスサイトスクリプティング(XSS)などの脆弱性を突く攻撃からWebアプリケーションを守ることができます。
AWS WAFを使用するには、WAFのルールを設定する必要があります。ルールとは、過去に起きたりこれから起こると想定される攻撃のパターン、通信の手法、ウイルスなどのデータをまとめた定義ファイルです。
AWS WAFについて詳しくはこちら:
AWS WAFの力を発揮するために、自社に適したルールを設定する必要があります。なお、新しい攻撃でも防御できるようにルールを常に最新な状態に保たなければなりません。
ただし、ルールの設定や更新には高い専門性が求められますしとても煩雑な業務のため、対応が難しいと感じる企業も少なくありません。ここで生まれたのがマネージドルールです。
AWS WAFについてわかりやすくまとめたのでこちらからダウンロードしてください。
マネージドルールとは?
マネージドルールとは、AWS WAFで使用できるプリセットされたルールセットです。
ルールの詳細はベンダーのほうですでに調整されているので、自社側でルールの細かな設定を行う必要がありません。そのため、社内にセキュリティに詳しいエンジニアがいなくても、マネージドルールを利用することによってセキュリティレベルを担保することができます。
AWSが提供しているAWSマネージドルールに加えて複数のセキュリティベンダーもAWS WAFのマネージドルールを販売・提供しています。自社に適したマネージドルールを選定し購入することが可能です。
AWSマネージドルールの利用料金
AWSマネージドルールの利用料金は、AWS WAFの利用料金に含まれているので、基本無料で利用できます。
ただし、AWS WAF Bot Control ルールグループとAWS WAF Fraud Control アカウント乗っ取り防止(ATP)のルールグループを利用する場合、追加料金が発生するので要注意です。
詳しくはこちらの記事にご参照ください。
AWS WAF 料金体系について
AWSマネージドルールグループ一覧
AWSマネージドルールにはOWASP Top 10に含まれた優先的に対応すべき脅威に対するルールを始め、さまざまな種類のルールがあります。
ここでは、AWSマネージドルールのルールグループについて、 AWSの公式情報の説明を元に解説します。
コアルールセット(Core Rule Set、CRS)マネージドルールグループ
コアルールセット(CRS)に含まれるルールは、一般的なWebアプリケーションに適用するルールです。
OWASP Top 10に含まれるリスクの高い脆弱性に関連するルールも含まれているので、CRSを入れることによって広い範囲の脆弱性からWebアプリケーションを保護できます。
管理者保護(Admin Protection)マネージドルールグループ
管理者保護(Admin Protection)マネージドルールグループには外部からのアクセスを遮断し管理ページを守るルールが含まれています。
このマネージドルールグループを適用することによって管理アカウントのアクセス権が第三者に乗っ取られるリスクを軽減できます。
既知の不正な入力(Known Bad Inputs)マネージドルールグループ
既知の不正な入力(Known Bad Inputs)マネージドルールグループには不正アクセスや脆弱性の悪用に関連する入力パターンを遮断するルールが含まれます。
このマネージドルールグループを利用することでWebアプリケーションの脆弱性によって攻撃されるリスクを減らすことができます。
SQLデータベース(SQL Database)マネージドルールグループ
SQLデータベース(SQL Database)マネージドルールグループにはSQLデータベースの悪用を防ぐルールが含まれています。
このマネージドルールグループを適用することによって、SQLインジェクションを初めとしたSQLデータベースに対する攻撃を防御することができます。
Linuxオペレーティングシステム(LINUX operating system)マネージドルールグループ
Linuxオペレーティングシステム(LINUX operating system)マネージドルールグループにはLinuxの脆弱性にまつわる攻撃を防げるルールが含まれています。
Linuxを利用している場合、こちらのマネージドルールグループを適用することをおすすめします。
POSIXオペレーティングシステム(POSIX Operating System)マネージドルールグループ
POSIXオペレーティングシステム(POSIX Operating System)マネージドルールグループにはPOSIXやPOSIXの準拠オペレーティングシステムの脆弱性に関連する攻撃を防御するルールが含まれています。
POSIXや、LinuxやmacOSなどのPOSIXに準拠するオペレーティングシステムを利用している場合、こちらのマネージドルールグループの適用がおすすめです。
Windowsオペレーティングシステム(Windows Operating System)マネージドルールグループ
Windowsオペレーティングシステム(Windows Operating System)マネージドルールグループにはWindowsの脆弱性の悪用を防止するルールが含まれています。
Windows環境で攻撃者による不正なコマンドやコードの実行を止めることができるので、Windowsを利用していればこちらのマネージドルールグループを使用すべきです。
PHPアプリケーション(PHP Application)マネージドルールグループ
PHPアプリケーション(PHP Application)マネージドルールグループにはPHP関数を悪用する不正アクセス、もしくはPHPの脆弱性を突く攻撃を遮断するルールが含まれています。
悪意のあるPHP関数の実行を封鎖してくれるので、サーバにPHPが使用される場合は、このマネージドルールグループを適用したほうが安心できます。
WordPressアプリケーション(WordPress Application)マネージドルールグループ
WordPressアプリケーション(WordPress Application)マネージドルールグループにはWordPressの脆弱性を悪用する不正アクセスを遮断するルールが含まれています。
CMS(コンテンツマネジメントシステム)としてWordPressを利用している場合、こちらのマネージドルールグループを適用することをおすすめします。
また、より高いレベルのセキュリティを維持するために、SQLデータベース(SQL Database)マネージドルールグループとPHPアプリケーション(PHP Application)マネージドルールグループも併せて導入すべきです。
Amazon IPレピュテーションリスト(Amazon IP Reputation)マネージドルールグループ
Amazon IPレピュテーションリスト(Amazon IP Reputation)マネージドルールグループには、Amazon内部脅威インテリジェンス(Amazon internal threat intelligence)に基づいて作成されたルールが含まれています。
ボットや既存の脅威のIPアドレスをブロックするので、Webアプリケーションをボットや悪意のある人から守りたいのであれば、このマネージドルールグループを入れることをおすすめします。
匿名IPリスト(Anonymous IP List)マネージドルールグループ
匿名IPリスト(Anonymous IP List)マネージドルールグループにはIPアドレスを始めとしたユーザーの身元を難読化できるサービスを利用したアクセスを遮断できるルールが含まれています。プロキシやVPNなどはそういったサービスに該当します。
このルールグループを適用することによって、自分の身元を隠そうとする不正アクセスを遮断することができます。
AWS WAF Fraud Controlアカウント乗っ取り防止(ATP)ルールグループ
AWS WAF Fraud Controlアカウント乗っ取り防止(ATP)ルールグループは、アカウントを乗っ取ろうとする可能性のあるリクエストを検知するルールグループです。
ATPはログインに使われるIDとパスワードを盗まれた認証情報のデータベースと照らし合わせてチェックするので、不正ログインを試みるリクエストをATPの適用によって防げます。
さらに、ATPは不審なリクエストを大量に送信するIPアドレスを自動的に集めるため、アカウントを乗っ取ろうとするリクエストを効果的に遮断することができます。
ACFPルールグループと同じくATPルールグループも分析するリクエスト件数に応じて料金がかかります。
AWS WAF Bot Controlルールグループ
Bot Controlルールグループは、スクレーパーやスキャナなど悪意のあるBotからのリクエストを検知し遮断するルールグループです。
Botとは、一定のタスクや処理を自動化するためのアプリケーションやプログラムです。GoogleやBing!などの検索エンジンのクローラーやチャットボットなど、ユーザに価値を提供する有益なBotがたくさん存在しているので、一概に遮断するわけにはいけません。
Bot Controlルールグループを適用することで善意のBotと悪意のあるBotを識別し、適切に制御することができ、悪意のあるBotからWebアプリケーションを守ることができます。
Fraud Controlと同じく、Bot Controlを利用するのに料金がかかります。1 WebACLあたり月10ドルがかかるうえ、適用するルールグループの種類によってリクエスト料金が発生します。
Bot Controlについて詳しくはこちら:
AWSマネージドルールの4つの落とし穴
AWS WAFにアタッチするだけでルールの設定が完了できる、とても便利なAWSマネージドルールですが、実は運用上に関する落とし穴もあります。
導入したあとに後悔がないように、AWSマネージドルールの注意点も事前に抑えておきましょう!
【無料資料配布中】AWS WAFの運用に悩んでいます?AWS WAF運用のノウハウを完全解説する資料をご用意しております。詳しくはこちらからダウンロードしてください。
個社環境に合わせたカスタムルールの作成が必要
AWSマネージドルールは優れた基本防御を提供しますが、あくまでも汎用ルールなのですべての環境に完全にフィットするわけではありません。また、ほかのユーザーに影響を及ぼす可能性があるため、AWSマネージドルールのカスタマイズも基本的にはできません。
そのため、アプリケーションの属性や各企業が直面する個別の脅威を対策するには、カスタムルールの作成が必要不可欠です。
ただし、カスタムルールの作成にはセキュリティやAWS WAFに関連する専門知識が必要です。セキュリティ人材が不足しているため、カスタムルールの作成ができず、AWS WAFの防御に穴が開いてしまうケースがよくあります。
誤検知発生時の対応工数が高い
誤検知とは、正常アクセスを不正アクセスとして誤って遮断してしまうことです。AWSマネージドルールの内部メカニズムは非公開であるため、誤検知が発生した際の原因特定は難しいです。
さらに、何がトリガーとなったのか、どのルールがアラートを発生させたのかは特定できても、AWSマネージドルールはカスタマイズできないため、誤検知に対応するのに時間がかかります。
カスタムルールの作成が難しい場合、誤検知を解消するためにアプリケーションの改修が必要となる場合があります。その場合、誤検知対応にかかる作業工数がより高くなります。
AWS WAFの誤検知に関して詳しくはこちら:
AWS WAFログの確認作業が煩雑で時間がかかる
AWS WAFの効果や自社が直面しているセキュリティリスクを把握するために、AWS WAFのログをAmazon CloudWatchやS3などのサービスに出力し、Amazon Athenaをはじめとするサービスを活用してログを解析する必要があります。
ただし、ログの確認・解析には細かい作業が必要なうえ、ログの件数が膨大ですべて確認するには時間がかかります。また、ログ解析にはAWSへの理解とセキュリティに関する知識が必要です。
そのため、セキュリティ人材の確保が難しい現状ではログの確認ができていない企業が多くあります。
AWS WAFログに関して詳しくはこちら:
AWSマネージドルールのバージョン管理が負担になる
新たな脆弱性や攻撃手法にも対応できるようにAWSマネージドルールは頻繁にアップデートされるため、新バージョンの情報を積極的に収集し理解する必要があります。
特にバージョンアップデートが自動になっている場合、アップデートによってもともとAWS WAFを通過できていたアクセスがブロックされる可能性があります。その場合カスタムルールを作ったりして早急な調整が求められるので、アップデートのタイミングと内容を事前に把握する必要があります。
そのためにAWSの情報をしっかり収集する必要がありますが、アップデートのタイミングはルールによって異なるため、アンテナを常に張らないと見逃す恐れがあります。また、新しい情報は英語で書かれるケースが多く、読み解くのに時間がかかります。
AWS WAFを導入するならWafCharmがおすすめ!
AWSマネージドルールは、無料で導入しやすくセキュリティレベルの向上もできる一方、ルールの内容がブラックボックス化されているため、ルールのチューニングが難しいというデメリットがあります。また、誤検知が発生した場合の対応もとても大変です。
さらに、固有の脆弱性に対応したい場合には、カスタムルールを作成する必要があるので、その分の工数が逆に増えてしまいます。
AWS WAFのセキュリティレベルを高めながら運用工数を抑えたい場合、WAFの自動運用サービス『WafCharm』を利用することがおすすめです。
WafCharmはAWS WAFを始めとしたパブリッククラウドWAFの自動運用サービスです。導入することによって、WafCharmがそれぞれのAWS環境に合わせた最適なルールを自動で作成します。仮に誤検知やトラブルが発生したとしてもWafCharmの日本語サポートが追加のルールを作成し適用してくれるので安心です。
もちろん、WafCharmもAWSマネージドルールと同じように簡単に導入することができます!WafCharmについて詳しく知りたい方はぜひこちらよりサービス資料をダウンロードしてください。