Log AnalyticsはOCIのログ統合管理サービスで、OCIの各種サービス、サーバーのログを収集・蓄積・分析して問題発生時の原因特定や影響範囲の把握、異常の早期検知、運用上の傾向分析などに利用します。
Log Analyticsを利用するときのダッシュボードとしてGraphicalユーザーインターフェースが提供されており、ユーザーの使い勝手に応じて自由なカストマイズが可能です。
またSecurity視点からはSIEM(Security Information and Event Management)基盤として活用できます。
Cloud Guardが主としてIAM User Activty、コンピュータ・インスタンスを対象にセキュリティ脅威を監視する一方、Log AnalyticsはNetwork SFD(Security Fundamentals Dashboard)を使うことでOCIネットワークに関してセキュリティ脅威を監視・分析することが可能になります。
Cloud GuardがSignature/AIベースで自動的に脅威を検知するのに対して、Log Analytics SFDはSOC(Security Operation Center)運用の一環としてSIEMマニュアル分析、Anomaly(Network Traffic Spike等の通常状態からの著しい違脱)検出を中心に行います。
Log Analytics、Cloud Guardのセキュリティ脅威検知方法としての位置付けは下記の図を参考ください。
本投稿ではLog Analytics SFDの導入方法、利用手順サンプルを紹介します。Log AnalyticsのSIEM分析のリアルケースについて情報を得たい方は 3.SFD利用手順のサンプルをまずはご覧ください。
https://qiita.com/nsaka0315/items/51dc8ac81fd95ceac60e#%EF%BC%93sfd%E3%81%AE%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB
0. Log Analytics SFDとは
Security Fundamentals Dashboards(SFD)は、OCI Market Placeで提供され、ネットワークの可視性を向上させるため、ネットワークファイアウォール、Webアプリケーションファイアウォール(WAF)、ロードバランサー、仮想クラウドネットワーク(VCN)などの主要なセキュリティサービスの包括的なビューを提供します。SFDは、これらのサービスを単一のユーザーフレンドリーなインターフェースに統合することで、監視の効率化、脆弱性の検出、ネットワーク防御の強化を実施します。まずはOCIコンソール画面を紹介します。
1.VCNネットワーク・フロー・ログ分析
Public NetworkのTraffic状況(Ingress/Egress),ThreatIPからのアクセス件数、環境への接続が拒否されているすべての送信元 IP/宛先Port等が確認できます。
2.ロードバランサーの監視と分析
ロードバランサー毎のリクエスト数、HTTP応答4XX/5XXコード,DNSホスト名のリストなどが照会できます。
3.Webアプリケーションファイアウォールの監視
HTTPメソッド、WAF応答/バックエンドコード、WAF接続トップ10の国/URL/Source IP、WAFアクション(許可/拒否)などが確認できます。
4.VCNネットワーク変更モニタリング
監査ログに基づくVirtual Cloud Networkの設定変更などが照会できます。
1.SFD導入の事前準備
1-1.Log Analyticsの有効化
Log Analyticsの使用開始のボタンをクリックします。順次左下の次へボタンを押せば有効化は完了します。以前はホストログの取り込みもしていたようですが現時点では監査ログのみをLog Analyticsに取り込み・連携させ、有効化によりDashboardで監査ログがみれるようになります。
1-2.ネットワーク専用のログ・グループを作成(Loggingサービス)
Log Analytics連携する各種NetworkLogを保管するログ・グループを作成します。
[監視及び管理]-[ロギング]-[ロググループ]を選択
コンパートメントにルートcompartmentを選択
ロググループの名前(NW_LOG_LogAna)を入力
最下部にある「作成」ボタンを押します。
1-3.ネットワーク関連ログの有効化(Loggingサービス)
ネットワーク関連ログを取得して上記で作成したロググープに保管します。
[監視及び管理]-[ロギング]-[ロググループ]を選択
1で作成したロググループを選択し詳細が現れます。
カスタム・ログの作成とサービス・ログの有効化の2つのボタンが
現れますが、ここではサービス・ログの有効化を選択
各種リソースログの有効化の画面が現れます。以降は、Log Analyticsの
分析対象になるNetworkログだけを選択して設定してください。
1-3-1.VCNフローログの有効化
リソース・コンパートメント: 対象のコンパートメントを選択
サービス: "Virtual Cloud Network - Flowlogs"を選択
リソース・レベル: サブネット *1
リソース: 対象サブネット名を選択 *2
ログ・カテゴリ Flow Logs - subnet records
取得フィルタ 取得フィルタ名*3を入力
ログ名 新規作成するリソースログ名を入力
ログの有効化ボタンをクリックします。*は画面の下の注釈を参考ください。
注釈
*1.サブネットでないとLog取得できません。
*2.CIS V2 4.13 [Ensure VCN flow logging is enabled for all subnets]に準拠し全てのサブネットの指定が推奨です。
*3.取得フィルタ名について
Log保管のためLog取得フィルタを作成、ひとまずは全てを取得するフィルタ・ルールを作成
[ネットワーキング]-[ネットワーク・コマンド・センタ]ー[取得フィルタ]
フロー・ログ取得フィルタを選択
サンプリングレート: 100%
ルール配下 順序番号1
トラフィック配置: すべて
包含/除外: 含める
ソースのIPv4 CIDRまたはIPv6接頭辞: 0.0.0.0/0
宛先のIPv4 CIDRまたはIPv6接頭辞: 0.0.0.0/0
1-3-2.Load Balancerログの有効化(アクセス・ログおよびエラー・ログ)
サービス: Load Balancers
リソース: 対象のLoad Balancerのocid
ログ・カテゴリ: Access logs/Error Logsを選択
ログ名: 新規作成するログ名を入力(任意)
1-3-3.OCI Webアプリケーション・ファイアウォールのログの有効化
サービス: WAF Service
リソース: 対象のWAF service名を選択
ログ・カテゴリ: All records
ログ名: 新規作成するログ名を入力(任意)
1-3-4.OCIネットワーク・ファイアウォール・トラフィック・ログおよび脅威ログの有効化
サービス: Network Firewall
リソース: 対象のNetwork Firewall名を選択
ログ・カテゴリ: Traffic Logs/Threat Logsを選択
ログ名: 新規作成するログ名を入力(任意)
2.SFDの作成
Security Fundamentals Dashboards(SFD)はOCI Marketplaceから入手できます。スタックの起動ボタンを押します。
最初のスタック情報画面では次へボタンをおし、変数の構成画面が現れます。
Dashboard Region:Regionを選択
Dashboard Compartment Name: root compartment(推奨)
Create service Connector for IAM Identity Domain Audit
のチェツクボックスにcheckをつけ
Logging Analytic Log Group Name: default名を利用
Service Connector Hub State オプション: 起動してからすぐにLogAnalyticsを見るのでACTIVEを選択
Include Network Related Logs? にcheckをつけ
Existing OCI Flow Log Groups OCIDsオプション
1-2で作成したLogging ServiceのLog Groupsのocidを入力します。
[監視と管理]-[ログ・アナリティクス]-[ダッシュボード]-[概要]に移動します。
Dashbordsの一覧画面に、Identity Security、Network Security
Security Operationがあることを確認します。
これでSFDのsetupが完了しました。実際は内部で下記の処理を自動実行しています。
1.Service Connectorの作成(各連携Network Log毎に)
2.Log Analyticsのエンティティの作成
3.Log Analyticsのログ・グループの作成
4.Log Analyticsのソースの拡張フィールドの追加
5.Dashboardの作成(Identity Security,Network Security,
Security Operation)
3.SFDの利用手順サンプル
上記のダッシュボードの一覧画面よりNetwork Securityをクリックすると、下記画面が現れます。Network Trafficの傾向分析を行う(平常状態とは著しく異なるAnormalyなTraffic状況を見つけ問題を特定する)ため一定の期間ここでは過去14日間を選択します。中ほどにある、ThreatIPsとDenied Connections by Sorceのグラフに注目します。
3-1.ThreatIPsグラフからWAF log調査
ThreatIPを含んだログが多く検出された青線グラフをクリックすると当機関でのWAF logの全レコードが表示されます。
左端のフィールドでThreatIPsを選択しフィルタでThreatIPのアドレス84.xxx.yyy.zzzをCheckします。
ThreatIPを含んだ赤丸がついた(Priority:高)ログの一覧が抽出されます。FieldにThreat Intelligence FindingsがsetされたLogレコードが4月6日17:00~18:00 638件検出されました。どれか一つのログの中にあるThreatIPsのアドレスをクリックして、"脅威インテリジェンスで表示"をクリックします。
自動的に[脅威インテリジェンスの脅威のインジケータデータベース]-[インジケータの画面]に遷移して該当のThreatIPアドレスの詳細情報を入手できます。Moscow方面からのsqlinjectionattackのタイプのAttackの可能性が
ある(信頼度43)ことがわかります。
引き続きアクセスが続くようであれば下記のような対応を検討することになります。
(1)Regional WAFのアクセス制御の拒否リストに該当のThreatアドレスを明示的に指定
(2)WAFアクセス制御のsqlinjection関連ルールを改めて確認して不足分あれば有効化する
Threat IPとLogAnalyticsの関係についてより詳細に知りたい方は下記を参考ください。
3-2.Denied Connections by SourceグラフからVCN Flow Logの調査
Denied Connections by Sorceのグラフでレコード数が最も多いSource IP 209.xxx.yyy.zzz(青色の棒グラフ)をクリックします。
VCN Flow logの該当IPアドレス関連の47,874レコードが現れます。
ここでは実際のログをもう少し詳細に見てみます。
一番左端のフィールドからその他の下にあるDestination Portをクリックした画面では、1,2,3,4・・・・・とSequentialに数字が現れます。これは該当のSource IPからPort Scanをかけられていることがわかります。この状態が続くようであれば、該当のPublicSubnetのSecurity ListへBlockIPとして明示的登録を検討することになります。
該当のアドレスはOCI Threat Intelligneceには登録されていませんでしたが念のため外部サイトで検索をかけてみると下記結果が得られます。
Virustotalサイトによれば94中4グループがMalicious IPとjudgeしていますので重大なSecurity事故につながる可能性は現時点では低いと言えます。
参考: WAFログの検知ルールの詳細情報取得について
WAFログではどの保護ルールによってリクエストが検知/ブロックされたかをログから識別したい場合があるかと思いますが、Request Protection Rule IDがこれに該当します。
OCI WAF ログの Request Protection Rule ID は、検知/ブロックした具体的なシグネチャ(攻撃検知ルール)やカスタムルールを一意に示す識別子 です。ただ番号の羅列なので、ルール名やルールの詳細内容まではわかりません。LogAnalyticsでRule IDからルール名、ルール内容をPopupで表示するようにする方法を紹介します。
[監視と管理]-[ログ・アナリティクス]-[ダッシュボード]-[概要]
一覧画面よりNetwork Securityを選択して、ThreatIPsの画面からWAF logの左端のフィールドでRequest Protection Rule IDのフィルター画面のRule IDにチェックを入れます。
ログにRequest Protection Rule IDが表示されるのでクリックして[ソースのエンリッチ]-[フィールド・エンリッチメントの追加]を選択します。
フィールド・エンリッチメントの追加画面が現れ、
ファンクション:ルックアップ
表名のルックアップ:Web Application Firewall Protection Capabilities
ログ・ソース・フィールド:Request Protection Rules
検索表の列:Protection Capabilities
新規ログ・ソース・フィールド:wafpop
フィールド値:Description
を指定して
フィールド・エンリッチメントの追加ボタンを押します。
元の画面に戻り、ログのRequest Protection Rule IDsのIDにポインターを置くと、下記の保護機能Rule IDを説明したPopUp メッセージが現れます。
参考情報
Oracle Cloud Infrastructure Security Fundamentals Dashboards using OCI Logging Analytics