Agentic Alert Investigation 論文閱讀分析:很多 SOC 真正缺的,不是再多一個會判案的模型,而是先把 alert 查成有證據的案子
本文由 AI 產生、整理與撰寫。
論文基本資訊
- 論文標題:Towards Agentic Investigation of Security Alerts
- 作者:Even Eilertsen、Vasileios Mavroeidis、Gudmund Grov
- 年份:2026
- 來源:arXiv:2604.25846
- 論文連結:https://arxiv.org/abs/2604.25846
- DOI:10.48550/arXiv.2604.25846
- 會議:2025 IEEE International Conference on Big Data (BigData)
- 主題:Security Operations Center、Alert Investigation、LLM Agents、SOC Automation、Suricata、Incident Triage
如果你最近聽太多「讓 agent 進 SOC 就能自動 triage alert」這種口號,這篇 Towards Agentic Investigation of Security Alerts 的價值,在於它沒有直接把夢做滿,而是老老實實承認一件事:真正卡住 SOC 的,常常不是模型不會下 verdict,而是它在下 verdict 前根本沒把該看的 log 看完。
作者想處理的是很實際的 early-stage investigation 問題。很多 detection system 只丟一條很空泛的 alert,像是「Suspicious behaviour」,但 analyst 接下來卻得自己去翻 Suricata、auth log、syslog,把 source、destination、HTTP path、login failure、可疑字串一段一段拼起來。這件事很花時間,也正是 alert fatigue 的養成機制之一。
所以這篇 paper 沒有把 LLM 當成一個直接看 alert 就能通靈的裁判,而是把它包成一條有工具、有步驟、有約束的 investigation workflow:先看 overview,再挑 query,再抽 evidence,再寫 summary,最後才下 verdict。
這篇論文最重要的主張:不要直接問模型「這是不是攻擊」,先讓它學會怎麼查
作者提出的 workflow 很像把一位初階 SOC analyst 的前半段工作流程拆成幾個角色:
- Investigator LLM:根據 alert 與 overview 決定接下來該查哪些資料
- Execution layer:真的去跑 SQL query 與 grep,把資料抓回來
- Summary LLM:把 evidence 整理成 executive summary、IoC 與行為判讀
- Incident Verdict LLM:最後才決定 malicious、benign 或 uncertain
這個設計的核心不是「多叫幾次模型比較厲害」,而是把判斷和取證分開。模型先負責決定「要看什麼」,系統再用受限工具真的把資料拿回來,最後另一個模型才根據已知證據作結論。
換句話說,作者在修正一個很常見的 AI 誤用:你不能期待 LLM 在沒查到資料前就先有調查結論。
它怎麼查?其實很樸素,甚至有點故意樸素
這篇 paper 用的工具不花俏,反而因此很有參考價值。結構化資料主要是 Suricata logs,透過 SQL 查詢;非結構化資料則用很克制的 grep 去掃 auth log 和 syslog。Investigator LLM 可選的查詢也不是無限自由發揮,而是從幾種 predefined query 裡挑,例如:
- 時間窗內最常見的 alert signatures
- 產生最多 alert 的 source IP
- 被打最多次的 destination IP
- 告警 HTTP path 與 sample status
- 針對 alert message 的 regex 篩選
- 有限度的 freeform SQL
這種設計看似保守,實際上很聰明。因為作者很清楚:真的要把 LLM 放進 investigation pipeline,最先該限制的不是模型文筆,而是它碰資料和工具的方式。
所以 execution step 裡還加了不少 guardrails:
- SQL 必須是單一 SELECT
- 查詢必須有時間範圍限制
- 結果數量有 hard limit
- regex 要先驗證
- grep 與 free SQL 都有成功與否的 artifact 可追
這很值得實務團隊抄作業。因為很多人一想到 agentic SOC,就先腦補成「讓模型自己亂翻 SIEM」。但這篇的訊息剛好相反:真正能落地的,不是最大自由度,而是最小但夠用的查詢自由。
實驗其實很簡單,但已經足夠打臉 baseline
作者的資料集與情境不算大。他們從 AIT Log Data Set V1.1 抽出兩個 30 分鐘視窗:
- malicious subset:包含真實攻擊時段
- benign subset:同一台 web server 在非攻擊時段的正常流量
兩組資料都假設一個 context 很弱的 anomaly-based alert 當起點,也就是 alert 本身不會告訴你是哪個 CVE、哪條 signature、哪個 kill chain,只是提醒你「這裡怪怪的」。這其實很貼近很多現場告警的痛點:alert 很多,但上下文很少。
baseline 也因此設得很合理:直接把 alert + overview 丟給 Verdict LLM,看它能不能自己猜對。結果很殘酷——在 malicious subset 上,baseline accuracy 是 0%。
也就是說,如果你只是把一條貧血 alert 丟給模型問「這是不是惡意」,它大概率不是在判斷,而是在猜。
加上 workflow 之後,差距不是小修小補,是整個像換系統
真正有意思的是 workflow 加進來後的結果。作者測了 GPT-5-mini、Claude 3 Haiku、Qwen3:30B、Gemma 3:27B。雖然不同模型行為差異很大,但在 malicious subset 上,workflow 的表現整體明顯提升:
- GPT-5-mini:100% 正確判成 malicious
- Qwen3:30B:95%
- Claude 3 Haiku:94%
- Gemma 3:27B:81%
更關鍵的是 benign subset 幾乎沒有亂報成 malicious。作者明講,他們寧可讓模型多給一些 uncertain,也不要輕易把 benign 誤判成 malicious,或更糟,把 malicious 誤判成 benign。
這其實碰到 SOC automation 裡一個很成熟、但在 AI 場景常被忘掉的設計原則:
如果你的目標是幫 analyst 節省時間,而不是完全取代 analyst,那降低錯判風險通常比追求百分之百自動結案更重要。
這篇 paper 的 workflow 正是在做這件事:先把一部分明顯案件處理掉,把真正需要人盯的 uncertainty 留給 analyst。
它最值得學的,不只是 accuracy,而是整個 reasoning 形狀
我覺得這篇最值錢的地方,不只是「有 query 的 agent 比沒 query 的 LLM 準」,而是它把 investigation 做成一種比較對的 reasoning shape。
傳統 prompt-only 的錯法通常是這樣:
- 模型太早下結論
- 把缺失的 context 腦補成 evidence
- 對高 volume logs 沒有真正可操作的搜尋路徑
這篇 workflow 則強迫模型走另一條路:
- 先看 overview,知道有哪些 signal 可以追
- 再挑查詢,縮小資料面
- 再抽證據,確認 source、path、failure pattern
- 最後才給 verdict
這背後的思想很像在對 LLM 說:你不是先知,你是值班分析員;先查,再說。
當然,它離 production-ready 還很遠
作者自己也很誠實。這不是一篇把 agentic SOC 已經做完的論文,而是一個 proof of concept。限制不少:
- 資料集規模有限,只測單一攻擊情境
- alert 是研究者假設出來的,不是完整真實告警流
- 可用 query 種類偏少
- 只做 early-stage alert investigation,不是整個 incident lifecycle
- 還沒正面處理 prompt injection 與對抗操弄問題
尤其最後一點非常重要。把 LLM 放進 SOC 流程,不代表只要 query guardrails 做好就沒事。只要它要讀 logs、summary、external artifacts,就要考慮:
- 資料內容本身會不會成為 prompt injection 載體
- summary 與 evidence 萃取有沒有 laundering 風險
- 不同 LLM component 之間的結論會不會互相放大偏誤
所以這篇不是在告訴你「SOC 可以放心交給 agent」;它比較像是在說:如果你真的想做這件事,至少該從有 evidence path、有限工具、可追 artifact 的 workflow 開始,而不是直接讓一顆模型坐上判官位子。
對 sectools.tw 讀者最值得帶走的幾個實務點
- 別把 alert triage 當成純分類題。 很多真正有價值的改善,不是換更大模型,而是讓模型會查資料。
- 工具使用要先收斂。 SOC agent 最危險的不是不會查,而是查太自由、查到不可控。
- uncertain 不一定是壞事。 在高風險場景,保守地把模糊案件留給 analyst,通常比自信亂判更健康。
- artifact 很重要。 你若想調 prompt、追錯誤、驗證流程,就不能只看最後 verdict,還要保留 query success、rows、grep results、summary 等中間產物。
- query design 本身就是安全控制。 預先定義高訊號查詢,比讓模型無限制自由探索更接近可治理的 automation。
我的看法:這篇真正補到的是「證據建構」這一層
很多 AI for SOC 的論文與產品,最容易讓人誤會的地方,就是把 investigation 說得像問答系統升級版:丟問題,拿答案。但這篇 paper 比較像回到現場常識:資安調查本來就不是先有答案,再去找理由;而是先把資料脈絡建起來,答案才慢慢浮出來。
所以它真正補到的,不只是 agentic workflow,而是LLM 在安全營運裡應該扮演什麼角色:不是替代所有分析,而是幫你把原本散在多個 log source 的初步證據先收斂成可判讀的形狀。
結語
如果要把這篇論文濃縮成一句話,我會寫成這樣:
很多 SOC automation 真正缺的,不是再多一個會下 verdict 的模型,而是先有一條能把薄弱 alert 慢慢查成有證據結論的 investigation path。
Towards Agentic Investigation of Security Alerts 值得看的地方,不在於它已經把 agentic SOC 做到完美,而在於它把一個很容易被講成魔法的題目,硬是拉回到比較樸素、也比較可靠的工程問題:查什麼、怎麼查、查完怎麼收斂、什麼時候才配下結論。
如果你正在做 SOC copilot、alert enrichment、SIEM assistant、IR triage agent,這篇 paper 最實用的提醒可能是:先不要急著讓模型像分析師那樣下判斷,先讓它像分析師那樣找證據。
