3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

IBM CIS: ドメインの特定のURLに対してWAFのActionを設定する

Last updated at Posted at 2021-09-27

1.目的

CISのWAFはIBM Cloud PortalのGUI画面を見れば明らかなようにRuleID/グループ単位にAction(Block,Simulate,Challenge,OFF)の設定を行います。
ただURL毎にセキュリティ要件が異なる場合に、URL単位にこの設定を行う必要が出てくることがあります。
スクリーンショット 2021-09-27 17.08.41.png

ドメイン全体またはサブドメイン全体ではなく、ドメインの特定のURLに対してWAFのAction設定することもできます。ただしエンタープライズプランのみの機能になります。
またIBM Cloud PortalのGUI画面ではできなくてCLI/APIを利用することになります。当ガイドはこのCLIの手順説明及び確認テストを記述しています。
ibmcloud cis waf-override-createコマンド

[参考]
特定のURLに対してWAFの全てのRuleIDのチェックを無効化することはIBM Cloud PortalのGUI画面のPageRule設定により行います。
[ページ・ルールの使用-セキュリティ-WAF]
(https://cloud.ibm.com/docs/cis?topic=cis-use-page-rules#page-rules-security)

2.手順及び確認

現状下記のCIS GUI画面の通り100008Eルールは無効化に設定されています。

スクリーンショット 2021-09-17 16.04.18.png

念のためブラウザーよりテスト対象URLの後に"?id=admin&password=' or 1=1"等のパラメーターを付加しても問題なくアクセスできることを確認します
スクリーンショット 2021-09-17 16.16.15.png

ここからはIBM Cloud CLI手順になります。環境準備できていなければ下記よりCLIダウンロード/CIS pluginのアップデートをしてください。
[ibmcloud cli及びcis pluginの準備]
(https://cloud.ibm.com/docs/cis?topic=cis-cli-plugin-cis-cli#-cli-prereqs)

ibmcloud login後、まずドメインの一覧を照会して該当のドメインのIDを取得します。

 % ibmcloud cis domains
サービス・インスタンス 'CIS-Enterprise-Usage1' のドメインをリスト中...
OK
ID                                 名前          状況         一時停止   タイプ   
3476b3464d25f1ba478e1d0753a34bf7   certest.tk    アクティブ   false      full   
3cf328422b34b8e5420831c3efe4c3c3   cis****.tk   アクティブ   false      secondary   
a4135402d38fff24e32ef13c82c1ab4a   cis****.tk     アクティブ   false      full 

まずJSON Fileを作成します。最低限設定が必要になるのは対象のURL名、RuleID、Actionになります。ここでは"host-ibm-cloud-poc.certest.tk"のURLで"100008E"のRuleに対して"Block"を指定して"waf_rule_on.json"の名前でファイルを保存します。

{
    "description": "enable Rule ID:10008E for host-ibm-cloud-poc.certest.tk",
    "urls": [
       "host-ibm-cloud-poc.certest.tk/*"
    ],
    "rules": {
       "100008E": "block"
    } 
}

上記で作成したJSON File、及びドメインIDを指定してwaf-override-createを実行します。

 % ibmcloud cis waf-override-create 3476b3464d25f1ba478e1d0753a34bf7 --json @waf_rule_on.json
URL ベースの WAF ルールを作成中 ...
OK
                          
ID                     b9d0ff936a9141eb973b1f08e14920eb   
説明                   enable Rule ID:10008E for host-ibm-cloud-poc.certest.tk   
URLs                      
	0:                     	host-ibm-cloud-poc.certest.tk/*   
グループ               
ルール                    
	100008E:               	block   
再書き込みアクション

再度同一URLにアクセスしてBlockされることを確認します。

スクリーンショット 2021-09-17 16.19.49.png

念のためCISのSecurity Event Logを照会してBlockされていることが確認できました。

 % ibmcloud cis firewall-event-analytics 3476b3464d25f1ba478e1d0753a34bf7
ドメイン '3476b3464d25f1ba478e1d0753a34bf7' のファイアウォール・イベントを取得中...
OK
                                        
                                        
次元                                    
	アクション                           block   
	クライアントの国名                   JP   
	クライアント IP                      61.25.32.91   
	クライアント IP クラス               noRecord   
	クライアント・リファラー・スキーム   unknown   
	クライアント要求 HTTP ホスト         host-ibm-cloud-poc.certest.tk   
	クライアント要求 HTTP メソッド名     GET   
	クライアント要求 HTTP プロトコル     HTTP/1.1   
	クライアント要求パス                 /   
	日時                                 2021-09-17T06:59:10Z   
	エッジ・コロケーション名             NRT   
	種類                                 firewall   
	インデックスに一致                   0   
	レイ名                               69007347ffa33535   
	ルール ID                            100008E   
	ソース                               waf   
	ユーザー・エージェント               Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36 
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?