TechniqueRAG 論文閱讀分析:用 RAG 與大型語言模型標註 CTI 中的 ATT&CK 技術

論文基本資訊

  • 論文標題:TechniqueRAG: Retrieval Augmented Generation for Adversarial Technique Annotation in Cyber Threat Intelligence Text
  • 來源:arXiv
  • 年份:2025
  • 作者:Ahmed Lekssays、Utsav Shukla、Husrev Taha Sencar、Md Rizwan Parvez
  • 論文連結:https://arxiv.org/abs/2505.11988
  • 主題:CTI、MITRE ATT&CK、Technique Annotation、RAG、LLM、Re-ranking

這篇 TechniqueRAG: Retrieval Augmented Generation for Adversarial Technique Annotation in Cyber Threat Intelligence Text 聚焦在一個非常典型、但實際上很難做好的任務:如何把 threat intelligence text 中描述的攻擊行為,自動對映到 MITRE ATT&CK 的 techniques 與 sub-techniques。

這件事看起來像一般的文本分類或資訊抽取,但真正困難的地方在於:ATT&CK technique 的數量多、類別長尾明顯、很多 technique 語意極接近,而且 text 裡的線索往往是隱性而非直接命名。因此,作者不是只在比一個更大的模型,而是在嘗試回答一個更根本的問題:能不能在資料極少、標註稀缺、又不想投入龐大 task-specific engineering 的情況下,把 technique annotation 做到夠準?

研究問題

作者指出,現有方法大致落在兩條路線:

  • 多類別分類:直接把 text 映射到 technique IDs
  • retrieval / ranking:根據 text 與 techniques 的語意相似度做排序

兩者各有明顯缺點:

  • 分類法依賴大量標註資料,且很容易受 class imbalance 影響
  • retrieval / ranking 法通常需要 hard-negative mining、細緻 denoising 或 domain-specific tuning

更麻煩的是,雖然 MITRE ATT&CK 定義超過 550 個 techniques / sub-techniques,但公開標註資料大約只有 10,000 筆左右。這讓任何需要大規模 supervised learning 的方法都面臨明顯瓶頸。

因此,這篇論文要回答的問題可以整理成:

  1. 如何在極少 in-domain paired data 下,建立一個仍有高 precision 的 ATT&CK technique annotation 系統?
  2. RAG 能否不是只用來問答,而是用來做 technique annotation?
  3. 若 retriever 本身不做昂貴 domain-specific training,是否能透過 LLM-based re-ranking 補足 domain precision?

方法概觀:TechniqueRAG 的三段式架構

TechniqueRAG 的整體設計很清楚,由三個核心模組組成:

  1. Retriever R
  2. LLM-based Re-ranker ℛ
  3. Generator 𝒢

整體流程可以寫成:

Input security text x
      ↓
Retriever 取回 top-K text-technique pairs
      ↓
LLM re-ranker 依 domain-specific reasoning 重排 candidate pairs
      ↓
將 query + re-ranked exemplars 組成 augmented context
      ↓
Fine-tuned generator 產生最終 technique / sub-technique annotations

這個架構的關鍵思想是:不去重訓整條 retrieval pipeline,而是保留 off-the-shelf retriever,將模型 adaptation 的重心放在 re-ranking 與 generator fine-tuning 上。

問題形式化

文中把 security texts 記為:

X = {x1, x2, ..., xn}

對應的 technique / sub-technique label space 記為:

Y = {y1, y2, ..., ym}

對一段輸入文本,其標註可以是一個 technique sequence:

𝐘 = (y1, y2, ..., yl)

其中每個 yi 屬於 Y,且 l ≤ m。作者假設有一小組 paired dataset:

D = {(x1, 𝐘1), (x2, 𝐘2), ..., (xn, 𝐘n)}

任務就是在輸入 x 的情況下,預測其對應 technique 序列 𝐘x。

這裡值得注意的是,作者不是只做單標籤設定,而是同時考慮:

  • single-label
  • multi-label
  • sub-technique-level prediction

這讓任務更接近真實 CTI annotation,而不是只做簡化版分類。

模組一:Retriever R

TechniqueRAG 的 retriever 設計刻意保持簡單。作者明確表示,由於缺乏足夠的 hard negatives、絕對 relevance labels 與 denoising data,他們不選擇重訓 retriever,而是採用 off-the-shelf retrieval。

在實驗中,retriever 使用的是:

  • BM25
  • K = 40 初始候選

對每個 query text xq,retriever 從 paired dataset 中找出 top-K 最相似的 text-technique pairs。值得注意的是,作者把 paired dataset D 同時拿來當:

  • retrieval corpus DR
  • generator 的訓練資料

但會排除 query 本身,以避免資料洩漏。

這個設計選擇其實很務實:與其在小資料上硬訓 retriever,不如用成熟且穩定的 BM25 打底,再由後面的 re-ranker 補足 domain semantics。

模組二:LLM-based Re-ranker ℛ

這篇論文最有技術味道、也最值得看的地方,就是它的 re-ranker。

