Barracuda WAFを試してみた

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは、あべいかです。
Barracuda WAFを使って、保護対象の登録から擬似攻撃までを試してみました。
さっそく、ご紹介します。

構成

EC2インスタンスとして、WAFを作成します。
WAFを経由して、ELB配下のWebServerにHTTPアクセスします。

バラクーダ構成図

設定

EC2作成

AWS Marketplaceにて、AMIが提供されています。今回はこちらのBYOL版を使用しました。
時間課金タイプもありますが、2016年2月時点で日本ではサポートされないとの事です。
EC2作成後、EIPを付与します。
※ ELBとWebServerの作成については、説明を省略します。

セキュリティグループ

EC2とELBに設定するセキュリティグループは以下の通り、設定しました。
括弧内はセキュリティグループ名を指します。

  • WAF(sg_waf)
タイプ プロトコル ポート範囲 送信元
HTTP TCP 80 0.0.0.0/0
カスタムTCPルール TCP 8000 拠点IPアドレス
  • ELB(sg_elb)
タイプ プロトコル ポート範囲 送信元
HTTP TCP 80 WAFのEIP/32
  • WebServer(sg_webserver)
タイプ プロトコル ポート範囲 送信元
HTTP TCP 80 sg_elb

初期設定

Webブラウザからhttp://WAF-EIP:8000/にアクセスします。
ライセンス設定画面表示されます。TokenとDefault Domainを入力し、Provisionを選択します。

2

ログイン画面が表示されますので、ユーザ[admin]、パスワード[インスタンスID]を入力します。
ログイン後、ダッシュボードが表示されます。

5

高度な設定の表示

高度な設定の表示を有効にする事で、保護対象をホスト名で登録出来るようになります。
ELBはホスト名で登録するため、有効化します。

  • 高度な設定 -> システム設定 -> 高度な設定 -> 高度な設定の表示
    • [いいえ]を[はい] に変更

サービス登録

保護対象を登録します。基本 -> サービスを選択します。
任意のサービス名、タイプ[HTTP]、VIP[WAFのPrivateIP]を入力し、追加を選択します。
実サーバは空欄にします。

サービス登録

サービスが登録されました。[サーバ]を選択します。

サーバ

任意のサーバ名、ID[ホスト名]、ホスト名[ELBのDNS名]を入力し、追加を選択します。

ELB登録

ELBが登録されました。

登録確認

WEBブラウザから、http://WAF-EIPにアクセスします。
WebServerにアクセス出来るはずです。

テスト

擬似攻撃テスト

WEBブラウザから、http://WAF-EIP?test=<script>attack</script>にアクセスします。
基本設定 -> Webファイアウォールログを確認すると、XSSを検知した事がわかります。

一部画面がくずれましたため、画面キャプチャは英語で採取しました。

logs

Action -> 詳細を選択すると、攻撃の詳細を確認することが出来ます。

詳細画面

擬似攻撃を検知対象から除外してみます。
Action -> 修正を選択します。新しいウィンドウが表示されるので、[修正の適用]を選択します。
WEBサイト -> Webサイトプロファイル -> パラメータプロファイルを確認すると、適用した内容が追加されています。

パラメータプロファイル

おわりに

WAFを使った保護対象の登録から、擬似攻撃の除外設定をしてみました。
Barracuda WAFの他の機能についても今後紹介する予定です。ご期待下さい!
くコ:彡