Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
セキュリティを強化しよう!
〜CloudArmorの基本機能解説〜
虎の穴ラボ エンジニアリングリーダー
植竹 惇
T O R A N O A N A L a b
1
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
自己紹介
植竹 惇
● 2018/08入社
● エンジニアリングリーダー
虎の穴ラボへの入社理由
● 趣味と仕事を近づけたい
● スタートアップ的な部署で
得難い体験ができそう
趣味
● バンドリ
● アニメ全般
● 金曜日のWebマンガ各種
2
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
今日のテーマ
CloudArmorの基本機能解説
3
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
アジェンダ
● CloudArmorとは
○ 構成について
○ ルールの基本事項
● 詳細モードによるアクセス制限
○ UA制限
○ 条件組み合わせによる制限
○ 様々な構文による制限
○ 事前構成されたWAFルール
○ 最近追加されたルールについて
● まとめ
4
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
構成について
5
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
GCPが提供する、ウェブ攻撃からサイトを保護する機能
・IPアドレスごとのアクセス制限
・UserAgentルールによるアクセス制限
・各種WAFルールに基づいたアクセス制限
など様々な機能が備わり、
新機能追加含め定期的にアップデートされ続けている。
<引用>GCP公式のCloudArmor説明ページ
https://cloud.google.com/armor
6
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
システム構成としてはLB(LoadBalancing)に紐付ける形で運用する。
条件でNGだった場合
7
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
LB(LoadBalancing)の紐付け先がCloudRunやGKEでも可。
8
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
つまりCloudArmorは
アプリケーションに到達する前に
ロードバランサーへのアクセス時点で
防御する仕組み
9
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
CloudArmorはひとつのターゲット
(アプリ)に対しての防御ルールを
『ポリシー』という単位で作成する。
3の「ターゲットへのポリシーの適応」で
紐付けるロードバランサーを選択する。
最も重要なのでは2の「ルールの追加」で
ここの設定をどのようにするかで、
CloudArmorの動作が変わってくる。
10
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
料金はかなり安価です。
1サービスに対し、ルールを 20件設定、
月に400万アクセス来ると過程した場合、
月額$28(約3220円)程度。
ただし、アプリケーションに含まれる
CSSや画像ファイルなども含まれるため、
少しでも削減したい場合は別ドメインの CDNに
切り出すなどの対応が必要。
HTTPリクエスト $0.75/1,000,000件
ポリシー数 1件あたり月額$5
ルール数 1件あたり月額$1
11
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
ルールの基本事項
12
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
『ルール』は後から追加・編集・削除が可能。
上の図で設定されているルールは「指定した IPアドレス」に対してアクセスを「拒否」する。
IPアドレスは1ルールにつき最大10個指定ができる。
※設定ルールの一覧画面
13
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
ルールは優先度に従って並んでいますが、
同じIPの指定がされたルールがこのように並んでいる場合、
「203.0.113.0/24」のIPからアクセスするとどうなるでしょうか。
14
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
答えは「拒否(403)でアクセスが制限される」です。
優先度の高い順に判定され、条件に一致した場合はそのアクションが実行されます。
よって、以下の場合は逆に「許可」されます。
15
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
CloudArmorとは
『ルール』は『プレビュー』としてアクションはせずに、
判定結果だけをログとして残すことも出来ます。
上の図で設定されている場合だと、「拒否( 403)」の判定がアクセスログに記録されつつ、
「許可」のアクションが実行されます。
16
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
● CloudArmorはロードバランサのアクセス時点で防御を行う仕組み
● アプリケーションはVMグループだけではなく
CloudRunやGKEも利用できる
● ルールは優先度の高い順で評価し、
アクションが決まればそれ以降は評価されない
CloudArmorとは まとめ
17
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限
UA制限 &
条件組み合わせによる制限
18
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(UA制限)
『ルール』は大きく『基本モード』と『詳細モード』のふた
つがあります。
IP制限だけであれば基本モードですが、詳細モードを
使いこなすことが、CloudArmorを利用するにあたっ
て重要になります。
詳細モードではテキストエリアの記述欄が表示され、
そこに構文を設定します。
※ルール編集の条件設定部分
19
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(UA制限)
User-Agentによる識別を行う構文です。
上記の例ではInternet Explorerでのアクセスを検知します。
Internet Explorerは基本的に「MSIE」の文字列が含まれるため、
この構文でアクセス検知が可能です。
request.headers['user-agent'].contains('MSIE')
20
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(UA制限)
しかし、この場合だと Internet Explorer 11のケースがカバーできません。
Windows10のIE11は「MSIE」という文字列がなく、
「Trident」という文字列で判別できるようになっています。
どちらかの条件で検知するにはどうすればよいでしょうか。
request.headers['user-agent'].contains('MSIE')
21
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(条件組み合わせによる制限)
詳細モードでは「 || 」や「 && 」の論理演算子が使えます。
この場合はUserAgentに『MSIE』または『Trident』の文字が含まれるとき
request.headers['user-agent'].contains('MSIE') ||
request.headers['user-agent'].contains('Trident')
request.headers['user-agent'].contains('MSIE') &&
inIpRange(origin.ip, '203.0.113.0/24')
この場合はUserAgentに『MSIE』が含まれ、かつIPが『203.0.113.0/24』のとき
となります。
22
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(条件組み合わせによる制限)
論理演算子は様々な種類があります。
x == ”hoge” 文字列hogeと一致する
x != ”hoge” 文字列hogeと一致しない
x && y x かつ y がtrueである
x || y x または y がtrueである
!x x がfalseである
x.contains(‘hoge’) 文字列xに部分文字列hogeが含まれている
inIpRange(x, y) IPアドレスxがIPアドレス範囲yに含まれている
これ以外にも数種、論理演算が存在します
23
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(様々な構文による制限)
『origin』と『request』の変数を使うことで、様々なリクエスト元の情報を取得し、
判別に利用することが出来ます。
origin.region_code == ‘JP’ &&
request.path.contains('/test/') &&
request.method == POST
(例)送信元IPが日本かつ、URLのpathに「/test/」が含まれるPOSTメソッド
request.method HTTPリクエストメソッド
request.path HTTP URLのパス
request.query 「name1=hoge」などのURLクエリ
request.headers リクエストのヘッダー情報
origin.ip 送信元IP
origin.region_code 送信元IPの国コード
origin.asn 送信元IPアドレスの自律システム番号
24
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限
事前構成されたWAFルール &
最近追加されたルールについて
25
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
SQLインジェクションなどの攻撃に対しての WAFルールの設定も可能です。
evaluatePreconfiguredExpr('sqli-stable', [])
構文はこのようになります。
『evaluatePreconfiguredExpr』というメソッドを使うことで CloudArmorが
事前に用意している WAFルールを適用することができます。
ひとつめの引数は対象となるルールを、
ふたつ目の引数はルールの中でも限定的に除外したい詳細ルールを設定できます。
26
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
それぞれのWAFルールには、いくつかの詳細ルールがあります。
除外したい詳細ルールが設定できるのは、
正しい動作でも対象のプロジェクトで検知されてしまう場合に対応するためです。
evaluatePreconfiguredExpr('sqli-stable', [
'owasp-crs-v030001-id942421-sqli',
'owasp-crs-v030001-id942432-sqli'
])
この場合はSQL文字がcookieやパラメータから検出され、
特殊文字数の検知が一定以上確認された場合の詳細ルールを除外しています。
「SELECT」や「FROM」などよく使われやすかったり、暗号鍵で含まれることもあるので
適応しづらいルールです。
27
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
事前に正常なアクセスに詳細ルールの検知が含まれているかを知りたい場合は
プレビューモードを使います。
28
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
検知した場合はロギングで上記のような検索方法で見つけることができます。
こちらは設定した優先度「5」のルールでプレビュー検知されたアクセスを見つけるものです。
29
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
検索結果のログでは
右画像のような形式で記録されます。
『previewSecurityPolicy』
の中身がプレビューで検知した
内容の詳細となり
『preconfiguredExprIds』
が実際に検知した詳細 ルールです。
30
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(事前構成されたWAFルール)
SQLインジェクション以外には以下のようなルールもあります。
◆CloudArmor公式WAF一覧
https://cloud.google.com/armor/docs/rule-tuning?hl=ja
sqli-stable SQLインジェクション
xss-stable クロスサイト スクリプティング
lfi-stable ローカル ファイル インクルード
rfi-stable リモート ファイル インクルード
protocolattack-stable プロトコル攻撃
php-stable PHP インジェクション攻撃
31
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
詳細モードによるアクセス制限(最近追加されたルールについて)
最近では『cve-canary』という『log4j攻撃』に対応したWAFルールも追加されました。
詳細ルールも4つほど設定されており、
近年の脆弱性のニュースも踏まえながらアップデートされ続けています。
気がつけば新しいWAFルールが追加されているということはよくあるので、
GCPとしても意欲的かつ継続的にアップデートする機能として捉えていそうです。
evaluatePreconfiguredExpr('cve-canary',[
'owasp-crs-v030001-id244228-cve',
'owasp-crs-v030001-id344228-cve'
])
32
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
● 詳細モードではUAや国コード指定など、IP以外での検知方法がある
● 論理演算子による条件の組み合わせがあり、
柔軟性の高いルールを独自に設定可能
● 事前構成されたWAFルールがいくつもあり、
今後も継続的にアップデートされてゆく
詳細モードによるアクセス制限 まとめ
33
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
まとめ
34
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
● CloudArmorはGCPが提供する高機能なWAF機能
● 様々な構文や条件を組み合わせて、柔軟な設定が可能
● 事前構成ルールを使って一般的な攻撃への
防御を任意に設定可能
まとめ
35
Copyright (C) 2022 Toranoana Lab Inc. All Rights Reserved.
ご清聴ありがとうございました
36

