投稿日: Jul 26, 2022

AWS WAF は SQL インジェクション (SQLi) ルールステートメントの感度レベルの設定をサポートするようになり、SQLi 攻撃に対するアプリケーションへのリクエストを AWS WAF が評価する方法をより細かく制御できるようになりました。

SQLi 攻撃とは、悪意のある SQL コードを Web リクエストに挿入して、データベースからデータを抽出したり、データベースに害を与えたりすることです。AWS WAF は Web リクエストで SQLi シグニチャを検出する SQLi ルールステートメントを提供します。本日、AWS WAF では SQLi ルールに HIGH と LOW の 2 つの感度レベルを導入します。感度レベルを使用すると、SQLi ルールステートメントをどの程度積極的に適用するかを定義できます。既存のすべての SQLi ルールステートメントはデフォルトで LOW に設定され、既存のルール評価ロジックは変更されません。HIGH の設定は追加の SQLi シグニチャを使用して、より多くの SQLi 攻撃を検出するため、こちらの設定をお勧めします。ただし、この設定では、WAF が SQLi パターンを積極的にブロックするため、誤検出が増える可能性があります。

SQLi の感度レベルを使い始めるには、新しいルールを作成するか、カスタムルール作成ウィザードを使用して既存のルールを構成し、感度レベルを選択します。リクエストが SQLi ルールによって評価されると、AWS WAF は設定した感度レベルに従って SQLi ルールを適用します。WAF のログに「感度レベル」フィールドが追加され、識別と追跡が簡単になりました。AWS WAF は Web ACL Capacity Unit (WCU) を使って、ルールの実行に必要な運用リソースを測定します。SQLi ルールの感度レベル HIGH では 30 WCU を消費し、LOW では従来どおり 20 WCU を消費します。こうした SQLi ルールの感度レベルを使用するのに追加コストは必要ありませんが、AWS WAF のスタンダードサービス料金は引き続き適用されます。

SQLi ルールの感度レベルは、すべてのリージョン、および Amazon CloudFront、Application Load Balancer、Amazon API Gateway、AWS AppSync を始めとする対象のすべてのサービスで利用できます。AWS WAF は一般的なウェブ攻撃と悪意のあるボットからウェブアプリケーションや API を保護する、ウェブアプリケーション用ファイアウォールです。詳細については、AWS WAF デベロッパー向けドキュメントをご覧ください。料金詳細については、AWS WAF の料金のページをご覧ください。AWS Firewall Manager は、AWS Organizations のアカウントとアプリケーション全体で一元的にファイアウォールルールを設定および管理できるようにするセキュリティ管理サービスです。Firewall Manager は SQL インジェクションルールの感度レベルの構成をサポートします。