13rep - Azure WAF-Application Gateway


書いてる人と愉快な脳筋たち

@tweet Sir Yes Sir

参考記事元

内容

  • 参考記事元のWAF Application Gatewayを設定しアクセスの簡易監視まで

Azure WAF

  • 一般的な脆弱性やその悪用から Web アプリケーションを一元的に保護する Web アプリケーション ファイアウォール (WAF) を提供
  • Web アプリケーション ファイアウォールを一元化することで、セキュリティの管理がはるかに簡単になる
  • WAF を使用すると、アプリケーション管理者にとっては脅威や侵入に対する保護がより確実になります。

StandardとWAF違い

  • WAFの機能がついているかいないかだけ WAF V2の設定が基本
  • 容量の種類は自動スケーリング
    • スパイクアクセスなどがあった時に自動でインスタンスを増やす

Applicaiton Gatewayのコンポーネント要素

  • フロントエンドIP
  • リスナー
  • ルール
  • バックエンドプール
  • HTTP設定
  • 正常性プローブ
  • 書き換え(Rewrite)

Azure Application Gateway 構成の概要

  • フロントエンドIP
    • フロントエンドIPはApplicaiton Gateway作成時に一緒の作成したPublic IP Addressがデフォルトでバインドされています。

バックエンドプール(振り分けされるサイトの設定)

- IPアドレスまたはホスト名
- 仮想マシン
- VMSS
- AppService
    - App ServiceはApplication Gatewayが作成された同一リージョン内に存在するApp Serviceの中から選択することができます。

正常性プローブ(正常性監視の概要)


- バックエンドプールにあるすべてのリソースに対して正常性確認を行うもの
- プローブの機能により正常性が確認とれないリソースに関しては自動的にバックエンドプールから外し、正常性が確認取れたらバックエンドプールに戻します。

HTTP設定


- HTTP設定ではバックエンドプールに贈られる要求の設定を行います
- #### ハマりやすいポイント
- バックエンドパスのオーバライドは、設定には何も設定する値がない場合は必ず 「/」 を入力するようにしてください

画面にあるインフォメーションにも記載がありますが「/」を入力しないとURLパスベースでルールを設定した時に、URLが想定外の上書きにより正常にルーティングされなくなります。

ルール

  • ルールはApplicaiton Gatewayの中で一番肝となる設定
  • #### ルールによってリスナーのルーティング規則やバックエンドプールへの振り分け、HTTP設定による制限をすべて紐づけることになります。

Basicとパスベース

  • Basic
    • 基本的なルーティングの設定
  • パスベース
    • パスベースはURLパスでルーティングを行う設定
    • Basicより少し複雑な設定 例) 例えばHTTP(80)のHTTPS(443)リダイレクトを設定する場合なんかはBasicを利用して作成します。 80のリスナーにアクセスがきたら443のリスナーに301リダイレクトするようにルールを設定することができます。
  • URLパスベースの場合はパスに応じてバックエンドプールとHTTP設定を紐づける必要があるため設定方法の難易度は若干高めになります。

WAF対策編

URL:Web アプリケーション ファイアウォール要求サイズ制限と除外リスト

Azure ペネトレーションテスト

WAF対策~監視編

OMSの設定