作者認為,泛用型 ranking prompt(例如 RankGPT)不適合直接用在 ATT&CK technique ranking,因為這個任務有幾個特殊難點:

  • 文本中的 technique 線索常是隱性映射
  • 同一段文字可能同時涉及多個 techniques
  • sub-techniques 之間的差異可能非常細

因此,TechniqueRAG 不是只要求 LLM 幫忙「排一個順序」,而是要求它進行比較顯式、逐步的安全語意推理。作者提到三個 re-ranking 的核心要求:

1. Explicit Reasoning for Implicit Mapping

Security text 通常不會直接說出 ATT&CK ID,而是以描述行為方式呈現。例如 malware 連到 C2、使用 custom encoding 等,可能同時暗示 command-and-control 與 defense evasion。這時 re-ranker 必須做的是「從隱性行為推到 techniques」,而不是做單純表面相似度比對。

2. Balanced Consideration of Multiple Techniques

一段安全文本可能同時對應多個 techniques,因此 ranking 不該只看最像的一個,而是要平行考慮多個可能標註。這點對 multi-label setting 特別重要。

3. Fine-Grained Relevance for Sub-techniques

Technique 和 sub-technique 間存在層級關係,很多 sub-techniques 語意差異非常微妙。作者設計的 re-ranking prompt 會要求模型針對這種細粒度差異做分辨,而不是只停在 technique family 層級。

此外,為了在有限 context 中處理較多候選,作者使用 sliding window 機制,把候選 techniques 分批交給 re-ranker 處理。這點和一般 retrieval-re-ranking pipeline 的工程做法一致。

模組三:Generator 𝒢

在 re-ranked exemplars 準備好之後,TechniqueRAG 會把它們與原始 query text 組成 augmented context:

𝒞x = x ⊕ ℛx

更具體地說,這個 context 會以一種帶有分隔 token 的格式展開,例如:

[text] x1ℛ [technique] 𝐘1ℛ [text] x2ℛ [technique] 𝐘2ℛ ...

也就是把 re-ranked 的 text-technique pairs 當成 exemplars,提供給 generator 做 in-context guidance。

生成器本身使用的是:

  • 8B Ministral Instruct

並透過 LoRA 做 fine-tuning,參數包括:

  • learning rate = 1e-4
  • LoRA rank r = 8
  • α = 4
  • temperature = 0.7
  • top-p = 0.1
  • context length = 2048

訓練目標是最小化 ground-truth annotation 的 negative log-likelihood:

ℒ = - Σ_(x,𝐘x)∈D Σ_i log P𝒢(y_i,x | 𝒞x)

作者還特別強調,為了減少 hallucination,generator 的輸出會被限制在 re-ranked candidate set 所提供的範圍內。這個設計很合理,因為在 technique annotation 這種 label space 明確的任務裡,自由生成通常比受約束生成更危險。

資料與實驗設定

作者評估了三個公開 benchmark:

  • Tram:single-label
  • Procedures:single-label
  • Expert:multi-label

作者採取一個值得注意的設計:不分別訓練 technique prediction 與 sub-technique prediction 模型,而是統一訓練 sub-technique model。因為 sub-technique 標註本身已經包含更粗的 technique 資訊;做 technique-level evaluation 時,只要把 sub-technique 後綴截掉即可。

這是一個很乾淨的設計,避免重複訓練兩套模型,也更符合層級式 label space 的結構。

比較對象

作者比較的 baseline 相當完整,包含三大類:

1. Retrieval / Ranking-only Methods

  • BM25
  • Text2TTP
  • NCE
  • RankGPT

2. Direct Generation Methods

  • GPT-4
  • DeepSeek V3
  • Ministral 8B
  • 並測 direct prompting 與 CoT + self-reflection

3. Retrieval-Augmented Generation Methods

  • IntelEX
  • RAG versions of the above LLMs

因此,這篇論文不是只和幾個弱 baseline 比,而是有和 retrieval-only、direct generation、以及其他 RAG methods 正面比較。

結果一:Technique-level 表現

在 technique prediction 上,結果顯示 TechniqueRAG 整體非常強。

例如:

  • Tram 上,NCE 的 F1 為 84.22%
  • 在 label diversity 較高的 Procedures 上,TechniqueRAG 的 F1 達到 91.09%

更有意思的是,在多資料集平均之後,作者指出:

  • TechniqueRAG 平均 F1 約 80.76%
  • GPT-4o (RAG) 平均約 58.11%

這個差距相當大,顯示在此任務上,正確的架構設計比單純換更強的通用模型更重要。

結果二:Sub-technique-level 表現

在更細粒度的 sub-technique prediction 上,TechniqueRAG 的優勢同樣明顯。

例如在 Procedures dataset 上:

  • TechniqueRAG F1 = 88.11%
  • NCE F1 = 73.74%

這很重要,因為 sub-technique 區分比 technique-level 更難,TechniqueRAG 還能維持顯著優勢,代表其 re-ranking + constrained generation 的設計確實抓到了 fine-grained semantic distinctions。

