2025年9月Udemy全コース共通クーポン【VARONTO2025SEP】 Udemyコース

【キャリア・学習編】:【第20回】SOC業務で役立つクエリ言語(Splunk SPL, KQL, SQLなど)

目次

1. なぜクエリ言語が必要なのか?

SOCアナリストは「大量のログ」から攻撃の痕跡を見つけ出す仕事です。
そのために必須となるのが ログ検索・分析用のクエリ言語

  • SIEM(Splunk, Microsoft Sentinel, QRadarなど)
  • クラウド(AWS, Azure, GCP)
  • データベースやログストレージ

どれも クエリを書けるかどうかで調査スピードが大きく変わる のです。


2. Splunk SPL(Search Processing Language)

Splunkは多くのSOCで使われている代表的なSIEMです。
SPL(Search Processing Language)を使って、ログから柔軟に抽出・可視化が可能です。

サンプルクエリ

失敗ログインイベントの検出

index=auth sourcetype=linux_secure "Failed password"
| stats count by user, src_ip
| where count > 5

👉 ユーザーごとに失敗ログイン回数をカウントし、5回以上の失敗を抽出。ブルートフォース攻撃を検知可能。

特定IPからのアクセス数確認

index=web sourcetype=apache_access src_ip="203.0.113.50"
| stats count by uri_path

👉 攻撃者IPがどのURLを狙っているかを分析。


3. KQL(Kusto Query Language / Microsoft Sentinel, Defender)

Microsoft SentinelやMicrosoft 365 Defenderで利用されるのがKQLです。クラウドSOCでは必須スキル。

サンプルクエリ

異常なサインイン(Impossible Travel検出)

SigninLogs
| extend Location = strcat(Tostring(LocationDetails["city"]), ", ", tostring(LocationDetails["countryOrRegion"]))
| summarize Count = count(), FirstSeen=min(TimeGenerated), LastSeen=max(TimeGenerated)
    by UserPrincipalName, Location
| order by UserPrincipalName asc

👉 同一ユーザーが短時間で異なる国からログインしている場合を検出。

添付ファイル付きメールの検出

EmailEvents
| where AttachmentCount > 0
| project Timestamp, Subject, SenderFromAddress, RecipientEmailAddress, AttachmentCount

👉 フィッシングメールの初動調査に有効。


4. SQL(Database / 汎用ログ基盤)

SOCでは直接DB検索することもあります。SQLの基礎を押さえると他のクエリ言語にも応用が効きます。

サンプルクエリ

1時間以内に同一ユーザーで10回以上ログイン失敗

SELECT username, COUNT(*) AS fail_count
FROM login_logs
WHERE status = 'FAIL'
  AND timestamp > NOW() - INTERVAL '1 hour'
GROUP BY username
HAVING COUNT(*) > 10;

外部通信先の異常IP確認

SELECT src_ip, dst_ip, COUNT(*) AS cnt
FROM netflow_logs
GROUP BY src_ip, dst_ip
ORDER BY cnt DESC;

5. 学習方法

  • Splunk:無料の「Splunk Free」で演習可能
  • KQL:Azure無料枠+Microsoft Learnのハンズオンが便利
  • SQL:ローカルのDB(MySQL, PostgreSQL)やクラウド環境で練習可能
  • Blue Team Labs Online / TryHackMe:SOC演習でクエリ練習ができる

6. まとめ

  • Splunk SPL:オンプレSOCや大企業SOCでよく使われる
  • KQL:クラウドSOC、Microsoft 365環境の調査に必須
  • SQL:どんな環境でも基礎力として役立つ

👉 クエリは「日々の練習」で強くなります。最初はテンプレートを真似て、徐々に自分のユースケースに合わせてカスタマイズしていくのが上達のコツです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次