この記事は最終更新から5年以上経過しています。内容が古くなっている可能性があります。
Oracle Cloud の Web Application Firewall (以下 WAF)
製品情報ページ や、Oracle Cloud の公式ブログ にも記載されているのですが、以下のような機能が実装されています
1. 250 を超える定義済みのルール
2. IP アドレスによるホワイトリスト・ブラックリスト制御
3. JavaScript、CAPTCHA による BOT 制御
4. オンプレミス、マルチクラウド環境を保護
5. RESTful API や SDK を用いてコンソールを必要とせずに管理できる
WAF を使ってみる
Oracle Cloud の WAF は最近リリースされた( 3月度サービス情報アップデートに含まれています ) ということと、Edge Service ということもあるため、どのように設定するのか?、使い方は?という情報が少ないです
そこで、本記事では WAF をどのように設定するのかを簡単に紹介したいと思います
目次
環境(防御したい Web サービス)
- IP: 129.146.65.78
- ドメイン: blog-test.smartstyle.ne.jp
1. WAF を作成する
- WAF の作成は、 Edge Services メニュー内の WAF Policies から行う
- Create WAF Policy をクリックし、WAF Policy 作成画面を開く
- WAF の各項目を入力する
項目 | 意味 |
---|---|
POLICY NAME | WAF Policy を識別するための名前 |
PRIMARY DOMAIN | 防御対象のドメイン名 |
ADDITIONAL DOMAINS | サブドメイン名 |
ORIGIN NAME | 防御対象のオリジナル名 |
URI | 防御対象の IP アドレスか FQDN |
2. CNAME を設定する
- blog-test.smartstyle.ne.jp にブラウザでアクセスした際に、WAF にアクセスするように CNAME を設定する
1 2 3 |
$ nslookup -type=cname blog-test.smartstyle.ne.jp blog-test.smartstyle.ne.jp canonical name = blog-test-smartstyle-ne-jp.b.waas.oci.oraclecloud.net. |
3. ブラウザでアクセスして確認する
- 404 Not Found や 403 Forbidden 等にならず、正常にアクセスできれば問題無し
4. WAF ポリシーを有効にし、公開する
5. ブラウザでアクセスして確認する
- リクエストパラメータとして、
?id=<script>alert("TEST");</script>
を付与して、ブロックされるか確認する
まとめ
今回の手順では行いませんでしたが、 SSL 証明書を適用したり、適用するポリシーを精査したりと、行うことは他にもありますが、非常に簡単に WAF を導入することが出来ます
また、こちらも重要なことですが、エンドポイントが OCI Compute の場合は非常に安く導入することが出来ます
1,000,000 リクエストまで、 72 円で済むのは非常にリーズナブルです
※2019/04/10 時点の費用で、 Oracle Universal Creditの価格 で確認できます