結果三:Multi-label 設定特別困難

作者也清楚指出,multi-label 比 single-label 難很多。這從 Expert dataset 可明顯看出:即使是 GPT-4o,在 Procedures 上 F1 還可以到 47.91,但在 Expert 上就掉到 19.77。

TechniqueRAG 雖然也受影響,但整體表現仍然比大多數 baseline 好,顯示它在 multi-label scenario 下仍具一定穩定性。

不過作者也坦白說明,目前模型很少一次預測超過兩個 technique labels,這導致在 multi-label benchmark 上 recall 仍偏低。這點是很值得注意的限制。

Ablation:為什麼它有效?

論文的 ablation study 有兩個重點:

  • 我們的 re-ranker 本身就優於其他 ranking methods
  • 用 re-ranked exemplars 做 RAG,會讓 generative models 整體變好

作者還把 TechniqueRAG 與兩種 fine-tuning 方式比較:

  • 不帶 exemplars 的 zero-shot fine-tuning
  • 利用 CoT+Reflection 合成資料後再 fine-tune 的方法

結果顯示,TechniqueRAG 在 technique-level 與 sub-technique-level 的 F1 都最高。這說明 performance gain 並不是單純來自 fine-tuning,而是來自:

  • retriever 提供初步候選
  • re-ranker 做 domain-specific reasoning refinement
  • generator 在高品質 exemplars 上做 constrained generation

這三個模組的協同作用,才是整個方法有效的關鍵。

錯誤分析

作者對錯誤來源的分析也很有價值,主要包括:

  • under-prediction:抓到主要 technique,但漏掉同一 attack pattern 中的其他相關 techniques
  • contextual confusion:同一 tactic family 中語意接近的 techniques 容易混淆,例如 T1059.*
  • hierarchical issues:對 parent-child technique 關係掌握不穩,有時會生成無效 sub-technique IDs
  • re-ranker limitations:若 query 含混或語句複合,re-ranking 本身也可能先漏掉關鍵 techniques
  • class imbalance effects:資料集中只有 47 / 203 個 techniques 擁有超過 50 個訓練樣本,長尾問題仍非常嚴重

這些分析讓整篇論文更可信,因為作者沒有把結果包裝成問題已經解決,而是清楚指出目前系統在哪些場景下仍會失敗。

這篇論文的技術意義

TechniqueRAG 最有價值的地方,在於它提出一個相對「省資源但有效」的折衷設計:

  • 不用重訓整個 retriever
  • 不用準備大量 hard negatives
  • 不用龐大的 balanced labeled dataset
  • 只 fine-tune generation component
  • 用 LLM-based re-ranking 補 domain precision

對 CTI 這種高專業、低標註資源的場景來說,這是一個很實用的方向。它不試圖追求最豪華的 pipeline,而是思考:在現實資源條件下,哪一段最值得投資 adaptation?

重點整理

  • TechniqueRAG 聚焦在 CTI text 中的 MITRE ATT&CK technique / sub-technique annotation。
  • 方法由三個模組構成:off-the-shelf retriever、LLM-based re-ranker、fine-tuned generator。
  • 核心創新在於:不重訓 retriever,而用 domain-specific re-ranking 與 constrained generation 提升 precision。
  • re-ranker 透過顯式推理處理隱性 technique mapping、多 technique 共存與 sub-technique 細粒度差異。
  • generator 只用少量 paired data fine-tune,並限制輸出在 re-ranked candidate 範圍中,以降低 hallucination。
  • 在多個 benchmark 上,TechniqueRAG 優於 retrieval-only、direct generation 與其他 RAG baselines。
  • 在 Procedures dataset 上,Technique-level F1 可達 91.09%,sub-technique-level F1 可達 88.11%。

Takeaway

這篇論文最值得記住的一點,是它清楚證明了:在 ATT&CK technique annotation 這種高專業、低標註資源的 CTI 任務上,LLM 最有價值的角色不一定是直接做最終分類,而是透過 re-ranking 與受約束的生成,提升 domain-specific precision。

TechniqueRAG 的成功,不是因為它單純用了 RAG,而是因為它把 RAG 的使用位置放對了:retriever 先縮小候選空間、LLM 再做安全語意推理與重排,最後生成器在受控範圍內輸出 technique annotations。對研究者與工程實作者來說,這是一個很值得參考的設計:在資源受限的專業領域,合理的模組分工比盲目追求更大的模型更重要。

免責聲明

本文由 AI 整理與撰寫,內容主要依據公開論文、技術文件與可取得之研究資料進行彙整、解讀與摘要。儘管已盡力確保內容之完整性與可讀性,仍可能因模型理解限制、資料來源差異或語意轉譯過程而存在疏漏、不精確或更新延遲之處。本文內容僅供研究交流與知識分享參考,實際技術細節、實驗設定與最終結論,仍應以原始論文、官方文件及作者公開資料為準。

You may also like