Skip to main content
EventCorrelator 實作即時、基於模式的多步驟攻擊偵測。它不是孤立地評估事件,而是維護一個滑動視窗緩衝區,並套用 7 個模式偵測器來識別跨越多個事件的攻擊鏈。

架構

Events ──> [Sliding Window Buffer] ──> [Pattern Detectors] ──> CorrelationResult
                Max 1000 events              7 patterns
                5-minute window
關聯器在 DetectAgent 內部執行,產生 CorrelationPattern 物件,在 AnalyzeAgent 中提升信心評分。

滑動視窗緩衝區

參數
最大事件數1,000
時間視窗5 分鐘
淘汰策略超過 5 分鐘的事件被丟棄
分組方式事件按來源 IP 分組進行模式匹配

7 種關聯模式

1. 暴力破解偵測

欄位
MITRE ATT&CKT1110
偵測邏輯來自同一來源 IP 的認證失敗
視窗60 秒
門檻5 個事件
信心值基礎 60 + 每多一個事件 +8(最高 100)
範例30 秒內來自 203.0.113.50 的 15 次 SSH 登入失敗嘗試

2. 埠掃描偵測

欄位
MITRE ATT&CKT1046
偵測邏輯同一 IP 連線至不同的目的埠
視窗60 秒
門檻10 個不同的埠
信心值基礎 65 + 每多一個埠 +3(最高 100)
範例單一 IP 探測埠 22、80、443、3306、5432、6379、8080、8443、9200、27017

3. 橫向移動

欄位
MITRE ATT&CKT1021
偵測邏輯連線至不同的內部(RFC 1918)IP 位址
視窗5 分鐘
門檻3 個不同的內部 IP
信心值基礎 55 + 每多一個 IP +10(最高 100)
範例受損的主機連線至 192.168.1.10、192.168.1.20、192.168.1.30

4. 資料外洩

欄位
MITRE ATT&CKT1041
偵測邏輯向外部 IP 進行大量出站資料傳輸
視窗單一事件評估
門檻10 MB
信心值基礎 50 + 每多 10 MB +15(最高 100)
範例透過 curl 向外部 IP 上傳 45 MB

5. 後門安裝

欄位
MITRE ATT&CKT1059
偵測邏輯檔案寫入 + 處理程序建立 + 出站網路連線的組合
視窗5 分鐘
門檻3 種事件類型全部出現
信心值基礎 55,隨著額外關聯事件增加(最高 100)
範例檔案寫入 /tmp/payload,新處理程序衍生,出站連線至 C2 伺服器

6. 權限提升

欄位
MITRE ATT&CKT1548
偵測邏輯setuid/setgid/sudo/pkexec 事件
視窗5 分鐘
門檻1 個或更多事件
信心值基礎 50 + 每多一個事件 +15(最高 100)
範例多次 sudo 調用後接 setuid 系統呼叫

7. 嚴重性升級

欄位
MITRE ATT&CK—(複合模式)
偵測邏輯來自同一來源的低或中嚴重性事件累積
視窗5 分鐘
門檻同一嚴重等級 3 個事件
信心值基礎 40 + 每多一個事件 +10(最高 100)
提升規則3+ 低等級事件提升為中等級;3+ 中等級事件提升為高等級

關聯結果

當模式匹配時,關聯器產生包含以下內容的 CorrelationResult
interface CorrelationResult {
  pattern: string;          // 例如 "brute_force"
  mitreId: string;          // 例如 "T1110"
  confidence: number;       // 0-100
  relatedEvents: string[];  // 鏈中的事件 ID
  sourceIp: string;         // 共同來源 IP
  description: string;      // 人類可讀的摘要
}
AnalyzeAgent 套用每個關聯事件 +5 的關聯加成,最高加至最終信心評分的 +25。
關聯引擎在記憶體中運作。重新啟動 Guard 引擎會清除滑動視窗緩衝區。當連接 Manager 伺服器時,可使用跨工作階段的持久化關聯。