LoginSignup
2
1

More than 3 years have passed since last update.

SplunkにAzure Active Directory関連データを収集する

Last updated at Posted at 2019-12-19

はじめに

  • はっきり言って、Microsoftのサービス名、サービス内容を把握できていないし、完全に理解する気力も基礎知識もない
  • が、Azure Active Directoryというサービスに絞って、そこの監査ログサインインログを集めてセキュリティ監視をはじめたい
  • そのための取込に苦労した点をまとめて備忘録として残しました。

構成情報

  • Splunkサイド
  • Azure Active Directoryサイド
    • 利用サブスクリプション:
      • Pay-As-You-Go subscription
      • Azure AD Premium license P1

手順概要

  1. Splunk Add-onのインストール
  2. Azure ADサイドの設定
  3. Splunk Add-onの設定
  4. 届いたログの検索チェック

手順詳細

1. Splunk Add-onのインストール

  • SplunkにApp(Microsoft Azure Add on for Splunk)をインストール
  • Appを開き、[ドキュメント] - [Setup Overview]を開く
    • 取り込む仕組みとして2種類の方法があります。
      • Basic Input
      • Event Hub
    • 今回はBasic Inputでの手順を紹介します。理由はBasic Inputで取り込んだほうがCIM(Authentication)にもマップされたsourcetype="azure:aad:signin"が用意されているので分析しやすい。

スクリーンショット 2019-12-13 10.04.48.png

  • ここでは「Reader(閲覧者)」のRoleをもったサブスクリプションが必要といっていますが、これは監査ログの場合です。sign-inログまで取る場合は合わせて「Security Reader(セキュリティ閲覧者)」が必須です。

  • [ドキュメント] - [Setup an Azure AD Application Registration]を開く

    • 基本的にはこのガイドに従えば必要なappができます。 スクリーンショット 2019-12-13 21.19.01.png
  • ここから 2. Azure ADサイドの設定に進みます

2. Azure ADサイドの設定

  • Azure Active Directory admin centerにアクセス
    スクリーンショット 2019-12-13 21.24.53.png

  • API連携用のAppのレジストレーション
    スクリーンショット 2019-12-13 21.27.28.png

  • Certificatesの作成(New Client Secret)

    • このときに秘密鍵(Secret ID)をメモしておくこと。後で使います。 スクリーンショット 2019-12-13 21.28.30.png
  • Azure Portalに飛んで、サブスクリプションメニューへ
    スクリーンショット 2019-12-13 21.30.01.png

  • Add Role Assignment
    スクリーンショット 2019-12-13 21.32.11.png

  • "Security Reader"を選択し、作成したapp(例:syokota4azureAD)の名前を探して適用
    スクリーンショット 2019-12-13 21.33.06.png

  • 再び、Azure Active Directory admin centerへ戻る
    スクリーンショット 2019-12-13 21.35.39.png

  • AppにAPI Permissionsを設定
    スクリーンショット 2019-12-13 21.38.29.png
    スクリーンショット 2019-12-13 21.39.00.png

  • [Grant admin consent for xxx]をクリック
    スクリーンショット 2019-12-13 21.40.01.png

  • 出てきたダイアログから承認!
    スクリーンショット 2019-12-13 21.41.00.png

  • (まだ無ければ)Azure AD P1 or P2を有効化

  • 「Microsoft 365 管理センター」にてAzure AD Premium P1/P2を管理者アカウントに適用!
    スクリーンショット 2019-12-13 21.45.27.png
    スクリーンショット 2019-12-13 21.46.03.png

  • Azure AD側の設定は以上で、以下の情報を控えておいてSplunkのapp設定に進みます

    • Application (client) ID
      • 作成したAppのOverviewメニューにて確認可能
    • Client Secret
      • Certificate作成時にメモしたものを利用
    • Directory (tenant) ID
      • 作成したAppのOverviewメニューにて確認可能

3. Splunk Add-onの設定

  • Microsoft Azure Add-on for SplunkのAppを開く
  • 設定にてAccount作成
    スクリーンショット 2019-12-13 21.54.58.png

  • 入力にて2つのinputを作成
    スクリーンショット 2019-12-13 21.58.07.png

  • Sign-in (間隔はデフォルトのまま推奨。試験的に短くしています)
    スクリーンショット 2019-12-13 21.56.53.png

  • Audit (間隔はデフォルトのまま推奨。試験的に短くしています)
    スクリーンショット 2019-12-13 21.57.46.png

4. 届いたログの検索チェック

Auditログ

  • ざっとサマるとこんなtable情報が出せる。いわゆるAzureADの操作レコードのようなもの。ユーザ登録とか更新したとか。

スクリーンショット 2019-12-13 22.07.09.png

Sign-Inログ

  • ざっとサマるとこんなtable情報が出せる。ログイン認証行為の成功、失敗が記録されていることがわかります

スクリーンショット 2019-12-13 22.04.26.png

  • Sign-Inログは「tag=authentication」にCIMマッピングされています!
    スクリーンショット 2019-12-13 22.11.48.png

  • つまりinfoSec App for SplunkのAll AuthenticationsダッシュボードやEnterprise Securityですぐに集計が可能ということ
    スクリーンショット 2019-12-13 22.17.40.png

まとめ

  • Azure ADを使った認証アクティビティ(成功、失敗)を監視するならこのAdd-Onを使うべし
  • 他のOffice365系のAppはAzure AuditログはあくまでOffice365サービスへの操作履歴を残す監査ログの位置づけです。

  • 例えば下のスクショを見ると。
    image.png

Azure AD Add-onのサインインログまで取得したデータ(sourcetype=azure:aad:signin)

Splunk Add-on for Microsoft Office 365の監査ログ(sourcetype=o365:management:activity)

"syokota"でログイン試行した際の結果を見比べていただくと分かると思いますが、sourcetype=o365:management:activityではログイン試行の“失敗イベント”まで取れていないことが、差として現れています。

その他

  • Troubleshooting
    • View Checkpoints
    • 正しく動くと、ログ収集時間が表示される スクリーンショット 2019-12-13 22.00.23.png
2
1
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
2
1