セキュリティを強化しよう!CloudArmorの機能解説

  • 1.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. セキュリティを強化しよう! 〜CloudArmorの基本機能解説〜 虎の穴ラボ エンジニアリングリーダー 植竹 惇 T O R A N O A N A L a b 1
  • 2.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 自己紹介 植竹 惇 ● 2018/08入社 ● エンジニアリングリーダー 虎の穴ラボへの入社理由 ● 趣味と仕事を近づけたい ● スタートアップ的な部署で 得難い体験ができそう 趣味 ● バンドリ ● アニメ全般 ● 金曜日のWebマンガ各種 2
  • 3.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 今日のテーマ CloudArmorの基本機能解説 3
  • 4.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. アジェンダ ● CloudArmorとは ○ 構成について ○ ルールの基本事項 ● 詳細モードによるアクセス制限 ○ UA制限 ○ 条件組み合わせによる制限 ○ 様々な構文による制限 ○ 事前構成されたWAFルール ○ 最近追加されたルールについて ● まとめ 4
  • 5.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは 構成について 5
  • 6.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは GCPが提供する、ウェブ攻撃からサイトを保護する機能 ・IPアドレスごとのアクセス制限 ・UserAgentルールによるアクセス制限 ・各種WAFルールに基づいたアクセス制限 など様々な機能が備わり、 新機能追加含め定期的にアップデートされ続けている。 <引用>GCP公式のCloudArmor説明ページ https://cloud.google.com/armor 6
  • 7.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは システム構成としてはLB(LoadBalancing)に紐付ける形で運用する。 条件でNGだった場合 7
  • 8.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは LB(LoadBalancing)の紐付け先がCloudRunやGKEでも可。 8
  • 9.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは つまりCloudArmorは アプリケーションに到達する前に ロードバランサーへのアクセス時点で 防御する仕組み 9
  • 10.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは CloudArmorはひとつのターゲット (アプリ)に対しての防御ルールを 『ポリシー』という単位で作成する。 3の「ターゲットへのポリシーの適応」で 紐付けるロードバランサーを選択する。 最も重要なのでは2の「ルールの追加」で ここの設定をどのようにするかで、 CloudArmorの動作が変わってくる。 10
  • 11.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは 料金はかなり安価です。 1サービスに対し、ルールを 20件設定、 月に400万アクセス来ると過程した場合、 月額$28(約3220円)程度。 ただし、アプリケーションに含まれる CSSや画像ファイルなども含まれるため、 少しでも削減したい場合は別ドメインの CDNに 切り出すなどの対応が必要。 HTTPリクエスト $0.75/1,000,000件 ポリシー数 1件あたり月額$5 ルール数 1件あたり月額$1 11
  • 12.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは ルールの基本事項 12
  • 13.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは 『ルール』は後から追加・編集・削除が可能。 上の図で設定されているルールは「指定した IPアドレス」に対してアクセスを「拒否」する。 IPアドレスは1ルールにつき最大10個指定ができる。 ※設定ルールの一覧画面 13
  • 14.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは ルールは優先度に従って並んでいますが、 同じIPの指定がされたルールがこのように並んでいる場合、 「203.0.113.0/24」のIPからアクセスするとどうなるでしょうか。 14
  • 15.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは 答えは「拒否(403)でアクセスが制限される」です。 優先度の高い順に判定され、条件に一致した場合はそのアクションが実行されます。 よって、以下の場合は逆に「許可」されます。 15
  • 16.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. CloudArmorとは 『ルール』は『プレビュー』としてアクションはせずに、 判定結果だけをログとして残すことも出来ます。 上の図で設定されている場合だと、「拒否( 403)」の判定がアクセスログに記録されつつ、 「許可」のアクションが実行されます。 16
  • 17.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. ● CloudArmorはロードバランサのアクセス時点で防御を行う仕組み ● アプリケーションはVMグループだけではなく CloudRunやGKEも利用できる ● ルールは優先度の高い順で評価し、 アクションが決まればそれ以降は評価されない CloudArmorとは まとめ 17
  • 18.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限 UA制限 & 条件組み合わせによる制限 18
  • 19.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(UA制限) 『ルール』は大きく『基本モード』と『詳細モード』のふた つがあります。 IP制限だけであれば基本モードですが、詳細モードを 使いこなすことが、CloudArmorを利用するにあたっ て重要になります。 詳細モードではテキストエリアの記述欄が表示され、 そこに構文を設定します。 ※ルール編集の条件設定部分 19
  • 20.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(UA制限) User-Agentによる識別を行う構文です。 上記の例ではInternet Explorerでのアクセスを検知します。 Internet Explorerは基本的に「MSIE」の文字列が含まれるため、 この構文でアクセス検知が可能です。 request.headers['user-agent'].contains('MSIE') 20
  • 21.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(UA制限) しかし、この場合だと Internet Explorer 11のケースがカバーできません。 Windows10のIE11は「MSIE」という文字列がなく、 「Trident」という文字列で判別できるようになっています。 どちらかの条件で検知するにはどうすればよいでしょうか。 request.headers['user-agent'].contains('MSIE') 21
  • 22.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(条件組み合わせによる制限) 詳細モードでは「 || 」や「 && 」の論理演算子が使えます。 この場合はUserAgentに『MSIE』または『Trident』の文字が含まれるとき request.headers['user-agent'].contains('MSIE') || request.headers['user-agent'].contains('Trident') request.headers['user-agent'].contains('MSIE') && inIpRange(origin.ip, '203.0.113.0/24') この場合はUserAgentに『MSIE』が含まれ、かつIPが『203.0.113.0/24』のとき となります。 22
  • 23.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(条件組み合わせによる制限) 論理演算子は様々な種類があります。 x == ”hoge” 文字列hogeと一致する x != ”hoge” 文字列hogeと一致しない x && y x かつ y がtrueである x || y x または y がtrueである !x x がfalseである x.contains(‘hoge’) 文字列xに部分文字列hogeが含まれている inIpRange(x, y) IPアドレスxがIPアドレス範囲yに含まれている これ以外にも数種、論理演算が存在します 23
  • 24.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(様々な構文による制限) 『origin』と『request』の変数を使うことで、様々なリクエスト元の情報を取得し、 判別に利用することが出来ます。 origin.region_code == ‘JP’ && request.path.contains('/test/') && request.method == POST (例)送信元IPが日本かつ、URLのpathに「/test/」が含まれるPOSTメソッド request.method HTTPリクエストメソッド request.path HTTP URLのパス request.query 「name1=hoge」などのURLクエリ request.headers リクエストのヘッダー情報 origin.ip 送信元IP origin.region_code 送信元IPの国コード origin.asn 送信元IPアドレスの自律システム番号 24
  • 25.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限 事前構成されたWAFルール & 最近追加されたルールについて 25
  • 26.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) SQLインジェクションなどの攻撃に対しての WAFルールの設定も可能です。 evaluatePreconfiguredExpr('sqli-stable', []) 構文はこのようになります。 『evaluatePreconfiguredExpr』というメソッドを使うことで CloudArmorが 事前に用意している WAFルールを適用することができます。 ひとつめの引数は対象となるルールを、 ふたつ目の引数はルールの中でも限定的に除外したい詳細ルールを設定できます。 26
  • 27.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) それぞれのWAFルールには、いくつかの詳細ルールがあります。 除外したい詳細ルールが設定できるのは、 正しい動作でも対象のプロジェクトで検知されてしまう場合に対応するためです。 evaluatePreconfiguredExpr('sqli-stable', [ 'owasp-crs-v030001-id942421-sqli', 'owasp-crs-v030001-id942432-sqli' ]) この場合はSQL文字がcookieやパラメータから検出され、 特殊文字数の検知が一定以上確認された場合の詳細ルールを除外しています。 「SELECT」や「FROM」などよく使われやすかったり、暗号鍵で含まれることもあるので 適応しづらいルールです。 27
  • 28.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) 事前に正常なアクセスに詳細ルールの検知が含まれているかを知りたい場合は プレビューモードを使います。 28
  • 29.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) 検知した場合はロギングで上記のような検索方法で見つけることができます。 こちらは設定した優先度「5」のルールでプレビュー検知されたアクセスを見つけるものです。 29
  • 30.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) 検索結果のログでは 右画像のような形式で記録されます。 『previewSecurityPolicy』 の中身がプレビューで検知した 内容の詳細となり 『preconfiguredExprIds』 が実際に検知した詳細 ルールです。 30
  • 31.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(事前構成されたWAFルール) SQLインジェクション以外には以下のようなルールもあります。 ◆CloudArmor公式WAF一覧 https://cloud.google.com/armor/docs/rule-tuning?hl=ja sqli-stable SQLインジェクション xss-stable クロスサイト スクリプティング lfi-stable ローカル ファイル インクルード rfi-stable リモート ファイル インクルード protocolattack-stable プロトコル攻撃 php-stable PHP インジェクション攻撃 31
  • 32.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. 詳細モードによるアクセス制限(最近追加されたルールについて) 最近では『cve-canary』という『log4j攻撃』に対応したWAFルールも追加されました。 詳細ルールも4つほど設定されており、 近年の脆弱性のニュースも踏まえながらアップデートされ続けています。 気がつけば新しいWAFルールが追加されているということはよくあるので、 GCPとしても意欲的かつ継続的にアップデートする機能として捉えていそうです。 evaluatePreconfiguredExpr('cve-canary',[ 'owasp-crs-v030001-id244228-cve', 'owasp-crs-v030001-id344228-cve' ]) 32
  • 33.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. ● 詳細モードではUAや国コード指定など、IP以外での検知方法がある ● 論理演算子による条件の組み合わせがあり、 柔軟性の高いルールを独自に設定可能 ● 事前構成されたWAFルールがいくつもあり、 今後も継続的にアップデートされてゆく 詳細モードによるアクセス制限 まとめ 33
  • 34.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. まとめ 34
  • 35.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. ● CloudArmorはGCPが提供する高機能なWAF機能 ● 様々な構文や条件を組み合わせて、柔軟な設定が可能 ● 事前構成ルールを使って一般的な攻撃への 防御を任意に設定可能 まとめ 35
  • 36.
    Copyright (C) 2022Toranoana Lab Inc. All Rights Reserved. ご清聴ありがとうございました 36