LOG IN SIGN UP
Documentation

Fastly WAF の運用

  Last updated November 17, 2017

Fastly WAF潜在的な攻撃を検出してブロックするためのルールを提供します。これらのルールはポリシーとしてまとめられ Fastly のエッジで動作するサービスに展開されます。

Fastly WAF ルールセットの確認

サービスに関連付けられたすべての WAF ルールのデータは API コールで取得することが出来ます。情報を取得するには、以下の cURL コマンドをターミナルアプリケーションから実行して下さい。

curl -H 'Fastly-Key: FASTLY_API_TOKEN' https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/ruleset | perl -pe 's/\\n/\n/g'

WAF ルールの VCL を確認

特定の WAF ルールの VCL を確認するには、以下の cURL コマンドを実行して下さい。:

curl -H 'Fastly-Key: FASTLY_API_TOKEN' https://api.fastly.com/wafs/<your WAF ID> /rules/<rule_id>/vcl

詳細については API ドキュメントを参照下さい。

リクエストをブロック

初めて Fastly WAF を有効化する際には、偽陽性の影響を最小限に抑えるために、すべてのルールに log ステータスが設定されます。リクエストはルールを block モードに変更しない限りブロックされることはありません。最低2週間程度ログをモニタリングし、アプリケーションへの正規のユーザーリクエストがブロックされないことを確実にしてから、ブロックモードに移行することを推奨いたします。

ルールステータスの変更

ルールのステータスを log から disabled または block に変更するには、Fastly のルールセットもしくは、WAF ログから waf.rule_id 変数を確認して下さい。waf.rule_id が確認できたら、各ルールに対して、以下の cURL コマンドをターミナルアプリケーションから実行して下さい。

curl -H 'Fastly-Key: FASTLY_API_TOKEN' -X PATCH -d '{"data": {"id": "<your WAF ID>-<WAF rule ID>", "type": "rule_status", "attributes":{ "status": "block"}}}' -H 'Content-Type: application/vnd.api+json' https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/rules/<WAF rule ID>/rule_status

フィルタータグ (例、application-WordPresslanguage-htmlOWASP) を利用して複数のルールのステータスをまとめて変更したい場合は、以下の cURL コマンドを実行して下さい。

curl -H 'Fastly-Key: FASTLY_API_TOKEN' -X POST -d '{"data": {"id": "<your WAF ID>", "type": "rule_status", "attributes": {"name": <tag>, "status": "block"}}}' -H 'Content-Type: application/vnd.api+json' https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/rule_statuses

詳細については API ドキュメントをご参照下さい。ルールのステータスの block への変更が完了したら、変更を有効化する必要があります。

OWASP 設定

OWASP によるブロックは以下の条件を満たす必要があります:

リクエストが OWASP ルールに検知された場合、攻撃カテゴリーごとのスコアと、OWASP ルール全体のスコアの累積値が記録されます。 block モードに設定されているルールに対して、リクエストの最終的なスコアが OWASP ルールに設定されたしきい値を上回った場合に、Fastly はリクエストをブロックし、設定したエラーレスポンスを返却します。

OWASP 設定の確認

OWASP 設定を確認するには、以下の cURL コマンドをターミナルアプリケーションから実行して下さい。

curl -H 'Fastly-Key: FASTLY_API_TOKEN' https://api.fastly.com/service/<service_id>/wafs/<your WAF ID>/owasp

OWASP ルール全体のスコア累積値に対するしきい値は inbound_anomaly_score_threshold フィールドに含まれます。

OWASP 設定の変更

OWASP 設定オブジェクトの変更は、以下の OWASP 更新コマンドをターミナルアプリケーションで実行して下さい:

curl -X PATCH -v -H "Content-Type: application/vnd.api+json" -H "Accept: application/vnd.api+json" -H "Fastly-Key: FASTLY_API_TOKEN" https://api.fastly.com/service/<service_id>/wafs/<waf_id>/owasp -d '{"data": {"attributes":{"inbound_anomaly_score_threshold":"50"}, "id":"<owasp_id>", "type":"owasp"}}'

OWSAP 設定の変更が完了したら、変更を有効化して下さい。

変更の有効化

ルールのスタータスを変更した後、ターミナルアプリケーションで以下の cURL コマンドを実行して変更を有効化させる必要があります。

curl -H 'Fastly-Key: FASTLY_API_TOKEN' -X PATCH -d '{"data": {"id": "<your WAF ID>", "type": "ruleset"}}' -H 'Content-Type: application/vnd.api+json' https://api.fastly.com/service/<service_id>/wafs/<waf_id>/ruleset

詳細については API ドキュメントをご参照下さい。

ルールにバージョンはありません。ルールに行った変更は上記コマンドを実行することで有効になります。変更を有効にするために、新しいバージョンのサービスを有効化する必要はありません。


Back to Top