<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Detection on Tarragon</title><link>https://tarrragon.github.io/blog/tags/detection/</link><description>Recent content in Detection on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Mon, 18 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/detection/index.xml" rel="self" type="application/rss+xml"/><item><title>Splunk</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/</guid><description>&lt;p>Splunk 是 SIEM（Security Information and Event Management）的事實標準、大企業 / 金融 / 政府的 SOC 主流選擇。2024 年被 Cisco 收購、產品線維持獨立發展。它跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &amp;#43; EDR &amp;#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security&lt;/a> / &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &amp;#43; CSPM &amp;#43; CWS &amp;#43; AAP &amp;#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security&lt;/a> / &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &amp;#43; SOAR &amp;#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &amp;#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations&lt;/a> 的差異在 &lt;em>計費模型 + ecosystem maturity + detection content 深度&lt;/em>、偵測能力本身相近 — Splunk 的 ingestion-based pricing 是業界最貴的 SIEM 計費模式、但 detection content 跟 SOC tooling ecosystem 也是最成熟的。&lt;/p>
&lt;h2 id="服務定位">服務定位&lt;/h2>
&lt;p>Splunk 的核心定位是 &lt;em>任意 log source 的統一查詢平台&lt;/em>、SIEM 是其上的 &lt;em>application layer&lt;/em>（Splunk Enterprise Security app）。底層是 &lt;em>Splunk Enterprise&lt;/em>（自管）或 &lt;em>Splunk Cloud Platform&lt;/em>（SaaS）、頂層產品包含：&lt;em>Enterprise Security (ES)&lt;/em> — premium SIEM app、含 correlation rule、Risk-Based Alerting、ITSI 整合；&lt;em>SOAR&lt;/em>（前 Phantom）— security orchestration / automated response；&lt;em>UBA&lt;/em>（User Behavior Analytics）— ML-based anomaly detection。&lt;/p>
&lt;p>跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &amp;#43; EDR &amp;#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security&lt;/a> 比、Splunk 走 &lt;em>deeper but more expensive&lt;/em> — SPL 比 KQL / EQL 表達力更強、detection content（Splunk Security Content 公開 YAML rules）覆蓋廣、ES app 的 Risk-Based Alerting 是業界先驅；但 ingestion-based pricing 在 TB/day 級別會痛。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &amp;#43; CSPM &amp;#43; CWS &amp;#43; AAP &amp;#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security&lt;/a> 比、Splunk 走 &lt;em>security-first&lt;/em>、Datadog Cloud SIEM 是 &lt;em>observability platform 加上 security view&lt;/em>；Datadog 適合 cloud-native + 中等規模、Splunk 適合 enterprise + 跨 on-prem。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &amp;#43; SOAR &amp;#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &amp;#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations&lt;/a>（前 Chronicle）比、Google Security Ops 走 &lt;em>fixed-price by data、massive scale&lt;/em>、Splunk 是 &lt;em>per-GB 累進&lt;/em>、超大規模反而 Google 划算。&lt;/p></description><content:encoded><![CDATA[<p>Splunk 是 SIEM（Security Information and Event Management）的事實標準、大企業 / 金融 / 政府的 SOC 主流選擇。2024 年被 Cisco 收購、產品線維持獨立發展。它跟 <a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a> / <a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a> / <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a> 的差異在 <em>計費模型 + ecosystem maturity + detection content 深度</em>、偵測能力本身相近 — Splunk 的 ingestion-based pricing 是業界最貴的 SIEM 計費模式、但 detection content 跟 SOC tooling ecosystem 也是最成熟的。</p>
<h2 id="服務定位">服務定位</h2>
<p>Splunk 的核心定位是 <em>任意 log source 的統一查詢平台</em>、SIEM 是其上的 <em>application layer</em>（Splunk Enterprise Security app）。底層是 <em>Splunk Enterprise</em>（自管）或 <em>Splunk Cloud Platform</em>（SaaS）、頂層產品包含：<em>Enterprise Security (ES)</em> — premium SIEM app、含 correlation rule、Risk-Based Alerting、ITSI 整合；<em>SOAR</em>（前 Phantom）— security orchestration / automated response；<em>UBA</em>（User Behavior Analytics）— ML-based anomaly detection。</p>
<p>跟 <a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a> 比、Splunk 走 <em>deeper but more expensive</em> — SPL 比 KQL / EQL 表達力更強、detection content（Splunk Security Content 公開 YAML rules）覆蓋廣、ES app 的 Risk-Based Alerting 是業界先驅；但 ingestion-based pricing 在 TB/day 級別會痛。跟 <a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a> 比、Splunk 走 <em>security-first</em>、Datadog Cloud SIEM 是 <em>observability platform 加上 security view</em>；Datadog 適合 cloud-native + 中等規模、Splunk 適合 enterprise + 跨 on-prem。跟 <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a>（前 Chronicle）比、Google Security Ops 走 <em>fixed-price by data、massive scale</em>、Splunk 是 <em>per-GB 累進</em>、超大規模反而 Google 划算。</p>
<p>關鍵張力：<em>ingestion-based 計費</em> ↔ <em>偵測覆蓋率</em> 是 Splunk 客戶最大的 trade-off。為了省錢選擇性 ingest log（只進 Windows Event Log 不進 Linux auth log、只進 prod 不進 dev）、結果 Storm-0558 / Uber MFA 那種跨來源 correlation 抓不到。要看清楚自己 <em>容忍多少偵測盲點換多少預算</em>。</p>
<h2 id="本章目標">本章目標</h2>
<p>讀完本頁、讀者能判斷：</p>
<ol>
<li>Splunk 在 SOC stack 中承擔哪一段（log aggregation / SIEM / SOAR / UBA）、哪些要外接（<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a> 管 service token、IdP log 來源治理）</li>
<li>SPL / correlation rule / detection content 的 ownership 設計（誰寫、誰 review、誰調 false positive）</li>
<li>Ingestion pricing trap 的應對（log priority tiering、Cribl / Cribl Stream 做 pre-filter、Splunk SmartStore 把冷資料丟 S3）</li>
<li>何時用 Splunk、何時走 Elastic / Datadog / Google Security Ops 的取捨</li>
</ol>
<h2 id="最短判讀路徑">最短判讀路徑</h2>
<p>判斷 Splunk deployment 是否健康、最少看四件事：</p>
<ul>
<li><strong>誰能改 correlation rule</strong>：Splunk admin / ES admin / KV store admin 的人數、SPL search 跟 saved search 是否走版控（Git → <code>git-fusion</code> / Splunk Cloud Versioned Configs）、rule change 是否經 PR review</li>
<li><strong>Ingestion 治理</strong>：哪些 source 進 Splunk（IdP audit log / cloud control plane log / endpoint log / network log / app log）、是否有 <em>log priority tier</em>（critical / standard / archive）、Cribl Stream 是否在前面做 pre-filter / routing</li>
<li><strong>Detection content coverage</strong>：Splunk Security Content（<a href="https://research.splunk.com/">公開 YAML rule library</a>）有多少 enabled、是否跟 MITRE ATT&amp;CK 對照、自家 custom rule 是否補 organization-specific anti-pattern</li>
<li><strong>Alert quality / SOC handoff</strong>：alert volume per day、SOC analyst triage time、false positive rate、alert 是否進 SOAR playbook 自動處理低風險、跟 <a href="/blog/backend/08-incident-response/" data-link-title="模組八：事故處理與復盤" data-link-desc="用 IR 領域詞彙建問題節點、以服務級案例庫累積事故脈絡，先建概念與案例庫再進實作交接">8 incident response</a> 的 routing 是否定義</li>
</ul>
<p>四件事任一缺失、就是 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">Detection Coverage and Signal Governance</a> 邊界的待補項目。</p>
<h2 id="日常操作與決策形狀">日常操作與決策形狀</h2>
<p><strong>Ingestion architecture</strong>：log 進 Splunk 三種路徑 — <em>Universal Forwarder</em> / <em>Heavy Forwarder</em>（agent-based，自管 host）、<em>HTTP Event Collector (HEC)</em>（push log via HTTP endpoint、SaaS / serverless workload 預設）、<em>Splunk Add-on for 各 cloud / SaaS</em>（cloud-native log pull）。production 通常混用：endpoint 用 Universal Forwarder、cloud control plane 用 Add-on（AWS / GCP / Azure / Okta）、自家 app 用 HEC。在前面接 <em>Cribl Stream</em> 做 routing / filtering / sampling 是大型 deployment 的標準補位。</p>
<p><strong>SPL（Search Processing Language）</strong>：類 Unix pipe 的 <code>|</code> 串接（<code>index=ids sourcetype=auth | stats count by user | where count &gt; 100</code>）、表達力強但學習曲線陡。SPL 是 first-class concept、不只是查詢工具 — saved search 變 correlation rule、scheduled search 變 alert、accelerated search 變 data model 加速。SPL 寫得好不好直接決定 <em>偵測規則品質 + 查詢成本</em>。</p>
<p><strong>Correlation rule / Notable Event</strong>：ES app 把 high-confidence finding 轉成 <em>Notable Event</em>、進 Incident Review queue。Correlation rule 的反例是 <em>single-event alert</em>（看到一個 SSH brute force attempt 就 alert、SOC analyst 一天看 10000 個沒意義）— production rule 應該是 <em>time-bounded aggregation</em>（過去 5min 內 100 個 brute force from same IP）+ <em>cross-source correlation</em>（brute force IP 同時出現在 cloud control plane access）。</p>
<p><strong>Detection content lifecycle</strong>：Splunk Security Content 是 Splunk 維護的 OSS detection rule library、YAML format、跟 MITRE ATT&amp;CK 對應。組織通常 <em>先 import 全部 baseline、再選擇性 disable noisy 規則 + 新增 organization-specific 規則</em>。Rule change 走 PR review、staging tenant 跑 24-48hr 觀察 false positive curve 才 promote 到 production。對應 <a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle</a> 的章節原則。</p>
<p><strong>Risk-Based Alerting (RBA)</strong>：ES app 7.0+ 引入、給每個 user / asset 累積 <em>risk score</em>（取代逐 finding alert）、累積到 threshold 才 alert。處理 alert fatigue 的工程化做法：5 個 low-confidence signal 加總超過 threshold 比單一 high-confidence alert 更接近真實 attack pattern。對應 <a href="/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/" data-link-title="7.B10 Alert Fatigue and Signal Quality" data-link-desc="建立告警疲勞治理方法，讓訊號品質、分級一致性與處置效率同步提升">Alert Fatigue and Signal Quality</a>。</p>
<p><strong>SOAR integration</strong>：Splunk SOAR（前 Phantom）接 alert + playbook 自動執行 — 例如 leaked credential 自動 rotate（拉 <a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a> API）、suspect IP 自動加 firewall block（拉 <a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a> custom rule）、suspect user 自動 force MFA re-enroll（拉 <a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a> API）。playbook 進版控、定期 dry-run、不能黑箱 production fire-and-forget。</p>
<p><strong>Ingestion pricing 治理</strong>：Splunk 按 ingestion volume（GB/day）計費、TB-scale deployment 年費千萬美元級別。實務治理：<em>tier 1 log</em>（IdP / cloud control plane / payment processor / DB audit）進 Splunk hot index、<em>tier 2 log</em>（app log / web access log）按 sampling / filtering 進 Splunk、<em>tier 3 log</em>（debug / verbose）走 <a href="https://docs.splunk.com/Documentation/Splunk/latest/Indexer/AboutSmartStore">SmartStore</a> 到 S3 / GCS 冷儲存、或繞過 Splunk 直接打到 Elastic / data lake。Cribl Stream 在 forwarder 前 pre-filter 是業界標準作法、可省 30-50% ingestion cost。</p>
<p><strong>SmartStore 跟冷熱分離</strong>：SmartStore 把 indexer 的 <em>warm + cold bucket</em> 放到 S3 / Azure Blob / GCS、indexer 只保留 hot data + cache。意義是 <em>retention 從幾個月延長到幾年但 cost 不線性漲</em>。production deployment 幾乎都該開、不開等於每年砸錢買 EBS。</p>
<h2 id="核心取捨表">核心取捨表</h2>
<table>
  <thead>
      <tr>
          <th>取捨維度</th>
          <th>Splunk</th>
          <th>Elastic Security</th>
          <th>Datadog Security</th>
          <th>Google Security Operations</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>計費模型</td>
          <td>Ingestion-based（GB/day、累進）</td>
          <td>Resource-based（node / cluster size）</td>
          <td>Per-host + per-event（events/month）</td>
          <td>Fixed price by data tier（PB-scale 划算）</td>
      </tr>
      <tr>
          <td>學習曲線</td>
          <td>陡 — SPL 表達力強但 idiom 多</td>
          <td>中 — KQL / EQL 較直觀</td>
          <td>緩 — 沿用 Datadog observability 語法</td>
          <td>中 — YARA-L 是新語法但結構清楚</td>
      </tr>
      <tr>
          <td>部署模型</td>
          <td>Self-hosted (Splunk Enterprise) / SaaS (Cloud)</td>
          <td>Self-hosted / Elastic Cloud / Serverless</td>
          <td>SaaS only</td>
          <td>SaaS only（Google Cloud）</td>
      </tr>
      <tr>
          <td>Detection content</td>
          <td>Splunk Security Content（最豐富、社群活躍）</td>
          <td>Elastic Prebuilt rules + Sigma 支援</td>
          <td>Datadog Security Rules（中等）</td>
          <td>Google YARA-L 內建 + Google threat intel</td>
      </tr>
      <tr>
          <td>SOAR / Response</td>
          <td>Splunk SOAR（前 Phantom、業界先驅）</td>
          <td>內建 Cases + Endpoint response（Elastic Defend）</td>
          <td>Workflow Automation（基本）</td>
          <td>SOAR 內建（前 Siemplify）</td>
      </tr>
      <tr>
          <td>跨來源 correlation</td>
          <td>強 — data model + SPL 支撐</td>
          <td>強 — EQL sequence + Lucene</td>
          <td>中 — log + metrics + trace 同 plane</td>
          <td>強 — UDM normalization + cross-tenant</td>
      </tr>
      <tr>
          <td>Multi-cloud</td>
          <td>強 — Add-on 覆蓋三大雲</td>
          <td>強 — Beats / Agent 跨雲</td>
          <td>強 — Datadog Agent 跨雲</td>
          <td>GCP-first、跨雲靠 Forwarder</td>
      </tr>
      <tr>
          <td>適合場景</td>
          <td>Enterprise + 跨 on-prem / 多雲、預算允許</td>
          <td>OSS-friendly、中大型、Elastic stack 已用</td>
          <td>Cloud-native、observability 已用 Datadog</td>
          <td>超大規模 ingestion、Google 雲 + 多雲 SOC</td>
      </tr>
      <tr>
          <td>退場成本</td>
          <td>高 — SPL / detection content / dashboard 量多</td>
          <td>中 — Sigma / Lucene 較可移植</td>
          <td>中</td>
          <td>中</td>
      </tr>
  </tbody>
</table>
<p>選 Splunk 的核心訴求：<em>Enterprise scale + 跨 on-prem + detection content 跟 SOC tooling ecosystem 成熟</em>、且能投入預算（千萬美元級別 license + Cribl pre-filter + SmartStore 冷儲存治理）+ 有 SOC team 維護 correlation rule 跟 SOAR playbook。中等規模 cloud-native 直接走 Datadog / Google Security Ops 更划算。</p>
<h2 id="進階主題">進階主題</h2>
<p><strong>Enterprise Security app 的 Risk-Based Alerting</strong>：RBA 把「事件 → alert」改成「事件 → risk score → 累積 → alert」、是 alert fatigue 的工程化解法。實作要決定 <em>risk decay window</em>（多久後 risk score 衰減）、<em>risk attribution</em>（同一台 EC2 上多 user 的 risk 怎麼分）、<em>per-asset vs per-user threshold</em>。配對 <a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/uber-2022-mfa-fatigue/" data-link-title="7.R7.1.1 Uber 2022：MFA 疲勞與內部工具擴散" data-link-desc="從社交工程到內部工具存取，拆解身分流程與權限邊界的失效點">Uber 2022 MFA Fatigue</a> 的 lesson：單一 MFA fail 不該 alert、5min 內 50 個 fail + 新裝置 + 異常地理就是 high risk。</p>
<p><strong>Common Information Model (CIM) + Data Model</strong>：Splunk CIM 把不同 source 的欄位 normalize 到統一 schema（authentication / network_traffic / web 等 data model）。意義是 SPL 跨 source 寫一次、不用為 Okta log / Azure AD log / CrowdStrike log 各寫一份。CIM 配合 Add-on 自動 mapping、organization 寫 custom source 需要自己定 CIM mapping。</p>
<p><strong>Multi-tenant deployment</strong>：MSSP / 大型集團多 BU 共用一個 Splunk 部署、用 <em>index</em>（隔離 data）+ <em>role / capability</em>（隔離 access）+ <em>App</em>（隔離 dashboard / search）三層。注意 <em>Splunk admin</em> 在跨 tenant 場景是高權限角色、應該走 break-glass 流程 + audit。</p>
<p><strong>Cisco 整合（2024+）</strong>：Cisco 收購後 Splunk 跟 Cisco XDR / Talos threat intel / Cisco Secure Endpoint 整合加速。對 Cisco-heavy 環境是 ecosystem 一致性增加；對非 Cisco 環境暫時影響有限、但長期 roadmap 會有 Cisco-specific 加值。</p>
<h2 id="排錯與失敗快速判讀">排錯與失敗快速判讀</h2>
<ul>
<li><strong>Alert volume 爆炸 / SOC 看不完</strong>：correlation rule 寫成 single-event alert、或 false positive baseline 沒調 — 用 RBA 改 risk-based、staging tenant 跑 48hr 觀察再 promote</li>
<li><strong>Detection coverage 出事故時才發現缺</strong>：critical log source 沒進 Splunk（為了省錢）— 補回 tier 1 log priority、用 Cribl Stream 對 tier 2 / 3 做 sampling 而非整批不 ingest</li>
<li><strong>Ingestion cost 暴衝</strong>：新 source 加入沒 review、debug log 直接打進 Splunk — Cribl Stream 前置 + license usage dashboard alert + indexer ingestion quota</li>
<li><strong>SPL search 慢 / 卡 search head</strong>：full-fidelity search on 1TB raw event、沒用 data model acceleration — 改用 accelerated data model、限定 time range、用 <code>tstats</code> 而非 <code>stats</code></li>
<li><strong>Correlation rule false positive 多</strong>：rule 寫得太寬、env-specific noise 沒 tune — staging tenant 跑 1 週統計 FP、tune threshold、加 lookup table 排除已知合法 source</li>
<li><strong>SOAR playbook 黑箱 fire-and-forget</strong>：自動 disable account 結果誤殺 CEO — playbook 走 <em>approval gate</em> for high-impact action、defaults to <em>containment</em> not <em>deletion</em></li>
<li><strong>Splunk admin 太多 / 沒 break-glass</strong>：日常運維用 admin token、admin compromise blast radius 太大 — 收 admin 角色、改 power user + 特定 capability、break-glass 走 <a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a></li>
</ul>
<h2 id="何時改走其他服務">何時改走其他服務</h2>
<table>
  <thead>
      <tr>
          <th>需求形狀</th>
          <th>改走</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>OSS-friendly / 預算敏感</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a></td>
      </tr>
      <tr>
          <td>Cloud-native + observability 已用</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a></td>
      </tr>
      <tr>
          <td>超大規模 ingestion + Google 雲</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></td>
      </tr>
      <tr>
          <td>DLP / sensitive data discovery</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a></td>
      </tr>
      <tr>
          <td>Endpoint detection 為主</td>
          <td>CrowdStrike Falcon / Microsoft Defender for Endpoint</td>
      </tr>
      <tr>
          <td>Pre-filter / log routing</td>
          <td>Cribl Stream（前置 forwarder、不是替代 SIEM）</td>
      </tr>
      <tr>
          <td>Incident routing</td>
          <td><a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a></td>
      </tr>
  </tbody>
</table>
<h2 id="不在本頁內的主題">不在本頁內的主題</h2>
<ul>
<li>SPL 完整語法 reference、saved search 跟 macro 進階用法</li>
<li>Splunk Cloud Platform vs Splunk Enterprise 的功能對照細節</li>
<li>Splunk Observability Cloud（前 SignalFx 收購、跟 Datadog 直接競爭、屬 observability 不屬 security）</li>
<li>ITSI（IT Service Intelligence）— 屬 ITSM / observability、不在資安範圍</li>
<li>SOAR playbook 的具體實作（Phantom Python SDK）</li>
</ul>
<h2 id="案例回寫">案例回寫</h2>
<p>Splunk 在 07 案例庫沒有直接 vendor-level 事件、但所有 detection-related case 都是 SIEM 偵測覆蓋率的對照：</p>
<table>
  <thead>
      <tr>
          <th>案例</th>
          <th>跟 Splunk 的關係（對照啟示）</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/uber-2022-mfa-fatigue/" data-link-title="7.R7.1.1 Uber 2022：MFA 疲勞與內部工具擴散" data-link-desc="從社交工程到內部工具存取，拆解身分流程與權限邊界的失效點">Uber 2022 MFA Fatigue</a></td>
          <td>MFA 請求密度應是 Splunk correlation rule first-class signal、5min window count &gt; N 直接 alert + RBA 升級高風險 user score</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/microsoft-storm-0558-2023-signing-key-chain/" data-link-title="7.R7.1.5 Microsoft Storm-0558 2023：簽章金鑰鏈與郵件存取" data-link-desc="從簽章金鑰保護失效到雲端郵件存取，拆解身分信任鏈的關鍵控制點">Microsoft Storm-0558 Signing Key Chain</a></td>
          <td>跨租戶 token 異常驗證需 Splunk Add-on for Azure AD + cloud control plane log 同時 ingest、跨來源 correlation 才能秒級偵測</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/snowflake-2024-credential-abuse/" data-link-title="7.R7.4.2 Snowflake 2024：憑證濫用與資料竊取" data-link-desc="外洩憑證與 MFA 缺口如何在資料平台形成高風險外送事件">Snowflake 2024 Credential Abuse</a></td>
          <td>資料平台 query volume + 跨 schema scan + 來源 IP 異常的複合 correlation rule、不只看 audit log 也要 query metrics correlation</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/supply-chain/solarwinds-2020-sunburst/" data-link-title="7.R7.2.1 SolarWinds 2020：更新鏈被濫用" data-link-desc="合法更新流程遭植入後，攻擊者如何長期潛伏與橫向擴散">SolarWinds 2020 Sunburst</a></td>
          <td>簽章驗證通過但 runtime 行為異常需 endpoint log + network log correlation、不靠 IoC-only 規則</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle (section)</a></td>
          <td>Splunk Security Content + 自家 custom rule 走 propose → staging tune → promote → review 的工程 lifecycle、不是 console 直改</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/" data-link-title="7.B10 Alert Fatigue and Signal Quality" data-link-desc="建立告警疲勞治理方法，讓訊號品質、分級一致性與處置效率同步提升">Alert Fatigue and Signal Quality (section)</a></td>
          <td>RBA 是工程化解 alert fatigue、不是「忽略低風險」、要設 risk decay + threshold tuning lifecycle</td>
      </tr>
  </tbody>
</table>
<h2 id="下一步路由">下一步路由</h2>
<ul>
<li>上游：<a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a>、<a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle</a></li>
<li>平行：<a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a>、<a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a>、<a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></li>
<li>下游：<a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a>（DLP signal 進 Splunk）</li>
<li>跨類：<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a>（IdP log source）、<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">HashiCorp Vault</a>（SOAR playbook 拉 API）、<a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a>（WAF log + auto-block）</li>
<li>跨模組：<a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a>（Notable Event → IR routing）、<a href="/blog/backend/04-observability/" data-link-title="模組四：可觀測性平台" data-link-desc="整理 log、metric、trace、dashboard 與 alert 的後端操作實務">4 observability</a>（log pipeline 共用）</li>
<li>官方：<a href="https://docs.splunk.com/">Splunk Documentation</a></li>
</ul>
]]></content:encoded></item><item><title>Elastic Security</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/elastic-security/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/elastic-security/</guid><description>&lt;p>Elastic Security 是 Elastic Stack（Elasticsearch + Kibana + Beats / Agent）上的 SIEM + EDR + Cloud Security 套件、OSS 起源、現屬 Elastic 商業版的 Solution。它跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &amp;#43; indexer &amp;#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk&lt;/a> / &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &amp;#43; CSPM &amp;#43; CWS &amp;#43; AAP &amp;#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security&lt;/a> / &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &amp;#43; SOAR &amp;#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &amp;#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations&lt;/a> 的差異在 &lt;em>計費模型 + 查詢語言模型 + ecosystem 開放度&lt;/em>、偵測能力本身相近 — Elastic 走 &lt;em>resource-based pricing&lt;/em>（按 cluster size 而非 ingestion volume）、且提供 KQL / EQL / Lucene / ES|QL 四種互補的查詢語言。&lt;/p>
&lt;h2 id="服務定位">服務定位&lt;/h2>
&lt;p>Elastic Security 的核心定位是 &lt;em>Elastic Stack 上的 security solution&lt;/em>、底層是 &lt;em>Elasticsearch&lt;/em>（資料層）+ &lt;em>Kibana&lt;/em>（查詢與 UI 層）+ &lt;em>Fleet / Elastic Agent&lt;/em>（採集層）、頂層產品分三條：&lt;em>Elastic SIEM&lt;/em>（log aggregation + detection rule + Case + Timeline）、&lt;em>Elastic Defend&lt;/em>（前 Endgame 收購而來、EDR + endpoint protection、跟 CrowdStrike / SentinelOne 同層）、&lt;em>Elastic Cloud Security&lt;/em>（CSPM + CWP、雲端資源 misconfig 與 workload 防護）。&lt;/p>
&lt;p>跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &amp;#43; indexer &amp;#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk&lt;/a> 比、Elastic 走 &lt;em>OSS-friendly + resource-based pricing&lt;/em> — TB-scale ingestion 不直接漲費用（要 scale node 但邊際成本遠低於 Splunk per-GB 累進）、Sigma rule 社群可直接 import 5000+ 規則；但 Splunk Security Content 跟 SOAR / RBA 等 detection content + SOC tooling 成熟度仍高一個量級。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &amp;#43; CSPM &amp;#43; CWS &amp;#43; AAP &amp;#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security&lt;/a> 比、Elastic 跨 on-prem + 多雲、可自管也可 Elastic Cloud SaaS；Datadog 是 SaaS-only、適合純 cloud-native。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &amp;#43; SOAR &amp;#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &amp;#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations&lt;/a> 比、Elastic 多查詢語言（KQL / EQL / Lucene / ES|QL）、Google 走 YARA-L 單一統一語言、超大規模 ingestion Google 反而划算。&lt;/p></description><content:encoded><![CDATA[<p>Elastic Security 是 Elastic Stack（Elasticsearch + Kibana + Beats / Agent）上的 SIEM + EDR + Cloud Security 套件、OSS 起源、現屬 Elastic 商業版的 Solution。它跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a> / <a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a> / <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a> 的差異在 <em>計費模型 + 查詢語言模型 + ecosystem 開放度</em>、偵測能力本身相近 — Elastic 走 <em>resource-based pricing</em>（按 cluster size 而非 ingestion volume）、且提供 KQL / EQL / Lucene / ES|QL 四種互補的查詢語言。</p>
<h2 id="服務定位">服務定位</h2>
<p>Elastic Security 的核心定位是 <em>Elastic Stack 上的 security solution</em>、底層是 <em>Elasticsearch</em>（資料層）+ <em>Kibana</em>（查詢與 UI 層）+ <em>Fleet / Elastic Agent</em>（採集層）、頂層產品分三條：<em>Elastic SIEM</em>（log aggregation + detection rule + Case + Timeline）、<em>Elastic Defend</em>（前 Endgame 收購而來、EDR + endpoint protection、跟 CrowdStrike / SentinelOne 同層）、<em>Elastic Cloud Security</em>（CSPM + CWP、雲端資源 misconfig 與 workload 防護）。</p>
<p>跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a> 比、Elastic 走 <em>OSS-friendly + resource-based pricing</em> — TB-scale ingestion 不直接漲費用（要 scale node 但邊際成本遠低於 Splunk per-GB 累進）、Sigma rule 社群可直接 import 5000+ 規則；但 Splunk Security Content 跟 SOAR / RBA 等 detection content + SOC tooling 成熟度仍高一個量級。跟 <a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a> 比、Elastic 跨 on-prem + 多雲、可自管也可 Elastic Cloud SaaS；Datadog 是 SaaS-only、適合純 cloud-native。跟 <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a> 比、Elastic 多查詢語言（KQL / EQL / Lucene / ES|QL）、Google 走 YARA-L 單一統一語言、超大規模 ingestion Google 反而划算。</p>
<p>關鍵張力：<em>多查詢語言模型</em> 同時是 Elastic 的優勢跟負擔。EQL 寫 attack chain sequence 比 SPL correlation 更直接、KQL 過濾快、ES|QL 寫 aggregation 像 SQL 直覺、Lucene 處理 full-text；但 SOC team 要決定哪個 rule 用哪個語言、不能讓每個 analyst 各寫各的。</p>
<h2 id="本章目標">本章目標</h2>
<p>讀完本頁、讀者能判斷：</p>
<ol>
<li>Elastic Security 在 SOC stack 中承擔哪一段（log aggregation / SIEM / EDR / CSPM）、哪些要外接（<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a> IdP log、<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a> secret rotation）</li>
<li>KQL / EQL / Lucene / ES|QL 四種查詢語言的職責分工（誰用在哪種 rule、誰負責教育 SOC）</li>
<li>Resource-based pricing 的治理（cluster sizing、hot-warm-cold tier、Searchable Snapshots、Elastic Cloud Serverless）</li>
<li>何時用 Elastic、何時走 Splunk / Datadog / Google Security Ops 的取捨</li>
</ol>
<h2 id="最短判讀路徑">最短判讀路徑</h2>
<p>判斷 Elastic Security deployment 是否健康、最少看四件事：</p>
<ul>
<li><strong>誰能改 detection rule</strong>：Elastic Security app 的 rule editor 權限、<code>detection-rules</code> repo（Elastic 官方 OSS rule 庫）有沒有 fork 進組織版控、rule change 是否走 PR review + staging space 驗證</li>
<li><strong>採集治理</strong>：Fleet 統一管 Elastic Agent policy / 還是散落 Beats（filebeat / metricbeat / auditbeat / winlogbeat）各自設定、log source 是否分 hot / warm / cold tier、Searchable Snapshots 是否開</li>
<li><strong>Detection content coverage</strong>：Elastic Prebuilt rules + Sigma 社群規則 import 多少 enabled、是否跟 MITRE ATT&amp;CK 對照、EQL sequence 規則覆蓋多少 attack chain pattern</li>
<li><strong>Alert quality / SOC handoff</strong>：alert volume per day、Case 跟 Timeline 是否進入日常 SOC workflow、ML anomaly job 是否在線 + threshold 是否 tuned、跟 <a href="/blog/backend/08-incident-response/" data-link-title="模組八：事故處理與復盤" data-link-desc="用 IR 領域詞彙建問題節點、以服務級案例庫累積事故脈絡，先建概念與案例庫再進實作交接">8 incident response</a> 的 routing 是否定義</li>
</ul>
<p>四件事任一缺失、就是 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">Detection Coverage and Signal Governance</a> 邊界的待補項目。</p>
<h2 id="日常操作與決策形狀">日常操作與決策形狀</h2>
<p><strong>Ingestion architecture</strong>：log 進 Elastic 三種主路徑 — <em>Elastic Agent + Fleet</em>（現代部署的預設、單一 agent 收 system / endpoint / cloud / app log、中央 Fleet server 統一管 policy）、<em>Beats</em>（filebeat / metricbeat / auditbeat / winlogbeat 等專用 agent、Fleet 推出前的傳統做法、現在持續支援但建議遷移到 Elastic Agent）、<em>Logstash</em>（pipeline-style ETL、用在 enrich / filter / route 複雜場景）。production 通常 Elastic Agent + Fleet 為主、Logstash 補 ETL 缺口。</p>
<p><strong>KQL / EQL / Lucene / ES|QL 的職責分工</strong>：四種查詢語言各有 first-class 場景。<em>KQL</em>（Kibana Query Language）是 Kibana 預設過濾語法、<code>user.name : &quot;alice&quot; and event.action : &quot;logon-failed&quot;</code>、簡單直觀、適合 dashboard / Discover 過濾。<em>EQL</em>（Event Query Language）做 sequence pattern matching、<code>sequence by user.name [authentication where event.outcome==&quot;failure&quot;] [authentication where event.outcome==&quot;success&quot; and source.geo.country != &quot;TW&quot;]</code>、表達 attack chain 比 SPL correlation 更直接。<em>Lucene</em> 是底層 full-text query、特殊需要時直接寫。<em>ES|QL</em>（Elasticsearch Query Language、2024+）是新版 SQL-like、<code>FROM logs-* | WHERE event.category == &quot;authentication&quot; | STATS count = COUNT(*) BY user.name</code>、寫 aggregation 直覺；屬新語言、production 採用 cadence 還在跟進中。</p>
<p><strong>Detection rule 種類</strong>：Elastic Security 的 rule type 是六種 first-class 概念、不是只有「query rule」一種 — <em>Query rule</em>（KQL / Lucene 觸發）、<em>EQL rule</em>（sequence pattern）、<em>Threshold rule</em>（聚合超過閾值、例如同一 IP 5min 內 login fail &gt; 100）、<em>ML rule</em>（綁 Elastic ML anomaly job、anomaly score 超過閾值觸發）、<em>New term rule</em>（首次出現的 entity、例如某 user 第一次從某國登入）、<em>Indicator match rule</em>（事件 enrich 比對 threat intel feed、IoC hit 觸發）。production rule 經常組合多種 — query rule 做粗篩、EQL rule 抓 sequence、threshold + ML 補 baseline anomaly。</p>
<p><strong>Sigma rule import</strong>：Sigma 是 OSS 通用 detection rule 格式（YAML、跨 SIEM 可移植）、社群維護 5000+ 規則。Elastic 支援直接 import Sigma rule 轉成 Elastic detection rule、是 Elastic 拉開跟商業 SIEM 距離的 OSS 槓桿。實務做法：先 import Sigma baseline + 全部走 staging space 跑 false positive 觀察、再 enable 到 production；不要直接全 enable、Sigma rule 跨 SIEM 通用所以 environment-specific tuning 必須自己做。</p>
<p><strong>Case + Timeline</strong>：Case 是 incident 容器、聚合 alert + comment + assignment + status；Timeline 是 SOC analyst 的 investigation workspace、可以 pin event / annotate / link related alert、產出 investigation narrative。兩者組合是 Elastic 的 SOC workflow first-class、不是外掛 — 對應 Splunk ES 的 Notable Event + Incident Review、但 Elastic 走 OSS 化、Case 可 export markdown 進 ticketing。</p>
<p><strong>Elastic Defend（EDR）</strong>：前 Endgame 收購整合、提供 endpoint detection + prevention（malware block / ransomware protection / behavior detection）、跟 CrowdStrike Falcon / SentinelOne 同層。Elastic Defend 跑在 Elastic Agent 內、policy 從 Fleet 推。實務上多數 SIEM 客戶不會用內建 EDR、而是外接專業 EDR feed 進 Elastic SIEM；但 OSS-friendly + 預算敏感的中型客戶可以直接整合到一個 stack。</p>
<p><strong>Cross-cluster search</strong>：跨多個 Elastic cluster 統一查詢（<code>remote_cluster:index-name</code>）、適合 multi-region / multi-tenant SOC、不需要把所有 log 搬到單一 cluster。對應 Splunk Cloud federated search。實務場景：歐洲 GDPR 資料留在 EU cluster、美國 cluster query 過去做 incident investigation 而不複製資料。</p>
<p><strong>ML jobs（anomaly detection）</strong>：Elastic ML 內建 unsupervised anomaly detection、pre-built ML job library 覆蓋 SOC 常見場景（user behavior baseline、host login pattern、port scan detection、rare process）。ML rule 綁 ML job、anomaly score 超過閾值觸發 detection rule。對應 Splunk UBA、但 Elastic ML 是 stack 內建、不是 add-on app。</p>
<p><strong>Resource-based pricing 治理</strong>：Elastic Cloud 按 <em>cluster size</em>（node count × node size）計費、不按 ingestion volume — 意義是 ingest 多 log 不直接漲費用、但要 scale node 維持查詢效能。實務治理：<em>hot tier</em>（最近 7-30 天、SSD 高效能 node）、<em>warm tier</em>（30-90 天、低 IO node）、<em>cold tier</em> / <em>frozen tier</em>（90 天以上、Searchable Snapshots on S3 / GCS、查詢慢但成本極低）。對應 Splunk SmartStore、但 Elastic frozen tier 把 retention 從幾個月延長到幾年、cost 不線性漲。</p>
<h2 id="核心取捨表">核心取捨表</h2>
<table>
  <thead>
      <tr>
          <th>取捨維度</th>
          <th>Elastic Security</th>
          <th>Splunk</th>
          <th>Datadog Security</th>
          <th>Google Security Operations</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>計費模型</td>
          <td>Resource-based（node / cluster size）</td>
          <td>Ingestion-based（GB/day、累進）</td>
          <td>Per-host + per-event（events/month）</td>
          <td>Fixed price by data tier（PB-scale 划算）</td>
      </tr>
      <tr>
          <td>查詢語言</td>
          <td>KQL / EQL / Lucene / ES|QL 四種互補</td>
          <td>SPL（單一強表達力）</td>
          <td>Datadog Query（沿用 observability 語法）</td>
          <td>YARA-L（統一、結構清楚）</td>
      </tr>
      <tr>
          <td>Sequence 表達</td>
          <td>EQL <code>sequence by</code> 直接表達 attack chain</td>
          <td>SPL transaction / streamstats</td>
          <td>log + metrics + trace 同 plane</td>
          <td>UDM + YARA-L 多事件 rule</td>
      </tr>
      <tr>
          <td>部署模型</td>
          <td>Self-hosted / Elastic Cloud / Serverless</td>
          <td>Self-hosted (Enterprise) / SaaS (Cloud)</td>
          <td>SaaS only</td>
          <td>SaaS only（Google Cloud）</td>
      </tr>
      <tr>
          <td>Detection content</td>
          <td>Elastic Prebuilt rules + Sigma 社群 5000+</td>
          <td>Splunk Security Content（最豐富、社群活躍）</td>
          <td>Datadog Security Rules（中等）</td>
          <td>Google YARA-L + Google threat intel</td>
      </tr>
      <tr>
          <td>EDR 整合</td>
          <td>Elastic Defend 內建（前 Endgame）</td>
          <td>外接 CrowdStrike / Defender</td>
          <td>Workload Security（容器 focus）</td>
          <td>外接（透過 forwarder）</td>
      </tr>
      <tr>
          <td>SOAR / Response</td>
          <td>Cases + Endpoint response（Elastic Defend）</td>
          <td>Splunk SOAR（前 Phantom、業界先驅）</td>
          <td>Workflow Automation（基本）</td>
          <td>SOAR 內建（前 Siemplify）</td>
      </tr>
      <tr>
          <td>適合場景</td>
          <td>OSS-friendly、中大型、Elastic stack 已用</td>
          <td>Enterprise + 跨 on-prem、預算允許</td>
          <td>Cloud-native + observability 已用 Datadog</td>
          <td>超大規模 ingestion、Google 雲 + 多雲 SOC</td>
      </tr>
      <tr>
          <td>退場成本</td>
          <td>中 — Sigma / Lucene / EQL 部分可移植</td>
          <td>高 — SPL / detection content / dashboard 量多</td>
          <td>中</td>
          <td>中</td>
      </tr>
  </tbody>
</table>
<p>選 Elastic 的核心訴求：<em>OSS-friendly 文化 + resource-based pricing 友善 + Elastic Stack 已作為 observability 在用</em>、團隊有能力跨四種查詢語言（或至少把 EQL 跟 KQL 雙語分工清楚）、能接受 detection content 跟 SOAR 成熟度 trade-off。TB-scale ingestion 時 Elastic 比 Splunk 省 60-80% license cost 是最大誘因、但要算進 cluster sizing 跟 SRE 維運的隱形成本。</p>
<h2 id="進階主題">進階主題</h2>
<p><strong>EQL sequence pattern（時序攻擊鏈）</strong>：EQL 的 <code>sequence by</code> 是 Elastic 表達 attack chain 的 first-class 武器、比 SPL correlation 直接。例如 MFA fatigue 寫成 <code>sequence by user.name with maxspan=5m [authentication where event.outcome==&quot;failure&quot;] [authentication where event.outcome==&quot;failure&quot;] [authentication where event.outcome==&quot;success&quot; and source.ip != known_ip]</code>、序列邏輯直接表達。配對 <a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/uber-2022-mfa-fatigue/" data-link-title="7.R7.1.1 Uber 2022：MFA 疲勞與內部工具擴散" data-link-desc="從社交工程到內部工具存取，拆解身分流程與權限邊界的失效點">Uber 2022 MFA Fatigue</a> lesson：MFA fail 序列 + 新裝置 success 直接觸發。</p>
<p><strong>Elastic Defend endpoint response</strong>：除偵測外、Defend 支援 host isolation（隔離受感染 endpoint 但保留 SOC 連線）、process kill、file quarantine 等 response action、直接從 Kibana Security app 觸發。對應 CrowdStrike Real Time Response。production 採用前要設 approval gate、避免 SOC analyst 誤觸動 production server。</p>
<p><strong>CSPM / CWP（Elastic Cloud Security）</strong>：CSPM（Cloud Security Posture Management）對 AWS / GCP / Azure 帳號做 misconfig 掃描（S3 bucket public、IAM over-permission、security group 0.0.0.0/0）、對照 CIS Benchmark；CWP（Cloud Workload Protection）對 Kubernetes workload 跑 runtime detection。屬較新的功能、跟 Wiz / Lacework 等專業 CNAPP 比覆蓋還在追趕。</p>
<p><strong>Cross-cluster search 跨環境 federated query</strong>：multi-region SOC 的 first-class 工具 — query 寫 <code>FROM logs-auth-*, eu-cluster:logs-auth-*</code>、Elastic 自動路由跨 cluster。實務注意：跨 cluster query 延遲較高、要設 timeout；資料合規（GDPR）必須留意 query 結果是否包含跨境資料、不是搬資料但 query 結果回傳算不算傳輸要法務確認。</p>
<p><strong>Sigma 規則社群</strong>：Sigma 是 OSS detection rule 通用格式、Elastic 是 Sigma 主力使用者（內建 importer + Elastic 工程師參與 Sigma upstream）。實務做法：fork SigmaHQ repo 進組織版控、CI pipeline 自動轉 Sigma → Elastic detection rule、staging space 跑 false positive curve、promote 到 production；不要每次 manually import。</p>
<p><strong>Elastic Cloud Serverless（2024+）</strong>：新模型、按 <em>workload type</em>（search / observability / security）計費、不再按 cluster size — 減少 sizing 決策、autoscaling 由 Elastic 託管。屬新模型、production 採用 cadence 還在跟進中、適合 greenfield 部署或 PoC、existing cluster 遷移 roadmap 還在演進。</p>
<h2 id="排錯與失敗快速判讀">排錯與失敗快速判讀</h2>
<ul>
<li><strong>Alert volume 爆炸 / SOC 看不完</strong>：Sigma rule 全 enable 沒 tune、或 threshold rule 閾值太低 — staging space 跑 1 週統計 FP、tune threshold、加 exception list 排除已知合法 source、ML rule 補 user-specific baseline</li>
<li><strong>EQL sequence rule 跑不動 / timeout</strong>：sequence span 太長（24h）或 by field cardinality 太高、查詢成本爆炸 — 縮短 maxspan、限定 index pattern、加 pre-filter 條件</li>
<li><strong>Cluster 查詢慢 / Kibana 卡</strong>：hot tier 塞太多舊資料、沒做 hot-warm-cold tier 分層 — 開 ILM（Index Lifecycle Management）policy 自動 rollover、warm tier 用便宜 node、cold / frozen 走 Searchable Snapshots</li>
<li><strong>Fleet agent enrollment 失敗</strong>：Fleet server 跟 Elasticsearch 之間網路 / 憑證 / token 問題 — 檢查 Fleet server health、確認 enrollment token 未過期、agent log 看 specific 錯誤</li>
<li><strong>Sigma rule import 後大量 FP</strong>：Sigma rule 是 cross-SIEM 通用、沒有 environment-specific exclusion — 不要全 enable、staging tune 後再 promote、加 exception list（known scanner IP / 內部測試帳號）</li>
<li><strong>Resource-based pricing 超預算</strong>：node 過度 scale 或 hot tier 留太多 — 開 hot-warm-cold ILM、把 retention 超過 30 天的 index 推到 frozen tier on S3、Searchable Snapshots 是預設應該開</li>
<li><strong>ML job anomaly score 不準</strong>：training data 包含已 compromise 期間、baseline 被汙染 — 確認 training window 在乾淨期、定期重訓、配 detection rule 用 anomaly_score &gt; 75 而非 &gt; 50</li>
</ul>
<h2 id="何時改走其他服務">何時改走其他服務</h2>
<table>
  <thead>
      <tr>
          <th>需求形狀</th>
          <th>改走</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Enterprise + detection content 最豐富</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a></td>
      </tr>
      <tr>
          <td>Cloud-native + observability 已用 Datadog</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a></td>
      </tr>
      <tr>
          <td>超大規模 ingestion + Google 雲</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></td>
      </tr>
      <tr>
          <td>DLP / sensitive data discovery</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a></td>
      </tr>
      <tr>
          <td>Endpoint detection 為主、不要全 stack</td>
          <td>CrowdStrike Falcon / Microsoft Defender for Endpoint / SentinelOne</td>
      </tr>
      <tr>
          <td>CNAPP 為主（雲端 posture + workload）</td>
          <td>Wiz / Lacework / Prisma Cloud（Elastic Cloud Security 較新）</td>
      </tr>
      <tr>
          <td>Incident routing</td>
          <td><a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a></td>
      </tr>
  </tbody>
</table>
<h2 id="不在本頁內的主題">不在本頁內的主題</h2>
<ul>
<li>KQL / EQL / ES|QL 完整語法 reference、Lucene query DSL 進階用法</li>
<li>Elasticsearch index sharding / replica / ILM tuning 細節（屬 observability / 資料工程範圍）</li>
<li>Elastic Observability（APM / logs / metrics）— 屬 observability 不屬 security</li>
<li>Elastic Cloud Serverless 詳細 sizing 與 pricing 模型（2024+ 新模型、變動中）</li>
<li>Elastic Stack 自管的維運（cluster upgrade、Kibana plugin 開發）</li>
</ul>
<h2 id="案例回寫">案例回寫</h2>
<p>Elastic Security 在 07 案例庫沒有直接 vendor-level 事件、但所有 detection-related case 都是 SIEM 偵測覆蓋率的對照：</p>
<table>
  <thead>
      <tr>
          <th>案例</th>
          <th>跟 Elastic Security 的關係（對照啟示）</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/uber-2022-mfa-fatigue/" data-link-title="7.R7.1.1 Uber 2022：MFA 疲勞與內部工具擴散" data-link-desc="從社交工程到內部工具存取，拆解身分流程與權限邊界的失效點">Uber 2022 MFA Fatigue</a></td>
          <td>Elastic EQL <code>sequence by user.name [auth fail count &gt; 50 in 5min] [auth success from new device]</code> 直接表達 MFA fatigue pattern、Sigma 社群有現成規則可 import 起步</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/microsoft-storm-0558-2023-signing-key-chain/" data-link-title="7.R7.1.5 Microsoft Storm-0558 2023：簽章金鑰鏈與郵件存取" data-link-desc="從簽章金鑰保護失效到雲端郵件存取，拆解身分信任鏈的關鍵控制點">Microsoft Storm-0558 Signing Key Chain</a></td>
          <td>跨租戶 token 異常驗證需 Elastic Cross-cluster search 跨 Azure AD log + GCP audit log + 自家 app log 同時 query、不需先搬資料</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/supply-chain/3cx-2023-desktopapp-supply-chain/" data-link-title="7.R7.2.8 3CX 2023：桌面軟體更新鏈攻擊" data-link-desc="合法更新流程被植入後，桌面端供應鏈事件如何傳到企業端點">3CX 2023 Desktop App Supply Chain</a></td>
          <td>Elastic Defend 直接看到 desktop app process spawn + 異常網路 callback、不需外接 EDR feed；EQL <code>sequence</code> 抓 process → DNS → C2 行為鏈</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle (section)</a></td>
          <td>Elastic rule 走 <code>detection-rules</code> repo（OSS、Elastic 官方維護）+ Sigma fork + staging space + promote 工程化 lifecycle、不是 Kibana UI 直改</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/" data-link-title="7.B10 Alert Fatigue and Signal Quality" data-link-desc="建立告警疲勞治理方法，讓訊號品質、分級一致性與處置效率同步提升">Alert Fatigue and Signal Quality (section)</a></td>
          <td>Elastic 沒有 Splunk RBA 對應、用 ML anomaly rule + threshold rule severity + Case grouping 三層降噪、要設 ML job 重訓 lifecycle</td>
      </tr>
  </tbody>
</table>
<h2 id="下一步路由">下一步路由</h2>
<ul>
<li>上游：<a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a>、<a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle</a></li>
<li>平行：<a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a>、<a href="/blog/backend/07-security-data-protection/vendors/datadog-security/" data-link-title="Datadog Security" data-link-desc="Datadog observability platform 上的 security suite：Cloud SIEM &#43; CSPM &#43; CWS &#43; AAP &#43; Sensitive Data Scanner、跟 observability 同 plane">Datadog Security</a>、<a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></li>
<li>下游：<a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a>（DLP signal 進 Elastic SIEM）</li>
<li>跨類：<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a>（IdP log source）、<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">HashiCorp Vault</a>（secret rotation API）、<a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a>（WAF log + Sigma rule 對接）</li>
<li>跨模組：<a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a>（Case → IR routing）、<a href="/blog/backend/04-observability/" data-link-title="模組四：可觀測性平台" data-link-desc="整理 log、metric、trace、dashboard 與 alert 的後端操作實務">4 observability</a>（Elastic Stack 共用 log pipeline）</li>
<li>官方：<a href="https://www.elastic.co/guide/en/security/current/index.html">Elastic Security Documentation</a>、<a href="https://github.com/elastic/detection-rules">detection-rules repo</a></li>
</ul>
]]></content:encoded></item><item><title>Datadog Security</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/datadog-security/</guid><description>&lt;p>Datadog Security 是 Datadog observability platform 上的 security 套件、跟 Datadog logs / metrics / APM / infrastructure 共用同一個 control plane 與 data plane。它的設計起點不是 SIEM、是 &lt;em>把資安訊號當成 observability 的一個維度&lt;/em>：alert 不只看 log、可以同時 pivot 到 APM trace、infra metrics 與 host context。這個定位決定了它的優勢（cloud-native + 混合 incident 偵測）與限制（SaaS-only + 計費隨 host 量線性漲、不適合 on-prem-heavy 或預算敏感場景）。&lt;/p>
&lt;h2 id="服務定位">服務定位&lt;/h2>
&lt;p>Datadog Security 由四個 product 構成、共用 Datadog Agent 與 backend：&lt;em>Cloud SIEM&lt;/em>（log-based detection、跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &amp;#43; indexer &amp;#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk Enterprise Security&lt;/a> 同類）、&lt;em>Cloud Security Management (CSM)&lt;/em> — 涵蓋 &lt;em>CSPM&lt;/em>（cloud config posture）與 &lt;em>Cloud Workload Security (CWS)&lt;/em>（container / Linux runtime via eBPF）、&lt;em>App and API Protection (AAP、前 ASM)&lt;/em> — RASP-style 在 app runtime 收 attack signal、&lt;em>Sensitive Data Scanner&lt;/em> — scan log 中的 PII / credential 並 redact。&lt;/p>
&lt;p>跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &amp;#43; indexer &amp;#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk&lt;/a> 比、Datadog 走 &lt;em>observability-first + security 是 view&lt;/em>、Splunk 是 &lt;em>security-first&lt;/em>。Splunk 在 enterprise SOC tooling 深度（SOAR playbook、RBA、CIM data model）與跨 on-prem 部署上更成熟、Datadog SaaS-only 但跟 APM / Infra 同 plane、混合 incident（latency 異常是攻擊還是容量？）的判讀路徑更短。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &amp;#43; EDR &amp;#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security&lt;/a> 比、Elastic 可跨 on-prem + OSS、Datadog 只給 SaaS；Elastic 要自己整合 observability 訊號、Datadog 出廠就有。跟 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &amp;#43; SOAR &amp;#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &amp;#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations&lt;/a> 比、Google 走 &lt;em>fixed-price by data、PB-scale 划算&lt;/em>、Datadog 隨 host 線性漲、中等規模友善但破千 host 後 cost 曲線變陡。&lt;/p></description><content:encoded><![CDATA[<p>Datadog Security 是 Datadog observability platform 上的 security 套件、跟 Datadog logs / metrics / APM / infrastructure 共用同一個 control plane 與 data plane。它的設計起點不是 SIEM、是 <em>把資安訊號當成 observability 的一個維度</em>：alert 不只看 log、可以同時 pivot 到 APM trace、infra metrics 與 host context。這個定位決定了它的優勢（cloud-native + 混合 incident 偵測）與限制（SaaS-only + 計費隨 host 量線性漲、不適合 on-prem-heavy 或預算敏感場景）。</p>
<h2 id="服務定位">服務定位</h2>
<p>Datadog Security 由四個 product 構成、共用 Datadog Agent 與 backend：<em>Cloud SIEM</em>（log-based detection、跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk Enterprise Security</a> 同類）、<em>Cloud Security Management (CSM)</em> — 涵蓋 <em>CSPM</em>（cloud config posture）與 <em>Cloud Workload Security (CWS)</em>（container / Linux runtime via eBPF）、<em>App and API Protection (AAP、前 ASM)</em> — RASP-style 在 app runtime 收 attack signal、<em>Sensitive Data Scanner</em> — scan log 中的 PII / credential 並 redact。</p>
<p>跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a> 比、Datadog 走 <em>observability-first + security 是 view</em>、Splunk 是 <em>security-first</em>。Splunk 在 enterprise SOC tooling 深度（SOAR playbook、RBA、CIM data model）與跨 on-prem 部署上更成熟、Datadog SaaS-only 但跟 APM / Infra 同 plane、混合 incident（latency 異常是攻擊還是容量？）的判讀路徑更短。跟 <a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a> 比、Elastic 可跨 on-prem + OSS、Datadog 只給 SaaS；Elastic 要自己整合 observability 訊號、Datadog 出廠就有。跟 <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a> 比、Google 走 <em>fixed-price by data、PB-scale 划算</em>、Datadog 隨 host 線性漲、中等規模友善但破千 host 後 cost 曲線變陡。</p>
<p>關鍵張力：<em>observability 與 security 同 plane</em> 是 Datadog 最大賣點、也是 cost 風險來源。host count 跟 events/month 同時是 observability 跟 security 的計費基準、security 加上去後 bill 不會獨立 — 預算要從 <em>整個 Datadog 帳單</em> 看、不是 security 單列。</p>
<h2 id="本章目標">本章目標</h2>
<p>讀完本頁、讀者能判斷：</p>
<ol>
<li>Datadog Security 在 SOC stack 中承擔哪一段（log SIEM / CSPM / 容器 runtime / WAF-runtime / log DLP）、哪些要外接（<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a>、<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a> IdP log、edge WAF）</li>
<li>observability + security 同 plane 的優勢何時成立、何時是 vendor lock-in 風險</li>
<li>Cloud SIEM 計費（events/month + indexed）跟 Standard / Flex Logs retention tier 的成本治理</li>
<li>何時用 Datadog、何時走 Splunk / Elastic / Google Security Ops 的取捨</li>
</ol>
<h2 id="最短判讀路徑">最短判讀路徑</h2>
<p>判斷 Datadog Security 部署是否健康、最少看四件事：</p>
<ul>
<li><strong>Datadog Agent coverage</strong>：agent 是否裝在所有 host / container / serverless wrapper、log forwarder 是否覆蓋 cloud control plane（AWS CloudTrail / GCP Audit Log / Azure Activity Log）、IdP（<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a>）audit log 是否進來 — 缺一個就是 detection 盲點</li>
<li><strong>Detection rule ownership</strong>：Cloud SIEM rule 是用內建還是 custom、custom rule 是否走 Git 版控（Terraform <code>datadog_security_monitoring_rule</code>）、staging 環境是否 dry-run 24-48hr 才 promote production</li>
<li><strong>CSPM compliance check 治理</strong>：CIS / NIST / PCI baseline 開哪些、findings 是否進 ticket workflow、misconfig 修復 SLA 有沒有定義（critical 24hr、high 7d、medium 30d）</li>
<li><strong>Events/month + Indexed Log 預算</strong>：Cloud SIEM 按 events/month + indexed event 計費、新加 source 前是否估算 ingestion impact、Standard / Flex Logs retention tier 是否依 log priority 分流</li>
</ul>
<p>四件事任一缺失、就是 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">Detection Coverage and Signal Governance</a> 邊界的待補項目。</p>
<h2 id="日常操作與決策形狀">日常操作與決策形狀</h2>
<p><strong>Datadog Agent 採集</strong>：log / metrics / trace / security event 走同一個 Agent、用 integration（150+）抓 cloud / SaaS / database / queue。security event 跟 observability event 在後端用 <em>attribute tag</em>（<code>env</code>、<code>service</code>、<code>host</code>、<code>trace_id</code>）關聯、查 incident 時可以從 log alert pivot 到同 trace_id 的 APM trace 看 attack 發生的 application context。</p>
<p><strong>Cloud SIEM detection rule</strong>：rule 形式類似 SPL 的 query — <code>source:okta @evt.name:user.authentication.auth_via_mfa @outcome:failure</code> 加 <em>signal aggregation</em>（rolling window count、new value、anomaly detection、impossible travel）。內建 rule 跟 MITRE ATT&amp;CK 對應、跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk Security Content</a> 同類但 rule 數量較少；custom rule 走 Terraform provider 進版控、不在 UI 直改 production。</p>
<p><strong>CSPM compliance check</strong>：scan AWS / GCP / Azure 配置 vs CIS / NIST 800-53 / PCI / SOC 2 baseline、發現 misconfig（public S3 bucket、overly permissive IAM、不安全 SG rule）。跟 Wiz / Prisma Cloud 同類但跟 Datadog Infra 同 dashboard、findings 可以直接看到 affected resource 的 metrics / log。優勢是 <em>資安發現可以直接看業務影響</em>、限制是 graph-based attack path（Wiz 強項）不及專業 CNAPP。</p>
<p><strong>Cloud Workload Security（CWS）</strong>：用 Linux eBPF probe 在 kernel 層觀察 container / process behavior、偵測 cryptominer / privilege escalation / 異常 syscall / file integrity 變動。跟 <a href="https://falco.org/">Falco</a> 同類但跟 Datadog Infra 同 plane、CWS alert 可以直接 pivot 到該 container 的 CPU / memory / trace。Linux eBPF 對 kernel 版本敏感、舊 kernel 部份功能不可用、production 前要確認 fleet kernel matrix。</p>
<p><strong>App and API Protection（AAP）</strong>：RASP-style protection、Datadog APM library 在 application runtime 收 attack signal（SQLi / XSS / SSRF / 異常 traffic pattern）。跟 <a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a> / <a href="/blog/backend/07-security-data-protection/vendors/aws-waf/" data-link-title="AWS WAF" data-link-desc="AWS-internal WAF、跟 ALB / CloudFront / API Gateway 直接整合、Web ACL &#43; Managed Rule Group &#43; Rate-based Rule、Shield Standard 內含">AWS WAF</a> 不同層 — WAF 在 edge / CDN、AAP 在 app runtime 看到的是真實 request handler / DB query。兩者互補不互斥：edge WAF 擋 volumetric attack 跟已知 pattern、AAP 補 app-specific business logic abuse。</p>
<p><strong>Sensitive Data Scanner</strong>：scan ingest 進來的 log、用內建或 custom pattern 偵測 PII / credential / payment card / API key、發現後可以 redact、quarantine 或 alert。是 <em>DLP-lite</em> — 比不上 <a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a> 的 sensitive data discovery / classification / lineage 全套、但對 <em>log 中誤洩 secret</em> 的場景夠用、是 detection signal source 也是 DLP 補位。</p>
<p><strong>Notebooks + Workflow Automation</strong>：Notebooks 是 incident investigation 用的 query workbook、混 log query + metric chart + APM trace + 註記、跟 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk Search</a> 比較像 Jupyter notebook 的 SOC 版。Workflow Automation 是輕量 SOAR、接 PagerDuty / Slack / Jira / Webhook / <a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">Vault</a> API、playbook 走 visual builder + Python。SOAR 深度不到 Splunk SOAR、但對中等規模 SOC（10-50 人）的常見 response 動作（rotate credential / block IP / open ticket）夠用。</p>
<p><strong>Standard Logs / Flex Logs + retention tier</strong>：log 進 Datadog 後分 <em>Indexed</em>（hot、可全文搜尋、貴）、<em>Flex Logs</em>（warm、retention 長、查詢延遲較高、cost 1/3-1/5）、<em>Archive</em>（cold、丟 S3 / GCS、純儲存）三層。Cloud SIEM detection 跑在 indexed log 上、所以 <em>哪些 log 走 indexed</em> 直接決定 detection coverage 跟 bill。tier 1 source（IdP / cloud control plane / payment）必 indexed、tier 2 source（app log）按 sampling、tier 3（debug）走 Flex 或 Archive。</p>
<h2 id="核心取捨表">核心取捨表</h2>
<table>
  <thead>
      <tr>
          <th>取捨維度</th>
          <th>Datadog Security</th>
          <th>Splunk</th>
          <th>Elastic Security</th>
          <th>Google Security Operations</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>設計起點</td>
          <td>Observability + security 同 plane</td>
          <td>Security-first、log 統一查詢平台</td>
          <td>Search-first、ELK stack 延伸</td>
          <td>Massive scale ingestion、Google threat intel</td>
      </tr>
      <tr>
          <td>計費模型</td>
          <td>Per-host + per-event（events/month）</td>
          <td>Ingestion-based（GB/day、累進）</td>
          <td>Resource-based（node / cluster）</td>
          <td>Fixed price by data tier（PB-scale 划算）</td>
      </tr>
      <tr>
          <td>部署模型</td>
          <td>SaaS only</td>
          <td>Self-hosted / SaaS</td>
          <td>Self-hosted / Cloud / Serverless</td>
          <td>SaaS only（Google Cloud）</td>
      </tr>
      <tr>
          <td>觀測整合</td>
          <td>Native — log + APM + metrics + infra 同 query</td>
          <td>需自接（Splunk Observability 另收）</td>
          <td>需自接（Elastic Observability 另開）</td>
          <td>弱 — 跨產品 federation</td>
      </tr>
      <tr>
          <td>雲端 posture (CSPM)</td>
          <td>內建（CSM）</td>
          <td>第三方 add-on / Cisco 整合</td>
          <td>第三方 / Wazuh</td>
          <td>第三方 / Mandiant 整合</td>
      </tr>
      <tr>
          <td>容器 runtime</td>
          <td>內建 CWS（eBPF）</td>
          <td>需 Falco / 第三方</td>
          <td>Elastic Defend</td>
          <td>需 Falco / 第三方</td>
      </tr>
      <tr>
          <td>App runtime（RASP）</td>
          <td>內建 AAP</td>
          <td>需第三方</td>
          <td>第三方</td>
          <td>第三方</td>
      </tr>
      <tr>
          <td>SOAR / Response</td>
          <td>Workflow Automation（輕量）</td>
          <td>Splunk SOAR（業界先驅）</td>
          <td>Cases + Endpoint response</td>
          <td>SOAR 內建（前 Siemplify）</td>
      </tr>
      <tr>
          <td>適合場景</td>
          <td>Cloud-native + 已用 Datadog + 中等規模 SOC</td>
          <td>Enterprise + 跨 on-prem、預算允許</td>
          <td>OSS-friendly、Elastic stack 已用</td>
          <td>超大規模 ingestion、Google 雲</td>
      </tr>
  </tbody>
</table>
<p>選 Datadog 的核心訴求：<em>已經用 Datadog observability、cloud-native 為主、SOC 規模中等（10-50 人）、需要 observability + security 同 plane 的 incident 判讀路徑</em>。on-prem 為主、預算敏感（host 量 1000+）、需要 enterprise SOAR / RBA 深度、走 Splunk；OSS-friendly、跨 on-prem、走 Elastic。</p>
<h2 id="進階主題">進階主題</h2>
<p><strong>Cross-product correlation（log + APM + metrics 同 trace_id）</strong>：Datadog 最特別的偵測形狀 — security alert 不只 log line、而是綁 trace_id 的 <em>integrated incident view</em>。例如 API endpoint 出現 SQLi 嘗試、Cloud SIEM 開 signal、同時 APM 看到該 request 的 DB query 跟 latency、infra 看到該 host 的 CPU。對「query latency 異常是不是被攻擊」這種混合 incident 偵測有結構性優勢、跟 <a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/snowflake-2024-credential-abuse/" data-link-title="7.R7.4.2 Snowflake 2024：憑證濫用與資料竊取" data-link-desc="外洩憑證與 MFA 缺口如何在資料平台形成高風險外送事件">Snowflake 2024 Credential Abuse</a> 的調查路徑直接對應。</p>
<p><strong>CWS Linux eBPF 行為偵測</strong>：eBPF probe 在 kernel 層、不需要 kernel module、不影響 process performance（&lt; 1% overhead）。可以偵測的行為包括 file integrity（<code>/etc/passwd</code> 被改）、process tree（<code>bash → curl → /tmp/payload</code> 異常 chain）、network connection（容器對外連 cryptominer pool）、syscall pattern（<code>ptrace</code> 用於 process injection）。跟 <a href="https://falco.org/">Falco</a> 同樣用 eBPF、差別是 Datadog CWS 不需要單獨部署 + 跟 Datadog 其他 signal 同 plane。</p>
<p><strong>Datadog Threat Intelligence</strong>：內建 threat feed（malicious IP / domain / file hash）、自動標記 log / network event 命中 IoC。可以加自家 STIX/TAXII feed、不過深度比不上 <a href="https://www.mandiant.com/">Mandiant</a> / Recorded Future / 專業 TI platform；中等規模 SOC 夠用、嚴重 APT 對抗場景要外接專業 TI。</p>
<p><strong>跟 Datadog Incident Management 整合</strong>：security signal 可以直接開 Datadog Incident（內建 incident channel + timeline + post-mortem template）、跟 <a href="/blog/backend/08-incident-response/vendors/pagerduty/" data-link-title="PagerDuty" data-link-desc="On-call / alerting 主流 SaaS、IR 平台演化">PagerDuty</a> 同類但跟 observability 同 plane。對 <em>資安事件升級成全公司 incident</em> 的場景（<a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/change-healthcare-2024-ops-impact/" data-link-title="7.R7.4.3 Change Healthcare 2024：資料事件轉為營運中斷" data-link-desc="醫療支付中樞事件如何同時衝擊資料安全與業務連續性">Change Healthcare 2024 Operations Impact</a> 那種規模）可以共用 incident commander 視角、不用兩套 timeline 拼起來。</p>
<h2 id="排錯與失敗快速判讀">排錯與失敗快速判讀</h2>
<ul>
<li><strong>Cloud SIEM 偵測 lag / 沒 alert</strong>：events 沒進 indexed log（走了 Flex）、retention tier 設錯 — 檢查 log pipeline rule 是否把 security-critical source 標 indexed</li>
<li><strong>Events/month 暴衝</strong>：debug log / verbose log 進 Cloud SIEM index、CWS event 量爆 — log pipeline 前置 filter（Datadog Observability Pipeline 或 Cribl）、CWS rule 收斂 noisy 行為</li>
<li><strong>CSPM findings 100+ 沒人修</strong>：findings 沒進 ticket workflow、沒分 priority — 整合 Jira / ServiceNow、severity 對應 SLA、findings 老化超 30 天升級</li>
<li><strong>CWS 在舊 kernel host 沒資料</strong>：eBPF feature 對 kernel 版本敏感（&lt; 4.18 部份功能不支援）— 升級 kernel 或標記該 host 為 CWS-incompatible、補位用 host-based agent</li>
<li><strong>AAP false positive 卡 user</strong>：RASP 在 app runtime 直接 block、誤殺正常 request — AAP 先走 monitor mode 1-2 週收 baseline、tune 後再轉 protect mode</li>
<li><strong>Sensitive Data Scanner miss PII</strong>：custom pattern 沒寫對、log format 嵌套（JSON 內又是 JSON）— 用 sample log 跑 dry-run、scanner 跑在 ingest 階段不是 retroactive</li>
<li><strong>Workflow Automation playbook 黑箱</strong>：自動 rotate credential 結果誤殺 prod service account — playbook high-impact action 走 approval gate、default 走 containment 不走 deletion</li>
</ul>
<h2 id="何時改走其他服務">何時改走其他服務</h2>
<table>
  <thead>
      <tr>
          <th>需求形狀</th>
          <th>改走</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Enterprise + 跨 on-prem、預算允許</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a></td>
      </tr>
      <tr>
          <td>OSS-friendly / Elastic stack 已用</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a></td>
      </tr>
      <tr>
          <td>超大規模 ingestion + Google 雲</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></td>
      </tr>
      <tr>
          <td>嚴格 DLP / 資料分類</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a></td>
      </tr>
      <tr>
          <td>Cloud posture graph / attack path</td>
          <td>Wiz / Prisma Cloud / Lacework</td>
      </tr>
      <tr>
          <td>Edge WAF / volumetric attack</td>
          <td><a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a> / <a href="/blog/backend/07-security-data-protection/vendors/aws-waf/" data-link-title="AWS WAF" data-link-desc="AWS-internal WAF、跟 ALB / CloudFront / API Gateway 直接整合、Web ACL &#43; Managed Rule Group &#43; Rate-based Rule、Shield Standard 內含">AWS WAF</a></td>
      </tr>
      <tr>
          <td>Endpoint EDR</td>
          <td>CrowdStrike Falcon / Microsoft Defender for Endpoint</td>
      </tr>
      <tr>
          <td>Incident routing</td>
          <td><a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a></td>
      </tr>
  </tbody>
</table>
<h2 id="不在本頁內的主題">不在本頁內的主題</h2>
<ul>
<li>Datadog Agent 完整 configuration reference、custom check 撰寫</li>
<li>Datadog observability（APM / RUM / Synthetics / DBM）細節 — 屬 <a href="/blog/backend/04-observability/" data-link-title="模組四：可觀測性平台" data-link-desc="整理 log、metric、trace、dashboard 與 alert 的後端操作實務">4 observability</a> 模組</li>
<li>Cloud SIEM rule 完整語法 reference</li>
<li>CWS eBPF probe 撰寫（custom rule via Agent Expression Language）細節</li>
<li>Datadog Incident Management workflow（屬 <a href="/blog/backend/08-incident-response/" data-link-title="模組八：事故處理與復盤" data-link-desc="用 IR 領域詞彙建問題節點、以服務級案例庫累積事故脈絡，先建概念與案例庫再進實作交接">8 IR</a> 模組）</li>
</ul>
<h2 id="案例回寫">案例回寫</h2>
<p>Datadog Security 在 07 案例庫沒有直接 vendor-level 事件、但 observability + security 同 plane 的偵測形狀讓部份案例的調查路徑變短、值得對照：</p>
<table>
  <thead>
      <tr>
          <th>案例</th>
          <th>跟 Datadog Security 的關係（對照啟示）</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/snowflake-2024-credential-abuse/" data-link-title="7.R7.4.2 Snowflake 2024：憑證濫用與資料竊取" data-link-desc="外洩憑證與 MFA 缺口如何在資料平台形成高風險外送事件">Snowflake 2024 Credential Abuse</a></td>
          <td>Query volume + 連接數 + CPU 負載異常是 Datadog 同 plane 的強項、Cloud SIEM rule + DBM metrics 同 query 不用 SIEM + 監控工具拼接</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/change-healthcare-2024-ops-impact/" data-link-title="7.R7.4.3 Change Healthcare 2024：資料事件轉為營運中斷" data-link-desc="醫療支付中樞事件如何同時衝擊資料安全與業務連續性">Change Healthcare 2024 Operations Impact</a></td>
          <td>業務中樞事件的影響評估、APM + Infra 可秒級判斷 latency 異常源自資安 vs 容量、Datadog Incident 共用 IC 視角</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/data-exfiltration/mailchimp-2023-support-tool-abuse/" data-link-title="7.R7.4.4 Mailchimp 2023：支援工具路徑與客戶資料風險" data-link-desc="社交工程進入客服工具後，如何形成特定客戶資料存取風險">Mailchimp 2023 Support Tool Abuse</a></td>
          <td>APM span correlation 可看到單一 operator 短時間跨多 tenant access 的 trace pattern、log-only SIEM 看不到 application-level tenant 切換</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/red-team/cases/identity-access/uber-2022-mfa-fatigue/" data-link-title="7.R7.1.1 Uber 2022：MFA 疲勞與內部工具擴散" data-link-desc="從社交工程到內部工具存取，拆解身分流程與權限邊界的失效點">Uber 2022 MFA Fatigue</a></td>
          <td>Cloud SIEM detection rule 配 <a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a> MFA log + APM error rate correlation、不靠單一 log source</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">Detection Coverage and Signal Governance (section)</a></td>
          <td>Standard / Flex Logs + retention tier 是 detection coverage 治理的工具、tier 1 source 必 indexed、tier 2 / 3 走 Flex / Archive</td>
      </tr>
  </tbody>
</table>
<h2 id="下一步路由">下一步路由</h2>
<ul>
<li>上游：<a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a>、<a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">Detection Engineering Lifecycle</a></li>
<li>平行：<a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a>、<a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a>、<a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></li>
<li>下游：<a href="/blog/backend/07-security-data-protection/vendors/google-dlp/" data-link-title="Google DLP" data-link-desc="GCP 原生 Sensitive Data Protection：infoType discovery &#43; transformation (mask / FPE / tokenize / k-anonymity)、整合 BigQuery / GCS / Cloud SQL">Google DLP</a> / <a href="/blog/backend/07-security-data-protection/vendors/microsoft-purview/" data-link-title="Microsoft Purview" data-link-desc="Microsoft 跨 M365 / Azure / endpoint 的 data governance &#43; information protection &#43; DLP &#43; insider risk 統合平台、label-driven">Microsoft Purview</a>（DLP signal 進 Datadog）</li>
<li>跨類：<a href="/blog/backend/07-security-data-protection/vendors/okta/" data-link-title="Okta" data-link-desc="SaaS Identity Provider 主流選項、SSO / MFA / lifecycle 整合、第三方信任邊界的代價">Okta</a>（IdP log source）、<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/" data-link-title="HashiCorp Vault" data-link-desc="Self-hosted secret management 與 dynamic credential / encryption-as-a-service / PKI engine、跨雲跨環境的 secret 控制面">HashiCorp Vault</a>（Workflow Automation 拉 API）、<a href="/blog/backend/07-security-data-protection/vendors/cloudflare-waf/" data-link-title="Cloudflare WAF" data-link-desc="Edge WAF &#43; DDoS &#43; Bot management 整合套件、global anycast 網路、控制面信任邊界跟客戶側補強的對照">Cloudflare WAF</a> / <a href="/blog/backend/07-security-data-protection/vendors/aws-waf/" data-link-title="AWS WAF" data-link-desc="AWS-internal WAF、跟 ALB / CloudFront / API Gateway 直接整合、Web ACL &#43; Managed Rule Group &#43; Rate-based Rule、Shield Standard 內含">AWS WAF</a>（edge WAF log 進 Cloud SIEM、AAP 在 app 層補位）</li>
<li>跨模組：<a href="/blog/backend/04-observability/" data-link-title="模組四：可觀測性平台" data-link-desc="整理 log、metric、trace、dashboard 與 alert 的後端操作實務">4 observability</a>（同 Agent / 同 plane）、<a href="/blog/backend/08-incident-response/vendors/" data-link-title="事故處理 Vendor 清單" data-link-desc="規劃 on-call、incident response、status page 與 postmortem 工具的服務頁撰寫順序與判準">8 事故處理 vendor 清單</a>（Datadog Incident → IR routing）</li>
<li>官方：<a href="https://docs.datadoghq.com/security/">Datadog Security Documentation</a></li>
</ul>
]]></content:encoded></item><item><title>Splunk Risk-Based Alerting：從 alert per rule 到 score-aggregated notable</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/risk-based-alerting/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/risk-based-alerting/</guid><description>&lt;blockquote>
&lt;p>本文是 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &amp;#43; indexer &amp;#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk&lt;/a> overview 的 implementation-layer deep article。Overview 已說明 Splunk Enterprise Security 在 SIEM / Detection 譜系的定位、本文聚焦 &lt;em>Risk-Based Alerting (RBA)&lt;/em> 的實作層 — 從「per-rule alert」轉到「score 累積 + threshold 觸發 notable」的方法論轉變、跟 tuning / scaling / 整合的具體做法。&lt;/p>&lt;/blockquote>
&lt;h2 id="為什麼-rbaalert-fatigue-是-detection-engineering-的天花板">為什麼 RBA：alert fatigue 是 detection engineering 的天花板&lt;/h2>
&lt;p>Detection engineering 的成熟度上限不是「能寫多少 correlation rule」、是「SOC analyst 能處理多少 alert / day 而不會麻木」。多數 SOC 在 200-500 alert/day 區間就到處理上限、再加 rule 只會推升 false positive、analyst 開始 silent ignore 中低嚴重度 alert。&lt;/p>
&lt;p>RBA 的核心轉折是 &lt;em>把 alert 邏輯從「rule 觸發」拆成「score 累積」&lt;/em>：每個 detection rule 不直接產 alert、而是給 &lt;em>user / asset / process&lt;/em> 加 risk score；多個低嚴重訊號累積到 threshold 才產 notable（高優先 case）。SOC 看的不是「rule X 觸發了」、是「user Y 今天累積 70 分、上週 12 分」。&lt;/p>
&lt;p>RBA 不是 &lt;em>寫 detection rule 的替代&lt;/em>、是 &lt;em>aggregation 跟 prioritization 的新層&lt;/em>。原本 100 條 rule 各自產 alert 變成 100 條 rule 共同貢獻 score、score → notable 是新的 alert 邊界。&lt;/p>
&lt;h2 id="rba-三層-modelmodifierscorenotable">RBA 三層 model：modifier、score、notable&lt;/h2>
&lt;p>Risk 流程的三個 first-class object：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>Object&lt;/th>
 &lt;th>責任&lt;/th>
 &lt;th>例&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>&lt;strong>Risk modifier&lt;/strong>&lt;/td>
 &lt;td>一條 detection rule 產出、提供「給誰加多少分、為什麼、什麼類別」&lt;/td>
 &lt;td>user &lt;code>alice@corp&lt;/code> +25 分、reason &lt;code>unusual_login_geo&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Risk index&lt;/strong>&lt;/td>
 &lt;td>累積所有 modifier、依時間衰減；query 出「user / asset 當前 score」&lt;/td>
 &lt;td>&lt;code>index=risk earliest=-7d&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;strong>Risk notable&lt;/strong>&lt;/td>
 &lt;td>當 score 累積超過 threshold 觸發、進 SOC case management&lt;/td>
 &lt;td>user 累積 50 分 → 開 incident&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>關鍵設計選擇都在 modifier 層：&lt;/p>
&lt;ul>
&lt;li>&lt;strong>加分維度&lt;/strong>：per user / per asset / per process tree / per IP — 維度越細粒度、score 越能對應「個體」、但 query 成本越高&lt;/li>
&lt;li>&lt;strong>加分 weight&lt;/strong>：簡單做法 severity 直接對應（low=5 / med=15 / high=30 / critical=60）；細做要考慮 &lt;em>signal precision&lt;/em>（rule 的歷史 FP rate）&lt;/li>
&lt;li>&lt;strong>MITRE ATT&amp;amp;CK 對應&lt;/strong>：每個 modifier 標 tactic / technique、跟 ATT&amp;amp;CK 對應、用來判斷 &lt;em>kill chain 階段&lt;/em> 是否完整（reconnaissance → exfiltration 全套出現 vs 單一 tactic 重複）&lt;/li>
&lt;/ul>
&lt;h2 id="es-配置-step-by-step">ES 配置 step-by-step&lt;/h2>
&lt;h3 id="risk-modifier-從-correlation-search-產出">Risk modifier 從 correlation search 產出&lt;/h3>





&lt;pre tabindex="0">&lt;code class="language-spl" data-lang="spl">| search index=auth user=* unusual_geo=true
| stats count by user, src_ip, _time
| eval risk_score=25
| eval risk_object_type=&amp;#34;user&amp;#34;
| eval risk_object=user
| eval risk_message=&amp;#34;Unusual login geography&amp;#34;
| eval threat_object=src_ip
| eval threat_object_type=&amp;#34;ip_address&amp;#34;
| eval mitre_technique=&amp;#34;T1078&amp;#34;
| collect index=risk&lt;/code>&lt;/pre>&lt;p>關鍵欄位：&lt;/p></description><content:encoded><![CDATA[<blockquote>
<p>本文是 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a> overview 的 implementation-layer deep article。Overview 已說明 Splunk Enterprise Security 在 SIEM / Detection 譜系的定位、本文聚焦 <em>Risk-Based Alerting (RBA)</em> 的實作層 — 從「per-rule alert」轉到「score 累積 + threshold 觸發 notable」的方法論轉變、跟 tuning / scaling / 整合的具體做法。</p></blockquote>
<h2 id="為什麼-rbaalert-fatigue-是-detection-engineering-的天花板">為什麼 RBA：alert fatigue 是 detection engineering 的天花板</h2>
<p>Detection engineering 的成熟度上限不是「能寫多少 correlation rule」、是「SOC analyst 能處理多少 alert / day 而不會麻木」。多數 SOC 在 200-500 alert/day 區間就到處理上限、再加 rule 只會推升 false positive、analyst 開始 silent ignore 中低嚴重度 alert。</p>
<p>RBA 的核心轉折是 <em>把 alert 邏輯從「rule 觸發」拆成「score 累積」</em>：每個 detection rule 不直接產 alert、而是給 <em>user / asset / process</em> 加 risk score；多個低嚴重訊號累積到 threshold 才產 notable（高優先 case）。SOC 看的不是「rule X 觸發了」、是「user Y 今天累積 70 分、上週 12 分」。</p>
<p>RBA 不是 <em>寫 detection rule 的替代</em>、是 <em>aggregation 跟 prioritization 的新層</em>。原本 100 條 rule 各自產 alert 變成 100 條 rule 共同貢獻 score、score → notable 是新的 alert 邊界。</p>
<h2 id="rba-三層-modelmodifierscorenotable">RBA 三層 model：modifier、score、notable</h2>
<p>Risk 流程的三個 first-class object：</p>
<table>
  <thead>
      <tr>
          <th>Object</th>
          <th>責任</th>
          <th>例</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><strong>Risk modifier</strong></td>
          <td>一條 detection rule 產出、提供「給誰加多少分、為什麼、什麼類別」</td>
          <td>user <code>alice@corp</code> +25 分、reason <code>unusual_login_geo</code></td>
      </tr>
      <tr>
          <td><strong>Risk index</strong></td>
          <td>累積所有 modifier、依時間衰減；query 出「user / asset 當前 score」</td>
          <td><code>index=risk earliest=-7d</code></td>
      </tr>
      <tr>
          <td><strong>Risk notable</strong></td>
          <td>當 score 累積超過 threshold 觸發、進 SOC case management</td>
          <td>user 累積 50 分 → 開 incident</td>
      </tr>
  </tbody>
</table>
<p>關鍵設計選擇都在 modifier 層：</p>
<ul>
<li><strong>加分維度</strong>：per user / per asset / per process tree / per IP — 維度越細粒度、score 越能對應「個體」、但 query 成本越高</li>
<li><strong>加分 weight</strong>：簡單做法 severity 直接對應（low=5 / med=15 / high=30 / critical=60）；細做要考慮 <em>signal precision</em>（rule 的歷史 FP rate）</li>
<li><strong>MITRE ATT&amp;CK 對應</strong>：每個 modifier 標 tactic / technique、跟 ATT&amp;CK 對應、用來判斷 <em>kill chain 階段</em> 是否完整（reconnaissance → exfiltration 全套出現 vs 單一 tactic 重複）</li>
</ul>
<h2 id="es-配置-step-by-step">ES 配置 step-by-step</h2>
<h3 id="risk-modifier-從-correlation-search-產出">Risk modifier 從 correlation search 產出</h3>





<pre tabindex="0"><code class="language-spl" data-lang="spl">| search index=auth user=* unusual_geo=true
| stats count by user, src_ip, _time
| eval risk_score=25
| eval risk_object_type=&#34;user&#34;
| eval risk_object=user
| eval risk_message=&#34;Unusual login geography&#34;
| eval threat_object=src_ip
| eval threat_object_type=&#34;ip_address&#34;
| eval mitre_technique=&#34;T1078&#34;
| collect index=risk</code></pre><p>關鍵欄位：</p>
<ul>
<li><code>risk_object</code> + <code>risk_object_type</code>：誰被加分、預設 user / system / other</li>
<li><code>risk_score</code>：加多少分、考量 signal precision</li>
<li><code>threat_object</code>：對應的 attacker artifact（IP / hash / domain）、用來跨 modifier 關聯</li>
<li><code>mitre_technique</code>：對應 ATT&amp;CK ID、用於 kill chain analysis</li>
</ul>
<p><em>Tuning 提醒</em>：第一次部署別直接 <code>collect index=risk</code>、先 <code>| table</code> 看 output、估算每天會產多少 modifier；超出 indexer 容量規劃前先做 sampling（<code>| where random()/2147483647&lt;0.1</code> 取 10%）。</p>
<h3 id="risk-notablethreshold-aggregation">Risk notable：threshold aggregation</h3>





<pre tabindex="0"><code class="language-spl" data-lang="spl">| tstats summariesonly=t count, sum(All_Risk.calculated_risk_score) as total_risk
  from datamodel=Risk.All_Risk
  where earliest=-24h
  by All_Risk.risk_object, All_Risk.risk_object_type
| where total_risk &gt; 80
| `risk_score_format`</code></pre><p><code>total_risk &gt; 80</code> 是觸發 notable 的 threshold。Tuning 重點：</p>
<ul>
<li><strong>Time window</strong>：-24h 是預設、但要看 <em>attack pattern average duration</em> 調整；APT 用 7-14 day window、commodity attack 用 4-12h</li>
<li><strong>Threshold value</strong>：80 是 <em>當量</em> 不是普世值、依 modifier weight 分佈調整；ES 7.0+ 預設建議 100、實務多在 60-150 區間</li>
<li><strong>Aggregation 維度</strong>：by user 是 default、但 lateral movement scenario 要 by asset、credential abuse 要 by service account</li>
</ul>
<p><em>Tuning 提醒</em>：第一週跑 <em>shadow mode</em> — 觸發 notable 但不 page、SOC 後續 review、調整 threshold 跟 weight；shadow 跑 1-2 週後再啟 production page。</p>
<h3 id="notable-enrichment人類能看的-case">Notable enrichment：人類能看的 case</h3>





<pre tabindex="0"><code class="language-spl" data-lang="spl">| eval description=&#34;User &#34;.risk_object.&#34; accumulated &#34;.total_risk.&#34; risk over 24h&#34;
| eval mitre_techniques=mvjoin(mitre_technique, &#34;, &#34;)
| eval contributing_rules=mvjoin(search_name, &#34;, &#34;)
| sendalert notable</code></pre><p>Notable 進入 ES Incident Review、SOC analyst 看到的不只 score、還有 <em>組成這 80 分的 N 條 rule + ATT&amp;CK 覆蓋的 tactic</em>；這是 RBA 比 per-rule alert 強的核心 — analyst 直接看完整 narrative、不用拼湊。</p>
<h2 id="tuning-playbook四類常見-drift">Tuning playbook：四類常見 drift</h2>
<h3 id="playbook-afalse-positive-累積">Playbook A：False positive 累積</h3>
<p><strong>徵兆</strong>：某 user 連續 N 天觸發 notable、SOC 每次 review 後 close 為 FP；但 modifier 仍持續加分。</p>
<p><strong>根因</strong>：modifier 加分邏輯沒考慮 baseline — 例：DBA 每天用 <code>psql</code> 連 prod 是正常、<code>unusual_command</code> rule 把它當異常加 15 分、累積到 threshold。</p>
<p><strong>修法</strong>：</p>
<ol>
<li>Modifier 端加 <code>whitelist_lookup</code>：DBA / SRE / approved service account 跳過 specific modifier</li>
<li>進階：modifier 加 <code>signal_precision</code> weight、historical FP rate &gt; 30% 的 rule weight 降到 5 分以下</li>
<li>不能輕易加 <code>NOT user IN (...)</code> exclusion、long whitelist 是反模式 — 用 <em>role-based exclusion</em>（query AD group）</li>
</ol>
<h3 id="playbook-bscore-inflation">Playbook B：Score inflation</h3>
<p><strong>徵兆</strong>：threshold 設 80、SOC 收到的 notable 每 day 從 5 個漲到 25 個、但「實際攻擊」沒對應增加。</p>
<p><strong>根因</strong>：新加的 detection rule 沒對齊既有 weight 分佈、新 rule 都給 +30 / +40、global average 抬升、threshold 變相降低。</p>
<p><strong>修法</strong>：</p>
<ol>
<li>每加新 rule 時跑「+1 rule 對 daily notable 數的影響」shadow simulation</li>
<li>重新 calibrate threshold — 不是固定值、是 <em>p95 daily total_risk 的 1.5 倍</em></li>
<li>季度 review：跑 <code>index=risk | stats sum(risk_score) by source</code> 看 modifier 來源分佈、score 集中在少數 rule 是 inflation 訊號</li>
</ol>
<p><em>Tuning 提醒</em>：score inflation 跟 alert fatigue 是同樣症狀的不同根因；前者改 threshold + rule weight calibration、後者改 modifier 維度跟 whitelist。</p>
<h3 id="playbook-cthreshold-drift">Playbook C：Threshold drift</h3>
<p><strong>徵兆</strong>：threshold 設定半年沒動、但 attack landscape / business 行為都變了；要嘛 notable 太多（threshold 低於 baseline）、要嘛 missed detection（threshold 高於實際攻擊累積）。</p>
<p><strong>根因</strong>：threshold 是 <em>static value、但 baseline 是 dynamic</em>；business 流程變動（雲端遷移 / 新部門 / WFH 比例變化）影響 modifier 觸發頻率。</p>
<p><strong>修法</strong>：</p>
<ol>
<li>Quarterly tuning cadence：每季跑 <code>tstats sum(All_Risk.calculated_risk_score) by user | stats p50, p95, p99</code> 看分佈</li>
<li>Adaptive threshold：用 <code>p95 × 1.3</code> 動態計算、寫 macro 自動 update</li>
<li>不要把 threshold drift 當「rule 不準」、是 <em>基準漂移</em>、不是 rule 錯</li>
</ol>
<h3 id="playbook-ddecay-設計">Playbook D：Decay 設計</h3>
<p><strong>徵兆</strong>：user 7 天前的低分異常持續累積在 score 內、threshold 觸發 notable 但實際是 <em>7 天分散事件</em>、不是 <em>當前攻擊 episode</em>。</p>
<p><strong>根因</strong>：default RBA 在 <code>-24h</code> window 內 sum、沒考慮 <em>時間衰減</em>；7 天前的低分跟今天的低分權重一樣。</p>
<p><strong>修法</strong>：加 decay function、modifier weight 隨時間衰減：</p>





<pre tabindex="0"><code class="language-spl" data-lang="spl">| eval age_hours=(now() - _time)/3600
| eval decayed_score = calculated_risk_score * exp(-age_hours / 48)
| stats sum(decayed_score) as total_risk by risk_object</code></pre><p><code>exp(-age/48)</code> 是 48 小時半衰期、24h 前的事件權重剩 60%、48h 剩 37%、7 天前剩 &lt; 3%。half-life 依 attack pattern 調整：commodity attack 12-24h、APT 5-14 day。</p>
<h2 id="capacity-規劃">Capacity 規劃</h2>
<p>RBA 的 capacity 三個面向：</p>
<table>
  <thead>
      <tr>
          <th>維度</th>
          <th>估算方式</th>
          <th>警戒值</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Risk index event/day</td>
          <td><code>總 detection rule × 平均 trigger 次數/day</code></td>
          <td>中型 SOC ~100K-500K / day</td>
      </tr>
      <tr>
          <td>Risk datamodel size</td>
          <td><code>event/day × 365 day × 1KB avg</code></td>
          <td>100K/day × 365 × 1KB ≈ 36GB / year</td>
      </tr>
      <tr>
          <td>Search head load</td>
          <td>RBA tstats 比 raw search 便宜 ~10x、但 by-user aggregation 在 1M+ user 仍重</td>
          <td>跑 hourly notable trigger search、不是 streaming</td>
      </tr>
      <tr>
          <td>Indexer ingest</td>
          <td>RBA 不大增 ingest（已 ingest 的 log 處理出 modifier）、但 datamodel acceleration 要 CPU</td>
          <td>每 indexer 預留 10-15% CPU 給 datamodel accel</td>
      </tr>
  </tbody>
</table>
<p>實務 sizing：500K modifier/day、用戶 5K、tstats hourly trigger search、需要 <em>3 indexer + 1 search head</em>（含 RBA 之外的工作）。</p>
<blockquote>
<p>注意 <a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">SC4S / Splunk Cloud</a> ingest pricing — RBA 不增 ingest GB / day、但 datamodel acceleration 算 CPU 工作量、Splunk Cloud 是另外計費的 vCPU；on-prem 自管 indexer 沒這個 cost。</p></blockquote>
<h2 id="整合--下一步">整合 / 下一步</h2>
<h3 id="跟-soar--case-management">跟 SOAR / case management</h3>
<p>Notable 觸發後接 SOAR：</p>
<ul>
<li><strong>enrichment</strong>：自動 query AD / asset DB / threat intel、把 user role / asset criticality / known IoC 補進 case</li>
<li><strong>decision tree</strong>：根據 risk score 區間決定 SOC tier（&lt; 100 tier 1 / 100-200 tier 2 / 200+ tier 3 + page）</li>
<li><strong>playbook automation</strong>：disable user / isolate endpoint / rotate credential 走 SOAR pipeline、不要 SOC analyst 手動 click</li>
</ul>
<h3 id="跟-elastic-security--sentinel-對照">跟 <a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a> / <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Sentinel</a> 對照</h3>
<p>各家對 RBA 的實作命名不同：Splunk 叫 RBA、Elastic 叫 Risk Engine、Microsoft Sentinel 叫 Fusion + UEBA aggregation、Sumo Logic 叫 Insight Trainer；底層概念相同（score aggregation + threshold notable）、細節差在 <em>modifier 寫法跟 ML 自動化程度</em>。跨平台遷移時 modifier 邏輯多半要重寫、threshold + decay tuning 經驗可以平移。</p>
<h3 id="跟-ueba">跟 UEBA</h3>
<p>RBA 跟 UEBA（user / entity behavior analytics）是 <em>互補不是替代</em> — UEBA 用 ML 算 baseline 偏差、輸出 anomaly score 餵進 RBA 當一個 modifier 來源。實作順序通常是 <em>先靜態 rule + RBA、再加 UEBA 補充</em>；直接從 ML-first 開始通常 tuning 成本爆炸。</p>
<h3 id="下一步議題">下一步議題</h3>
<ul>
<li><strong>Threat object correlation</strong>：跨 modifier 用 threat_object 串相同 attacker artifact、score 跨 user 跨 asset 聚合</li>
<li><strong>Kill chain coverage analysis</strong>：notable 拆成「ATT&amp;CK tactic 覆蓋 N/14」、覆蓋越廣 priority 越高</li>
<li><strong>Risk-based response automation</strong>：score 區間自動觸發不同 SOAR playbook、人工只 review tier 3</li>
</ul>
<h2 id="相關連結">相關連結</h2>
<ul>
<li>上游 vendor 頁：<a href="/blog/backend/07-security-data-protection/vendors/splunk/" data-link-title="Splunk" data-link-desc="業界 SIEM 標準、forwarder &#43; indexer &#43; search head 架構、SPL 為核心查詢語言、ingestion-based 計費跟偵測覆蓋率的 trade-off">Splunk</a></li>
<li>對照案例：<a href="/blog/backend/07-security-data-protection/cases/okta-cross-tenant-impersonation-2023/" data-link-title="7.C6 Okta：Cross-tenant Impersonation 防禦回寫" data-link-desc="跨租戶 impersonation 風險如何轉成身份治理與偵測策略。">Okta Cross-Tenant Impersonation 2023</a>、<a href="/blog/backend/07-security-data-protection/cases/microsoft-storm-0558-signing-key-2023/" data-link-title="7.C4 Microsoft：Storm-0558 簽章金鑰事件" data-link-desc="簽章金鑰事件如何回寫 identity 信任邊界與觀測證據鏈。">Microsoft Storm-0558</a></li>
<li>上游 chapter：<a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a></li>
<li>平行 vendor：<a href="/blog/backend/07-security-data-protection/vendors/elastic-security/" data-link-title="Elastic Security" data-link-desc="Elastic Stack 上的 SIEM &#43; EDR &#43; Cloud Security 套件、OSS 起源、KQL/EQL/Lucene/ES|QL 多查詢語言、resource-based pricing">Elastic Security</a> / <a href="/blog/backend/07-security-data-protection/vendors/google-security-operations/" data-link-title="Google Security Operations" data-link-desc="Google 雲原生 SIEM &#43; SOAR &#43; Mandiant threat intel 三合一（前 Chronicle）、UDM &#43; YARA-L、fixed-price by data tier、PB-scale 友善">Google Security Operations</a></li>
<li>平行 deep article：<a href="/blog/backend/07-security-data-protection/vendors/hashicorp-vault/dynamic-credential/" data-link-title="HashiCorp Vault Dynamic Credential：lease 治理跟 application 整合的實作層" data-link-desc="Vault database secrets engine 怎麼配、application 怎麼 renew lease、production 五大踩雷（lease 過期 race、DB max_connections 撞牆、Vault sealed、token expire、scope 過寬）、容量規劃跟 vault-agent injector 整合">Vault Dynamic Credential</a></li>
<li>Methodology：<a href="/blog/posts/vendor-%E6%B7%B1%E5%BA%A6%E6%8A%80%E8%A1%93%E6%96%87%E7%AB%A0%E6%96%B9%E6%B3%95%E8%AB%96%E7%9A%84%E6%BC%94%E5%8C%96%E7%B4%80%E9%8C%84%E5%90%8C-vendor-%E7%B3%BB%E5%88%97%E7%9A%84%E9%96%8B%E5%A0%B4%E8%BC%AA%E6%9B%BF%E9%A9%97%E8%AD%89/" data-link-title="Vendor 深度技術文章方法論的演化紀錄：同 vendor 系列的開場輪替驗證" data-link-desc="vendor overview 飽和後要寫單一功能深度文章、需要選題與結構依據時回來。這套方法論的驗證來源與 cadence variant 在高風險場景（同 vendor sub-tool 系列）的實證。">Vendor 深度技術文章的寫作方法論</a></li>
</ul>
]]></content:encoded></item><item><title>7.B 防守者視角（藍隊）與控制面驗證</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/</link><pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/</guid><description>&lt;p>藍隊子分類的核心目標是建立防守判讀與控制面驗證路徑。這裡的藍隊定位為防守者視角的工程交接層，負責回答要防什麼、看什麼訊號、誰接手、如何驗證與如何回寫。&lt;/p>
&lt;h2 id="判讀分類">判讀分類&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>分類&lt;/th>
 &lt;th>內容方向&lt;/th>
 &lt;th>承接章節&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>Defense control map&lt;/td>
 &lt;td>身份、入口、資料、供應鏈、偵測與治理控制面&lt;/td>
 &lt;td>&lt;code>7.B1&lt;/code> + &lt;code>7.8&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Detection routing&lt;/td>
 &lt;td>signal、threshold、triage、severity、escalation&lt;/td>
 &lt;td>&lt;code>7.B2&lt;/code> + &lt;code>7.13&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Control validation&lt;/td>
 &lt;td>release gate、evidence chain、rollback、correctness&lt;/td>
 &lt;td>&lt;code>7.B3&lt;/code> + &lt;code>05/06&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Tabletop and game day&lt;/td>
 &lt;td>scenario、role、decision route、exercise write-back&lt;/td>
 &lt;td>&lt;code>7.B4&lt;/code> + &lt;code>7.19&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Incident handoff&lt;/td>
 &lt;td>owner、runbook、communication、post-incident review&lt;/td>
 &lt;td>&lt;code>7.B2&lt;/code> + &lt;code>08&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Materials&lt;/td>
 &lt;td>professional sources、field cases、scenarios、patterns&lt;/td>
 &lt;td>&lt;code>7.BM&lt;/code> + &lt;code>7.B1-7.B4&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="選型入口">選型入口&lt;/h2>
&lt;p>藍隊分析優先問「防守者如何讓風險被看見並被收斂」。當一個風險已經能被 red-team problem card 描述，下一步就是把它轉成控制面、訊號、驗證條件與回寫位置。&lt;/p>
&lt;h2 id="與安全主模組的關係">與安全主模組的關係&lt;/h2>
&lt;p>本子分類與資安主模組形成防守操作視角。資安主模組定義問題節點與路由規則，藍隊子分類負責把這些節點整理成防守判讀、控制面驗證與演練材料。&lt;/p>
&lt;h2 id="與紅隊子分類的關係">與紅隊子分類的關係&lt;/h2>
&lt;p>藍隊與紅隊共用同一批風險語言。紅隊從攻擊路徑確認弱點，藍隊從防守流程確認控制面是否能偵測、升級、驗證與回寫。&lt;/p>
&lt;h2 id="章節列表">章節列表&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>章節&lt;/th>
 &lt;th>主題&lt;/th>
 &lt;th>目標&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/defense-control-map/" data-link-title="7.B1 防守控制面地圖" data-link-desc="建立防守控制面如何對應身份、入口、資料、供應鏈、偵測與治理問題的大綱">7.B1&lt;/a>&lt;/td>
 &lt;td>防守控制面地圖&lt;/td>
 &lt;td>把 7.x 風險判讀轉成控制面與 owner&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-to-response-routing/" data-link-title="7.B2 從偵測到回應的路由" data-link-desc="建立資安偵測訊號如何轉成 triage、severity、升級與 incident workflow 的大綱">7.B2&lt;/a>&lt;/td>
 &lt;td>偵測到回應的路由&lt;/td>
 &lt;td>把 signal 轉成 triage、severity 與升級流程&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/security-control-validation/" data-link-title="7.B3 資安控制驗證" data-link-desc="建立資安控制面如何用證據、演練與 release gate 驗證的大綱">7.B3&lt;/a>&lt;/td>
 &lt;td>資安控制驗證&lt;/td>
 &lt;td>定義控制面如何用 evidence 與演練驗證&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/tabletop-and-game-day-design/" data-link-title="7.B4 Tabletop 與 Game Day 設計" data-link-desc="建立藍隊如何設計 tabletop exercise 與 game day 的大綱">7.B4&lt;/a>&lt;/td>
 &lt;td>Tabletop 與 Game Day&lt;/td>
 &lt;td>把 problem card 轉成演練與回寫任務&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5&lt;/a>&lt;/td>
 &lt;td>Detection Lifecycle&lt;/td>
 &lt;td>把偵測規則變成可維護資產與交接流程&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/incident-triage-loop/" data-link-title="7.B6 Incident Triage Loop" data-link-desc="把資安訊號轉成 triage、severity、owner、containment 與 evidence 的回應循環">7.B6&lt;/a>&lt;/td>
 &lt;td>Incident Triage Loop&lt;/td>
 &lt;td>把訊號轉成分級、接手、處置與證據循環&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/threat-informed-validation/" data-link-title="7.B7 Threat-Informed Validation" data-link-desc="用威脅導向方法驗證控制面與偵測能力，建立可重複的防守驗證路徑">7.B7&lt;/a>&lt;/td>
 &lt;td>Threat-Informed Validation&lt;/td>
 &lt;td>用威脅導向方式驗證控制面與偵測能力&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/defensive-vocabulary-map/" data-link-title="7.B8 Defensive Vocabulary Map" data-link-desc="用防守技術詞彙地圖統一控制面、偵測規則與服務交接語言">7.B8&lt;/a>&lt;/td>
 &lt;td>Defensive Vocabulary Map&lt;/td>
 &lt;td>用防守詞彙統一控制面、規則與交接語言&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/blue-team-scenario-library/" data-link-title="7.B9 Blue Team Scenario Library" data-link-desc="把高風險服務情境轉成可重用推演素材，支援 tabletop 與 game day 設計">7.B9&lt;/a>&lt;/td>
 &lt;td>Scenario Library&lt;/td>
 &lt;td>把高風險情境轉成可重播演練素材&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/" data-link-title="7.B10 Alert Fatigue and Signal Quality" data-link-desc="建立告警疲勞治理方法，讓訊號品質、分級一致性與處置效率同步提升">7.B10&lt;/a>&lt;/td>
 &lt;td>Alert Fatigue&lt;/td>
 &lt;td>建立訊號品質治理與調校策略&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/vulnerability-response-state-machine/" data-link-title="7.B11 Vulnerability Response State Machine" data-link-desc="把漏洞回應拆成狀態機，建立 observed 到 closed 的可交接流程">7.B11&lt;/a>&lt;/td>
 &lt;td>Vulnerability State Machine&lt;/td>
 &lt;td>把漏洞回應拆成可交接狀態機&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/defender-pressure-from-real-incidents/" data-link-title="7.B12 Defender Pressure From Real Incidents" data-link-desc="從真實事故抽出防守壓力模型，補強藍隊判讀、演練與交接設計">7.B12&lt;/a>&lt;/td>
 &lt;td>Defender Pressure&lt;/td>
 &lt;td>從真實事故抽出防守壓力模型與回寫路由&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/materials/" data-link-title="7.BM 藍隊素材庫" data-link-desc="整理藍隊專業來源、真實案例、推演情境與控制模式，支援防守章節的大規模延伸">7.BM&lt;/a>&lt;/td>
 &lt;td>藍隊素材庫&lt;/td>
 &lt;td>整理專業來源、現場案例、推演情境與控制模式&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>本子分類會先建立防守判讀順序與控制面驗證語言，再交接到部署、可靠性與事故流程的實作章節。&lt;/p></description><content:encoded><![CDATA[<p>藍隊子分類的核心目標是建立防守判讀與控制面驗證路徑。這裡的藍隊定位為防守者視角的工程交接層，負責回答要防什麼、看什麼訊號、誰接手、如何驗證與如何回寫。</p>
<h2 id="判讀分類">判讀分類</h2>
<table>
  <thead>
      <tr>
          <th>分類</th>
          <th>內容方向</th>
          <th>承接章節</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Defense control map</td>
          <td>身份、入口、資料、供應鏈、偵測與治理控制面</td>
          <td><code>7.B1</code> + <code>7.8</code></td>
      </tr>
      <tr>
          <td>Detection routing</td>
          <td>signal、threshold、triage、severity、escalation</td>
          <td><code>7.B2</code> + <code>7.13</code></td>
      </tr>
      <tr>
          <td>Control validation</td>
          <td>release gate、evidence chain、rollback、correctness</td>
          <td><code>7.B3</code> + <code>05/06</code></td>
      </tr>
      <tr>
          <td>Tabletop and game day</td>
          <td>scenario、role、decision route、exercise write-back</td>
          <td><code>7.B4</code> + <code>7.19</code></td>
      </tr>
      <tr>
          <td>Incident handoff</td>
          <td>owner、runbook、communication、post-incident review</td>
          <td><code>7.B2</code> + <code>08</code></td>
      </tr>
      <tr>
          <td>Materials</td>
          <td>professional sources、field cases、scenarios、patterns</td>
          <td><code>7.BM</code> + <code>7.B1-7.B4</code></td>
      </tr>
  </tbody>
</table>
<h2 id="選型入口">選型入口</h2>
<p>藍隊分析優先問「防守者如何讓風險被看見並被收斂」。當一個風險已經能被 red-team problem card 描述，下一步就是把它轉成控制面、訊號、驗證條件與回寫位置。</p>
<h2 id="與安全主模組的關係">與安全主模組的關係</h2>
<p>本子分類與資安主模組形成防守操作視角。資安主模組定義問題節點與路由規則，藍隊子分類負責把這些節點整理成防守判讀、控制面驗證與演練材料。</p>
<h2 id="與紅隊子分類的關係">與紅隊子分類的關係</h2>
<p>藍隊與紅隊共用同一批風險語言。紅隊從攻擊路徑確認弱點，藍隊從防守流程確認控制面是否能偵測、升級、驗證與回寫。</p>
<h2 id="章節列表">章節列表</h2>
<table>
  <thead>
      <tr>
          <th>章節</th>
          <th>主題</th>
          <th>目標</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/defense-control-map/" data-link-title="7.B1 防守控制面地圖" data-link-desc="建立防守控制面如何對應身份、入口、資料、供應鏈、偵測與治理問題的大綱">7.B1</a></td>
          <td>防守控制面地圖</td>
          <td>把 7.x 風險判讀轉成控制面與 owner</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/detection-to-response-routing/" data-link-title="7.B2 從偵測到回應的路由" data-link-desc="建立資安偵測訊號如何轉成 triage、severity、升級與 incident workflow 的大綱">7.B2</a></td>
          <td>偵測到回應的路由</td>
          <td>把 signal 轉成 triage、severity 與升級流程</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/security-control-validation/" data-link-title="7.B3 資安控制驗證" data-link-desc="建立資安控制面如何用證據、演練與 release gate 驗證的大綱">7.B3</a></td>
          <td>資安控制驗證</td>
          <td>定義控制面如何用 evidence 與演練驗證</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/tabletop-and-game-day-design/" data-link-title="7.B4 Tabletop 與 Game Day 設計" data-link-desc="建立藍隊如何設計 tabletop exercise 與 game day 的大綱">7.B4</a></td>
          <td>Tabletop 與 Game Day</td>
          <td>把 problem card 轉成演練與回寫任務</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5</a></td>
          <td>Detection Lifecycle</td>
          <td>把偵測規則變成可維護資產與交接流程</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/incident-triage-loop/" data-link-title="7.B6 Incident Triage Loop" data-link-desc="把資安訊號轉成 triage、severity、owner、containment 與 evidence 的回應循環">7.B6</a></td>
          <td>Incident Triage Loop</td>
          <td>把訊號轉成分級、接手、處置與證據循環</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/threat-informed-validation/" data-link-title="7.B7 Threat-Informed Validation" data-link-desc="用威脅導向方法驗證控制面與偵測能力，建立可重複的防守驗證路徑">7.B7</a></td>
          <td>Threat-Informed Validation</td>
          <td>用威脅導向方式驗證控制面與偵測能力</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/defensive-vocabulary-map/" data-link-title="7.B8 Defensive Vocabulary Map" data-link-desc="用防守技術詞彙地圖統一控制面、偵測規則與服務交接語言">7.B8</a></td>
          <td>Defensive Vocabulary Map</td>
          <td>用防守詞彙統一控制面、規則與交接語言</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/blue-team-scenario-library/" data-link-title="7.B9 Blue Team Scenario Library" data-link-desc="把高風險服務情境轉成可重用推演素材，支援 tabletop 與 game day 設計">7.B9</a></td>
          <td>Scenario Library</td>
          <td>把高風險情境轉成可重播演練素材</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/" data-link-title="7.B10 Alert Fatigue and Signal Quality" data-link-desc="建立告警疲勞治理方法，讓訊號品質、分級一致性與處置效率同步提升">7.B10</a></td>
          <td>Alert Fatigue</td>
          <td>建立訊號品質治理與調校策略</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/vulnerability-response-state-machine/" data-link-title="7.B11 Vulnerability Response State Machine" data-link-desc="把漏洞回應拆成狀態機，建立 observed 到 closed 的可交接流程">7.B11</a></td>
          <td>Vulnerability State Machine</td>
          <td>把漏洞回應拆成可交接狀態機</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/defender-pressure-from-real-incidents/" data-link-title="7.B12 Defender Pressure From Real Incidents" data-link-desc="從真實事故抽出防守壓力模型，補強藍隊判讀、演練與交接設計">7.B12</a></td>
          <td>Defender Pressure</td>
          <td>從真實事故抽出防守壓力模型與回寫路由</td>
      </tr>
      <tr>
          <td><a href="/blog/backend/07-security-data-protection/blue-team/materials/" data-link-title="7.BM 藍隊素材庫" data-link-desc="整理藍隊專業來源、真實案例、推演情境與控制模式，支援防守章節的大規模延伸">7.BM</a></td>
          <td>藍隊素材庫</td>
          <td>整理專業來源、現場案例、推演情境與控制模式</td>
      </tr>
  </tbody>
</table>
<p>本子分類會先建立防守判讀順序與控制面驗證語言，再交接到部署、可靠性與事故流程的實作章節。</p>
<p>藍隊章節的工程交接可參考 <a href="/blog/backend/07-security-data-protection/security-control-handoff-to-delivery-and-incident/" data-link-title="7.18 資安控制面如何交接到部署與事故流程" data-link-desc="建立資安控制面交接到部署、可靠性與事故流程的大綱">7.18 資安控制面如何交接到部署與事故流程</a> 與 <a href="/blog/backend/07-security-data-protection/security-exercise-from-abuse-case-to-game-day/" data-link-title="7.19 資安演練：從 Abuse Case 到 Game Day" data-link-desc="建立 abuse case、tabletop exercise 與 game day 之間的演練大綱">7.19 資安演練：從 Abuse Case 到 Game Day</a>。</p>
<h2 id="模組完成狀態">模組完成狀態</h2>
<p>藍隊章節目前已形成從控制地圖、規則生命周期、triage、威脅導向驗證到情境庫與素材庫的完整循環。素材庫共 11 張 field cases、4 張 scenarios、7 張 control patterns，並透過 <code>7.B12</code> 防守壓力地圖、<code>7.B9</code> 情境庫與 <code>7.24</code> 回寫路由串接到主章。</p>
<h2 id="下一輪素材化大綱">下一輪素材化大綱</h2>
<table>
  <thead>
      <tr>
          <th>類型</th>
          <th>建議卡片</th>
          <th>推演責任</th>
          <th>承接章節</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Field case</td>
          <td>身份濫用、入口曝險、供應鏈偏移、資料外送、協調壓力</td>
          <td>提供防守方真實壓力與決策節點</td>
          <td><code>7.B12</code></td>
      </tr>
      <tr>
          <td>Scenario</td>
          <td>身份接管推演、邊界入口推演、供應鏈 artifact 推演、低頻資料外送推演</td>
          <td>提供 tabletop 與 Game Day 劇本</td>
          <td><code>7.B9</code></td>
      </tr>
      <tr>
          <td>Control pattern</td>
          <td>owner、evidence chain、detection lifecycle、vulnerability response、exercise write-back</td>
          <td>提供可搬運控制欄位與驗證方法</td>
          <td><code>7.B1</code> + <code>7.B3</code></td>
      </tr>
      <tr>
          <td>Write-back</td>
          <td>產品回寫、架構回寫、runbook 回寫、release gate 回寫</td>
          <td>把演練結果轉成後續工程任務</td>
          <td><code>7.24</code></td>
      </tr>
  </tbody>
</table>
<p>這輪實作完成後，藍隊章節的價值會從「說明防守流程」提升為「提供可直接組裝的演練材料」。</p>
]]></content:encoded></item><item><title>LLM Service 偵測訊號覆蓋</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/llm-as-service-detection-coverage/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/llm-as-service-detection-coverage/</guid><description>&lt;p>本章的責任是把 LLM 服務的異常行為訊號、納入 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋與訊號治理&lt;/a> 的既有偵測框架。LLM 服務的偵測訊號跟一般 service 的差異在「需要看 prompt / response / tool call 三個語意層」、不只是 traffic 跟 error rate；LLM-specific 訊號的關鍵範例是 &lt;a href="https://tarrragon.github.io/blog/llm/knowledge-cards/refusal-rate/" data-link-title="Refusal Rate" data-link-desc="LLM 拒絕回答 prompt 的比例、是 production LLM 服務偵測對齊強度跟異常行為的常用訊號">refusal rate&lt;/a>、通用 alerting 詞彙見 &lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/alert/" data-link-title="Alert" data-link-desc="說明 alert 如何把需要處理的服務症狀轉成可行動通知">alert&lt;/a>、&lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/alert-fatigue/" data-link-title="Alert Fatigue" data-link-desc="說明過多低品質告警如何降低 on-call 反應品質">alert-fatigue&lt;/a>、&lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/symptom-based-alert/" data-link-title="Symptom-Based Alert" data-link-desc="說明告警應優先偵測使用者可感知症狀">symptom-based-alert&lt;/a> 卡。本章聚焦這層特殊性、通用偵測流程沿用 7.13。&lt;/p>
&lt;h2 id="本章寫作邊界">本章寫作邊界&lt;/h2>
&lt;p>本章聚焦 production LLM 服務的偵測訊號設計：tool call 異常、prompt injection 觸發徵兆、abuse 模式、cost / token 異常、模型行為偏移。通用偵測平台選型與 SIEM / SOAR 整合屬 &lt;code>04-observability&lt;/code> 跟 7.13。&lt;/p>
&lt;h2 id="本章-threat-scope">本章 threat scope&lt;/h2>
&lt;p>&lt;strong>In-scope&lt;/strong>：LLM 服務的特殊偵測訊號（prompt / response / tool call 語意層）、agent 行為異常、abuse / 濫用模式、cost 異常、模型 drift。&lt;/p>
&lt;p>&lt;strong>Out-of-scope&lt;/strong>（路由到他章）：&lt;/p>
&lt;ul>
&lt;li>通用偵測覆蓋與訊號治理 → &lt;a href="../detection-coverage-and-signal-governance/">7.13 detection-coverage-and-signal-governance&lt;/a>&lt;/li>
&lt;li>偵測平台 → &lt;code>04-observability&lt;/code>&lt;/li>
&lt;li>IR 工作流 → &lt;a href="../incident-case-to-control-workflow/">7.10 incident-case-to-control-workflow&lt;/a>&lt;/li>
&lt;li>agent prompt injection 後果 → &lt;a href="../llm-prompt-injection-in-agent/">llm-prompt-injection-in-agent&lt;/a>&lt;/li>
&lt;li>log / PII 治理 → &lt;a href="../llm-log-and-pii-governance/">llm-log-and-pii-governance&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="從本章到實作">從本章到實作&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>Mechanism&lt;/strong>：問題節點表 → knowledge-card。&lt;/li>
&lt;li>&lt;strong>Delivery&lt;/strong>：交接路由 → &lt;code>04-observability&lt;/code> 偵測平台、&lt;code>08-incident-response&lt;/code> IR 流程。&lt;/li>
&lt;/ul>
&lt;h2 id="llm-服務的偵測語意層">LLM 服務的偵測語意層&lt;/h2>
&lt;p>一般 service 的偵測訊號集中在 traffic / error / latency / auth event；LLM 服務增加了三個語意層：&lt;/p>
&lt;ol>
&lt;li>&lt;strong>prompt 語意層&lt;/strong>：使用者輸入的內容模式、prompt 長度分布、特殊 token / pattern 出現頻率。&lt;/li>
&lt;li>&lt;strong>response 語意層&lt;/strong>：模型輸出的內容類型、refusal rate、輸出長度分布、tool call 出現模式。&lt;/li>
&lt;li>&lt;strong>tool call 序列層&lt;/strong>：agent 場景下、tool call 順序、頻率、跨 tool 依賴模式。&lt;/li>
&lt;/ol>
&lt;p>這三層的訊號通常無法用傳統 monitoring stack 直接抓、需要 LLM-specific 的 telemetry pipeline。&lt;/p>
&lt;h2 id="分析模型">分析模型&lt;/h2>
&lt;p>LLM 服務偵測依四個層次設計訊號：&lt;/p>
&lt;ol>
&lt;li>&lt;strong>traffic 層&lt;/strong>：跟一般 service 一致、QPS / latency / error rate / auth event。&lt;/li>
&lt;li>&lt;strong>content 層&lt;/strong>：prompt 跟 response 的語意特徵（長度、token 類型、敏感詞）。&lt;/li>
&lt;li>&lt;strong>behavior 層&lt;/strong>：tool call 序列、agent loop 步數、cross-service call pattern。&lt;/li>
&lt;li>&lt;strong>cost 層&lt;/strong>：token / call 累積、cost 異常（單一 tenant 突然暴增、cost-per-result 飆高）。&lt;/li>
&lt;/ol>
&lt;h2 id="判讀流程">判讀流程&lt;/h2>
&lt;p>判讀流程的責任是把「能偵測一般服務異常的偵測平台」擴成「能偵測 LLM 特殊異常的偵測平台」。&lt;/p></description><content:encoded><![CDATA[<p>本章的責任是把 LLM 服務的異常行為訊號、納入 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋與訊號治理</a> 的既有偵測框架。LLM 服務的偵測訊號跟一般 service 的差異在「需要看 prompt / response / tool call 三個語意層」、不只是 traffic 跟 error rate；LLM-specific 訊號的關鍵範例是 <a href="/blog/llm/knowledge-cards/refusal-rate/" data-link-title="Refusal Rate" data-link-desc="LLM 拒絕回答 prompt 的比例、是 production LLM 服務偵測對齊強度跟異常行為的常用訊號">refusal rate</a>、通用 alerting 詞彙見 <a href="/blog/backend/knowledge-cards/alert/" data-link-title="Alert" data-link-desc="說明 alert 如何把需要處理的服務症狀轉成可行動通知">alert</a>、<a href="/blog/backend/knowledge-cards/alert-fatigue/" data-link-title="Alert Fatigue" data-link-desc="說明過多低品質告警如何降低 on-call 反應品質">alert-fatigue</a>、<a href="/blog/backend/knowledge-cards/symptom-based-alert/" data-link-title="Symptom-Based Alert" data-link-desc="說明告警應優先偵測使用者可感知症狀">symptom-based-alert</a> 卡。本章聚焦這層特殊性、通用偵測流程沿用 7.13。</p>
<h2 id="本章寫作邊界">本章寫作邊界</h2>
<p>本章聚焦 production LLM 服務的偵測訊號設計：tool call 異常、prompt injection 觸發徵兆、abuse 模式、cost / token 異常、模型行為偏移。通用偵測平台選型與 SIEM / SOAR 整合屬 <code>04-observability</code> 跟 7.13。</p>
<h2 id="本章-threat-scope">本章 threat scope</h2>
<p><strong>In-scope</strong>：LLM 服務的特殊偵測訊號（prompt / response / tool call 語意層）、agent 行為異常、abuse / 濫用模式、cost 異常、模型 drift。</p>
<p><strong>Out-of-scope</strong>（路由到他章）：</p>
<ul>
<li>通用偵測覆蓋與訊號治理 → <a href="../detection-coverage-and-signal-governance/">7.13 detection-coverage-and-signal-governance</a></li>
<li>偵測平台 → <code>04-observability</code></li>
<li>IR 工作流 → <a href="../incident-case-to-control-workflow/">7.10 incident-case-to-control-workflow</a></li>
<li>agent prompt injection 後果 → <a href="../llm-prompt-injection-in-agent/">llm-prompt-injection-in-agent</a></li>
<li>log / PII 治理 → <a href="../llm-log-and-pii-governance/">llm-log-and-pii-governance</a></li>
</ul>
<h2 id="從本章到實作">從本章到實作</h2>
<ul>
<li><strong>Mechanism</strong>：問題節點表 → knowledge-card。</li>
<li><strong>Delivery</strong>：交接路由 → <code>04-observability</code> 偵測平台、<code>08-incident-response</code> IR 流程。</li>
</ul>
<h2 id="llm-服務的偵測語意層">LLM 服務的偵測語意層</h2>
<p>一般 service 的偵測訊號集中在 traffic / error / latency / auth event；LLM 服務增加了三個語意層：</p>
<ol>
<li><strong>prompt 語意層</strong>：使用者輸入的內容模式、prompt 長度分布、特殊 token / pattern 出現頻率。</li>
<li><strong>response 語意層</strong>：模型輸出的內容類型、refusal rate、輸出長度分布、tool call 出現模式。</li>
<li><strong>tool call 序列層</strong>：agent 場景下、tool call 順序、頻率、跨 tool 依賴模式。</li>
</ol>
<p>這三層的訊號通常無法用傳統 monitoring stack 直接抓、需要 LLM-specific 的 telemetry pipeline。</p>
<h2 id="分析模型">分析模型</h2>
<p>LLM 服務偵測依四個層次設計訊號：</p>
<ol>
<li><strong>traffic 層</strong>：跟一般 service 一致、QPS / latency / error rate / auth event。</li>
<li><strong>content 層</strong>：prompt 跟 response 的語意特徵（長度、token 類型、敏感詞）。</li>
<li><strong>behavior 層</strong>：tool call 序列、agent loop 步數、cross-service call pattern。</li>
<li><strong>cost 層</strong>：token / call 累積、cost 異常（單一 tenant 突然暴增、cost-per-result 飆高）。</li>
</ol>
<h2 id="判讀流程">判讀流程</h2>
<p>判讀流程的責任是把「能偵測一般服務異常的偵測平台」擴成「能偵測 LLM 特殊異常的偵測平台」。</p>
<ol>
<li>先盤點現有偵測平台覆蓋哪些訊號類別、哪些是 LLM-specific 缺漏。</li>
<li>再設計 LLM-specific 訊號的採集路徑（log → metric → alert）。</li>
<li>接著定義 baseline 跟 anomaly threshold、避免假陽性過高。</li>
<li>最後交接到 IR 流程、確認 alert 能對應到具體處置動作。</li>
</ol>
<h2 id="問題節點案例觸發式">問題節點（案例觸發式）</h2>
<table>
  <thead>
      <tr>
          <th>問題節點</th>
          <th>判讀訊號</th>
          <th>風險後果</th>
          <th>前置控制面</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>tool call 序列異常</td>
          <td>同一 session 內 tool call 暴增、跨 tool 跳躍頻繁</td>
          <td>injection 觸發 agent 進入非預期 loop</td>
          <td><a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">detection-coverage-and-signal-governance</a></td>
      </tr>
      <tr>
          <td>Refusal rate 突然下降</td>
          <td>模型開始接受原本拒絕的 prompt</td>
          <td>對齊被繞過、injection 攻擊在進行</td>
          <td><a href="/blog/backend/knowledge-cards/symptom-based-alert/" data-link-title="Symptom-Based Alert" data-link-desc="說明告警應優先偵測使用者可感知症狀">symptom-based-alert</a></td>
      </tr>
      <tr>
          <td>token usage 異常飆升</td>
          <td>單一 tenant cost 跳一個量級</td>
          <td>abuse / DoS / 自動化攻擊</td>
          <td><a href="/blog/backend/knowledge-cards/rate-limit/" data-link-title="Rate Limit" data-link-desc="說明限流如何保護服務入口、下游依賴與租戶公平性">rate-limit</a></td>
      </tr>
      <tr>
          <td>prompt 含 injection 模式</td>
          <td>&ldquo;ignore previous instructions&rdquo; / 大量 system prompt 字樣</td>
          <td>已知 injection 模式試探</td>
          <td><a href="/blog/backend/knowledge-cards/symptom-based-alert/" data-link-title="Symptom-Based Alert" data-link-desc="說明告警應優先偵測使用者可感知症狀">symptom-based-alert</a></td>
      </tr>
      <tr>
          <td>response 含 PII 模式</td>
          <td>模型輸出含信用卡 / 身分證號碼 pattern</td>
          <td>訓練資料洩漏 / hallucinate PII</td>
          <td><a href="/blog/backend/07-security-data-protection/data-protection-and-masking-governance/" data-link-title="7.4 資料保護與遮罩治理" data-link-desc="以問題驅動方式整理資料分級、遮罩、匯出與備份治理">data-protection</a></td>
      </tr>
      <tr>
          <td>跨 tenant pattern 相似性</td>
          <td>不同 tenant 同時出現相似異常 prompt</td>
          <td>協同攻擊 / botnet</td>
          <td><a href="/blog/backend/knowledge-cards/symptom-based-alert/" data-link-title="Symptom-Based Alert" data-link-desc="說明告警應優先偵測使用者可感知症狀">symptom-based-alert</a></td>
      </tr>
      <tr>
          <td>模型 drift</td>
          <td>同 prompt 在不同時段 response 品質明顯變化</td>
          <td>模型版本切換問題 / vendor 端變動</td>
          <td><a href="/blog/backend/knowledge-cards/contract/" data-link-title="Boundary Contract" data-link-desc="說明跨邊界約定如何維持相容與可驗證">contract-test</a></td>
      </tr>
  </tbody>
</table>
<h2 id="常見風險邊界">常見風險邊界</h2>
<p>風險邊界的責任是界定何時 LLM 偵測覆蓋已進入高壓狀態。</p>
<ul>
<li>tool call 序列、refusal rate、token usage 任一缺乏 baseline 時、代表 content / behavior / cost 層偵測不足。</li>
<li>prompt injection 已知 pattern 沒列入 alert 時、代表已知威脅未覆蓋。</li>
<li>跨 tenant 模式分析缺失時、代表協同攻擊偵測能力不足。</li>
<li>alert 沒對應到 IR 處置動作時、代表偵測與處置斷層。</li>
</ul>
<h2 id="llm-場景的特殊判讀">LLM 場景的特殊判讀</h2>
<p>LLM 服務偵測相對一般 service 偵測的特殊性：</p>
<ol>
<li><strong>訊號是非結構化的</strong>：prompt / response 是自由文字、不是 status code 跟 endpoint name；偵測 pipeline 需要 NLP / embedding 等手段、不只是 grep / regex。</li>
<li><strong>baseline 漂移</strong>：使用者行為跟 LLM 使用模式持續演進、baseline 比一般 service 更需要 rolling window 更新。</li>
<li><strong>「正常」prompt 跟「injection」prompt 的邊界模糊</strong>：教 LLM 寫 prompt injection 教材的使用者、prompt 內容跟攻擊者的測試 prompt 形式上類似；偵測需要結合 intent 跟 context。</li>
<li><strong>cost-based detection 是 LLM 特有的 strong signal</strong>：傳統 service 的「cost」對應 infra、容易被視為運維議題；LLM service 的 token cost 直接連結到 abuse、cost 異常本身是強訊號。</li>
<li><strong>跨 tenant 相關性分析</strong>：協同攻擊跟 botnet 在 LLM 服務上、可能用相同 prompt 在不同帳號試探；跨 tenant pattern 分析比一般 service 更有用。</li>
<li><strong>模型 vendor 是 third-party 失敗點</strong>：vendor 端的模型更新、API 限流、政策變更會直接影響服務行為；需要 vendor-side 訊號（status page、release notes）納入偵測範圍。</li>
</ol>
<h2 id="訊號設計的核心原則">訊號設計的核心原則</h2>
<ol>
<li><strong>traffic 層沿用既有監控</strong>：QPS / latency / error rate / 5xx、跟一般 service 一致、用既有平台。</li>
<li><strong>content 層需建 NLP pipeline</strong>：prompt 長度分布、敏感詞 detector、injection pattern detector、response PII detector。</li>
<li><strong>behavior 層追蹤 tool call 序列</strong>：每個 session 的 tool call DAG、跟 baseline 比對。</li>
<li><strong>cost 層做 tenant-scoped baseline</strong>：每個 tenant 的 token / cost 用 rolling baseline、突破 threshold 觸發 alert。</li>
<li><strong>跨 tenant pattern 用 embedding 相似性</strong>：用 prompt embedding 做相似性分析、找協同攻擊。</li>
<li><strong>vendor-side 訊號納入</strong>：vendor status page、release notes、incident 公告應該 watch、作為 external signal source。</li>
</ol>
<h2 id="案例觸發參考">案例觸發參考</h2>
<p>LLM 服務偵測的公開案例累積中、值得追蹤的方向：</p>
<ul>
<li>大型 LLM vendor 的 abuse detection pipeline 公開介紹</li>
<li>prompt injection 攻擊在 production agent 場景的真實案例</li>
<li>token usage abuse 的 botnet 案例</li>
</ul>
<p>LLM-specific 偵測案例累積後會補入 <code>red-team/cases/llm-detection/</code>。一般偵測案例見 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 detection-coverage-and-signal-governance</a>。</p>
<blockquote>
<p><strong>事實查核註</strong>：LLM 服務的偵測 baseline、attack pattern、defense 工具都在快速演進、本章列舉的訊號類型為 2026 年 5 月常見社群實踐、具體 threshold、tooling、commercial product 依時段變化、引用前以最新研究跟產品文件為準。</p></blockquote>
<h2 id="引用標準">引用標準</h2>
<table>
  <thead>
      <tr>
          <th>標準</th>
          <th>版本 / 年份</th>
          <th>適用場景</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>MITRE ATLAS</td>
          <td>continuous</td>
          <td>AI 系統威脅戰術 / 偵測戰術 reference</td>
      </tr>
      <tr>
          <td>OWASP LLM Top 10</td>
          <td>2025</td>
          <td>LLM application security 通用 reference</td>
      </tr>
      <tr>
          <td>NIST AI RMF</td>
          <td>1.0 (2023)</td>
          <td>AI 系統風險偵測 reference</td>
      </tr>
      <tr>
          <td>MITRE ATT&amp;CK</td>
          <td>continuous</td>
          <td>一般系統威脅戰術、部分適用 LLM 服務基礎設施</td>
      </tr>
  </tbody>
</table>
<p>引用版本與 cadence 規則見 <a href="/blog/report/security-citation-currency-and-precision/" data-link-title="Security 標準引用的時效性與精確度" data-link-desc="資安 citation 跟一般技術引用不同——best practice 時效短（MD5 / SHA-1 / bcrypt 100k / TLS 1.0 都曾是 best practice）、原文常被引用扭曲（conditional → unconditional drift）、版本不標 reader 會套用過時 spec。citation 同時涵蓋外部標準（OWASP / RFC / NIST / CIS）跟內部 citation（knowledge-cards / 跨章引用作為 control-of-record）；後者因無版本號 anchor 反而更易 silent drift / broken。每條 citation 必須附：版本 / 年份、引用句意可回溯、deprecated / superseded 標記、強度參數對應 actor 能力的 review trigger（外部）/ last-checked &#43; sync owner（內部）。">security-citation-currency-and-precision</a>。Last reviewed: 2026-05-12。</p>
<h2 id="下一步路由">下一步路由</h2>
<ul>
<li>通用偵測覆蓋：<a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 detection-coverage-and-signal-governance</a></li>
<li>偵測平台：<code>04-observability</code></li>
<li>agent prompt injection 後果：<a href="/blog/backend/07-security-data-protection/llm-prompt-injection-in-agent/" data-link-title="LLM Agent Prompt Injection 後果治理" data-link-desc="production LLM agent 場景的 prompt injection 後果：tool spec 設計、agent loop 限制、review checkpoint、跟 incident workflow 的接合">llm-prompt-injection-in-agent</a></li>
<li>log / PII 治理：<a href="/blog/backend/07-security-data-protection/llm-log-and-pii-governance/" data-link-title="LLM Log 與 PII 治理" data-link-desc="production LLM 服務的 prompt log 累積、PII 偵測與過濾、保留期限與合規對齊">llm-log-and-pii-governance</a></li>
<li>事件案例工作流：<a href="/blog/backend/07-security-data-protection/incident-case-to-control-workflow/" data-link-title="7.16 從公開事故到工程 Workflow：案例如何回寫控制面" data-link-desc="建立公開事故如何轉成控制面失效樣式與 workflow 回寫的大綱">7.10 incident-case-to-control-workflow</a></li>
</ul>
]]></content:encoded></item><item><title>7.B2 從偵測到回應的路由</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-to-response-routing/</link><pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-to-response-routing/</guid><description>&lt;p>本篇的責任是把資安偵測訊號轉成回應路由。讀者讀完後，能把 alert、&lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/tripwire/" data-link-title="Tripwire" data-link-desc="說明風險決策在條件變化時如何自動回到評估流程">tripwire&lt;/a>、audit signal 或外部通報，轉成 triage、severity、owner 與升級流程。&lt;/p>
&lt;h2 id="核心論點">核心論點&lt;/h2>
&lt;p>偵測到回應路由的核心概念是「訊號要能推動決策」。偵測本身提供觀察，回應路由則定義誰判讀、如何分級、何時升級、何時關閉。&lt;/p>
&lt;h2 id="讀者入口">讀者入口&lt;/h2>
&lt;p>本篇適合銜接 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理&lt;/a>、&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/security-governance-exception-and-tripwire/" data-link-title="7.14 資安治理例外與 Tripwire" data-link-desc="定義例外管理、風險接受與重新評估觸發器">7.14 資安治理例外與 Tripwire&lt;/a> 與 &lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/escalation-policy/" data-link-title="Escalation Policy" data-link-desc="說明事故升級鏈與值班轉接規則">Escalation Policy&lt;/a>。&lt;/p>
&lt;h2 id="路由欄位">路由欄位&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>欄位&lt;/th>
 &lt;th>責任&lt;/th>
 &lt;th>常見來源&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>Signal&lt;/td>
 &lt;td>描述觸發事件與觀察證據&lt;/td>
 &lt;td>alert、audit log、external advisory&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Triage question&lt;/td>
 &lt;td>定義第一輪判讀問題&lt;/td>
 &lt;td>影響範圍、可信度、緊急度&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Severity&lt;/td>
 &lt;td>對應產品影響與回應節奏&lt;/td>
 &lt;td>incident severity&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Owner&lt;/td>
 &lt;td>定義接手角色與升級路徑&lt;/td>
 &lt;td>on-call、service owner、security owner&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Exit condition&lt;/td>
 &lt;td>定義本輪回應的關閉條件&lt;/td>
 &lt;td>containment、validation、write-back&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>路由欄位的核心是把訊號轉成可執行任務。若欄位完整，團隊在壓力下仍能用一致方式判讀與升級。&lt;/p>
&lt;h2 id="訊號分類">訊號分類&lt;/h2>
&lt;p>訊號分類的責任是建立優先順序。建議先區分三種來源：&lt;/p>
&lt;ol>
&lt;li>技術訊號：監控、掃描、驗證結果。&lt;/li>
&lt;li>流程訊號：例外到期、審查延遲、關卡失敗。&lt;/li>
&lt;li>外部訊號：公開漏洞、供應鏈公告、客戶通報。&lt;/li>
&lt;/ol>
&lt;h2 id="triage-問題設計">Triage 問題設計&lt;/h2>
&lt;p>Triage 問題的責任是縮短第一輪決策時間。常用問題包含：&lt;/p>
&lt;ol>
&lt;li>影響範圍是否持續擴大。&lt;/li>
&lt;li>訊號可信度是否足夠觸發升級。&lt;/li>
&lt;li>目前證據是否支持 containment。&lt;/li>
&lt;li>目前事件是否需要跨團隊決策。&lt;/li>
&lt;/ol>
&lt;h2 id="severity-對齊">Severity 對齊&lt;/h2>
&lt;p>Severity 對齊的責任是讓資安訊號與 incident 節奏一致。這一層建議直接掛到 &lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/incident-severity/" data-link-title="Incident Severity" data-link-desc="說明事故分級如何把產品影響轉成對應處置節奏">incident severity&lt;/a> 與 &lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/escalation-policy/" data-link-title="Escalation Policy" data-link-desc="說明事故升級鏈與值班轉接規則">escalation policy&lt;/a>。&lt;/p>
&lt;p>做法上可先定義分級規則，再為每個分級綁定 owner、通訊節奏與關閉條件。&lt;/p>
&lt;h2 id="response-路由">Response 路由&lt;/h2>
&lt;p>Response 路由的責任是把分級後動作排成流程。建議最小流程：&lt;/p>
&lt;ol>
&lt;li>Containment：先穩定影響面。&lt;/li>
&lt;li>Evidence collection：同步保留關鍵證據。&lt;/li>
&lt;li>Communication：同步內外部利害關係人。&lt;/li>
&lt;li>Write-back plan：預留回寫任務入口。&lt;/li>
&lt;/ol>
&lt;h2 id="exit-與回寫">Exit 與回寫&lt;/h2>
&lt;p>Exit 的責任是定義這輪事件何時完成。關閉前應確認：&lt;/p>
&lt;ol>
&lt;li>影響面收斂到目標範圍。&lt;/li>
&lt;li>事件證據可回查。&lt;/li>
&lt;li>後續任務已進入問題卡與 workflow。&lt;/li>
&lt;/ol>
&lt;p>回寫位置建議固定到 detection rule、problem card 與 incident workflow，讓下一輪判讀更快收斂。&lt;/p>
&lt;h2 id="判讀訊號與路由">判讀訊號與路由&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>判讀訊號&lt;/th>
 &lt;th>代表需求&lt;/th>
 &lt;th>下一步路由&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>告警名稱清楚但處理者判讀不一致&lt;/td>
 &lt;td>需要 triage question&lt;/td>
 &lt;td>7.B2 → 08&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>tripwire 觸發後缺少升級對象&lt;/td>
 &lt;td>需要 escalation route&lt;/td>
 &lt;td>7.B2 → 7.14&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>外部公告進來後影響範圍判斷緩慢&lt;/td>
 &lt;td>需要 service owner map&lt;/td>
 &lt;td>7.B2 → 7.B1&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>回應結束後偵測規則沒有更新&lt;/td>
 &lt;td>需要 write-back loop&lt;/td>
 &lt;td>7.B2 → 7.16&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>判讀表格可以直接當作值班檢查單。每次事件結束後重新掃一次，能快速找到下輪優先補強項目。&lt;/p>
&lt;h2 id="必連章節">必連章節&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/security-governance-exception-and-tripwire/" data-link-title="7.14 資安治理例外與 Tripwire" data-link-desc="定義例外管理、風險接受與重新評估觸發器">7.14 資安治理例外與 Tripwire&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/incident-case-to-control-workflow/" data-link-title="7.16 從公開事故到工程 Workflow：案例如何回寫控制面" data-link-desc="建立公開事故如何轉成控制面失效樣式與 workflow 回寫的大綱">7.16 從公開事故到工程 Workflow&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/defense-control-map/" data-link-title="7.B1 防守控制面地圖" data-link-desc="建立防守控制面如何對應身份、入口、資料、供應鏈、偵測與治理問題的大綱">7.B1 防守控制面地圖&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="完稿判準">完稿判準&lt;/h2>
&lt;p>完稿時要讓讀者能把一個偵測訊號寫成回應路由。路由至少包含 signal、triage question、severity、owner、escalation path、exit condition 與 write-back target。&lt;/p></description><content:encoded><![CDATA[<p>本篇的責任是把資安偵測訊號轉成回應路由。讀者讀完後，能把 alert、<a href="/blog/backend/knowledge-cards/tripwire/" data-link-title="Tripwire" data-link-desc="說明風險決策在條件變化時如何自動回到評估流程">tripwire</a>、audit signal 或外部通報，轉成 triage、severity、owner 與升級流程。</p>
<h2 id="核心論點">核心論點</h2>
<p>偵測到回應路由的核心概念是「訊號要能推動決策」。偵測本身提供觀察，回應路由則定義誰判讀、如何分級、何時升級、何時關閉。</p>
<h2 id="讀者入口">讀者入口</h2>
<p>本篇適合銜接 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a>、<a href="/blog/backend/07-security-data-protection/security-governance-exception-and-tripwire/" data-link-title="7.14 資安治理例外與 Tripwire" data-link-desc="定義例外管理、風險接受與重新評估觸發器">7.14 資安治理例外與 Tripwire</a> 與 <a href="/blog/backend/knowledge-cards/escalation-policy/" data-link-title="Escalation Policy" data-link-desc="說明事故升級鏈與值班轉接規則">Escalation Policy</a>。</p>
<h2 id="路由欄位">路由欄位</h2>
<table>
  <thead>
      <tr>
          <th>欄位</th>
          <th>責任</th>
          <th>常見來源</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Signal</td>
          <td>描述觸發事件與觀察證據</td>
          <td>alert、audit log、external advisory</td>
      </tr>
      <tr>
          <td>Triage question</td>
          <td>定義第一輪判讀問題</td>
          <td>影響範圍、可信度、緊急度</td>
      </tr>
      <tr>
          <td>Severity</td>
          <td>對應產品影響與回應節奏</td>
          <td>incident severity</td>
      </tr>
      <tr>
          <td>Owner</td>
          <td>定義接手角色與升級路徑</td>
          <td>on-call、service owner、security owner</td>
      </tr>
      <tr>
          <td>Exit condition</td>
          <td>定義本輪回應的關閉條件</td>
          <td>containment、validation、write-back</td>
      </tr>
  </tbody>
</table>
<p>路由欄位的核心是把訊號轉成可執行任務。若欄位完整，團隊在壓力下仍能用一致方式判讀與升級。</p>
<h2 id="訊號分類">訊號分類</h2>
<p>訊號分類的責任是建立優先順序。建議先區分三種來源：</p>
<ol>
<li>技術訊號：監控、掃描、驗證結果。</li>
<li>流程訊號：例外到期、審查延遲、關卡失敗。</li>
<li>外部訊號：公開漏洞、供應鏈公告、客戶通報。</li>
</ol>
<h2 id="triage-問題設計">Triage 問題設計</h2>
<p>Triage 問題的責任是縮短第一輪決策時間。常用問題包含：</p>
<ol>
<li>影響範圍是否持續擴大。</li>
<li>訊號可信度是否足夠觸發升級。</li>
<li>目前證據是否支持 containment。</li>
<li>目前事件是否需要跨團隊決策。</li>
</ol>
<h2 id="severity-對齊">Severity 對齊</h2>
<p>Severity 對齊的責任是讓資安訊號與 incident 節奏一致。這一層建議直接掛到 <a href="/blog/backend/knowledge-cards/incident-severity/" data-link-title="Incident Severity" data-link-desc="說明事故分級如何把產品影響轉成對應處置節奏">incident severity</a> 與 <a href="/blog/backend/knowledge-cards/escalation-policy/" data-link-title="Escalation Policy" data-link-desc="說明事故升級鏈與值班轉接規則">escalation policy</a>。</p>
<p>做法上可先定義分級規則，再為每個分級綁定 owner、通訊節奏與關閉條件。</p>
<h2 id="response-路由">Response 路由</h2>
<p>Response 路由的責任是把分級後動作排成流程。建議最小流程：</p>
<ol>
<li>Containment：先穩定影響面。</li>
<li>Evidence collection：同步保留關鍵證據。</li>
<li>Communication：同步內外部利害關係人。</li>
<li>Write-back plan：預留回寫任務入口。</li>
</ol>
<h2 id="exit-與回寫">Exit 與回寫</h2>
<p>Exit 的責任是定義這輪事件何時完成。關閉前應確認：</p>
<ol>
<li>影響面收斂到目標範圍。</li>
<li>事件證據可回查。</li>
<li>後續任務已進入問題卡與 workflow。</li>
</ol>
<p>回寫位置建議固定到 detection rule、problem card 與 incident workflow，讓下一輪判讀更快收斂。</p>
<h2 id="判讀訊號與路由">判讀訊號與路由</h2>
<table>
  <thead>
      <tr>
          <th>判讀訊號</th>
          <th>代表需求</th>
          <th>下一步路由</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>告警名稱清楚但處理者判讀不一致</td>
          <td>需要 triage question</td>
          <td>7.B2 → 08</td>
      </tr>
      <tr>
          <td>tripwire 觸發後缺少升級對象</td>
          <td>需要 escalation route</td>
          <td>7.B2 → 7.14</td>
      </tr>
      <tr>
          <td>外部公告進來後影響範圍判斷緩慢</td>
          <td>需要 service owner map</td>
          <td>7.B2 → 7.B1</td>
      </tr>
      <tr>
          <td>回應結束後偵測規則沒有更新</td>
          <td>需要 write-back loop</td>
          <td>7.B2 → 7.16</td>
      </tr>
  </tbody>
</table>
<p>判讀表格可以直接當作值班檢查單。每次事件結束後重新掃一次，能快速找到下輪優先補強項目。</p>
<h2 id="必連章節">必連章節</h2>
<ul>
<li><a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a></li>
<li><a href="/blog/backend/07-security-data-protection/security-governance-exception-and-tripwire/" data-link-title="7.14 資安治理例外與 Tripwire" data-link-desc="定義例外管理、風險接受與重新評估觸發器">7.14 資安治理例外與 Tripwire</a></li>
<li><a href="/blog/backend/07-security-data-protection/incident-case-to-control-workflow/" data-link-title="7.16 從公開事故到工程 Workflow：案例如何回寫控制面" data-link-desc="建立公開事故如何轉成控制面失效樣式與 workflow 回寫的大綱">7.16 從公開事故到工程 Workflow</a></li>
<li><a href="/blog/backend/07-security-data-protection/blue-team/defense-control-map/" data-link-title="7.B1 防守控制面地圖" data-link-desc="建立防守控制面如何對應身份、入口、資料、供應鏈、偵測與治理問題的大綱">7.B1 防守控制面地圖</a></li>
</ul>
<h2 id="完稿判準">完稿判準</h2>
<p>完稿時要讓讀者能把一個偵測訊號寫成回應路由。路由至少包含 signal、triage question、severity、owner、escalation path、exit condition 與 write-back target。</p>
]]></content:encoded></item><item><title>7.B10 Alert Fatigue and Signal Quality</title><link>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/</link><pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/alert-fatigue-and-signal-quality/</guid><description>&lt;p>本篇的責任是建立 alert fatigue 治理方法。讀者讀完後，能把噪音告警轉成可分級、可交接、可調校的訊號集合。&lt;/p>
&lt;h2 id="核心論點">核心論點&lt;/h2>
&lt;p>Alert fatigue 治理的核心概念是把告警品質當系統能力管理。判讀效率與決策一致性是主要目標，告警數量則作為輔助觀測指標。&lt;/p>
&lt;h2 id="讀者入口">讀者入口&lt;/h2>
&lt;p>本篇適合銜接 &lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理&lt;/a>、&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5 Detection Engineering Lifecycle&lt;/a> 與 &lt;a href="https://tarrragon.github.io/blog/backend/knowledge-cards/alert-fatigue/" data-link-title="Alert Fatigue" data-link-desc="說明過多低品質告警如何降低 on-call 反應品質">alert fatigue&lt;/a>。&lt;/p>
&lt;h2 id="訊號品質欄位">訊號品質欄位&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>欄位&lt;/th>
 &lt;th>責任&lt;/th>
 &lt;th>指標&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>Precision&lt;/td>
 &lt;td>降低誤報密度&lt;/td>
 &lt;td>false positive rate&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Recall&lt;/td>
 &lt;td>保持重要事件命中&lt;/td>
 &lt;td>missed detection rate&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Context richness&lt;/td>
 &lt;td>提供足夠判讀上下文&lt;/td>
 &lt;td>triage completion rate&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Routing quality&lt;/td>
 &lt;td>提供正確接手路由&lt;/td>
 &lt;td>misrouting rate&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Actionability&lt;/td>
 &lt;td>提供可執行下一步&lt;/td>
 &lt;td>response start time&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="告警分層">告警分層&lt;/h2>
&lt;p>告警分層的責任是讓值班負載可控。分層可依風險與動作分成：&lt;/p>
&lt;ol>
&lt;li>Informational：觀測型訊號。&lt;/li>
&lt;li>Action-required：需值班處理。&lt;/li>
&lt;li>Escalation-required：需跨團隊升級。&lt;/li>
&lt;/ol>
&lt;h2 id="調校節奏">調校節奏&lt;/h2>
&lt;p>調校節奏的責任是讓告警品質持續改善。每輪調校至少記錄觸發條件、誤報來源、調整內容、影響範圍與回退條件。&lt;/p>
&lt;h2 id="與-triage-loop-對齊">與 triage loop 對齊&lt;/h2>
&lt;p>與 triage loop 對齊的責任是讓告警到回應保持一致。告警內容至少提供 signal source、impact hint、recommended owner 與下一步路由。&lt;/p>
&lt;h2 id="判讀訊號與路由">判讀訊號與路由&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>判讀訊號&lt;/th>
 &lt;th>代表需求&lt;/th>
 &lt;th>下一步路由&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>值班人員持續手動排除同類告警&lt;/td>
 &lt;td>需要規則調校與分層&lt;/td>
 &lt;td>7.B10 → 7.B5&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>告警描述不足以支持分級&lt;/td>
 &lt;td>需要補 context 欄位&lt;/td>
 &lt;td>7.B10 → 7.B6&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>告警量下降但漏報上升&lt;/td>
 &lt;td>需要平衡 precision 與 recall&lt;/td>
 &lt;td>7.B10 → 7.B7&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>告警調整缺少變更證據&lt;/td>
 &lt;td>需要補 release gate 記錄&lt;/td>
 &lt;td>7.B10 → 7.22&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="必連章節">必連章節&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5 Detection Engineering Lifecycle&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/blue-team/incident-triage-loop/" data-link-title="7.B6 Incident Triage Loop" data-link-desc="把資安訊號轉成 triage、severity、owner、containment 與 evidence 的回應循環">7.B6 Incident Triage Loop&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://tarrragon.github.io/blog/backend/07-security-data-protection/security-risk-in-release-gate/" data-link-title="7.22 資安風險如何進入 Release Gate" data-link-desc="把資安風險、例外與驗證證據納入 release gate，建立可稽核的放行判準">7.22 資安風險如何進入 Release Gate&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="完稿判準">完稿判準&lt;/h2>
&lt;p>完稿時要讓讀者能為告警系統建立品質治理循環。輸出至少包含品質欄位、分層策略、調校節奏、對齊路由與回寫位置。&lt;/p></description><content:encoded><![CDATA[<p>本篇的責任是建立 alert fatigue 治理方法。讀者讀完後，能把噪音告警轉成可分級、可交接、可調校的訊號集合。</p>
<h2 id="核心論點">核心論點</h2>
<p>Alert fatigue 治理的核心概念是把告警品質當系統能力管理。判讀效率與決策一致性是主要目標，告警數量則作為輔助觀測指標。</p>
<h2 id="讀者入口">讀者入口</h2>
<p>本篇適合銜接 <a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a>、<a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5 Detection Engineering Lifecycle</a> 與 <a href="/blog/backend/knowledge-cards/alert-fatigue/" data-link-title="Alert Fatigue" data-link-desc="說明過多低品質告警如何降低 on-call 反應品質">alert fatigue</a>。</p>
<h2 id="訊號品質欄位">訊號品質欄位</h2>
<table>
  <thead>
      <tr>
          <th>欄位</th>
          <th>責任</th>
          <th>指標</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Precision</td>
          <td>降低誤報密度</td>
          <td>false positive rate</td>
      </tr>
      <tr>
          <td>Recall</td>
          <td>保持重要事件命中</td>
          <td>missed detection rate</td>
      </tr>
      <tr>
          <td>Context richness</td>
          <td>提供足夠判讀上下文</td>
          <td>triage completion rate</td>
      </tr>
      <tr>
          <td>Routing quality</td>
          <td>提供正確接手路由</td>
          <td>misrouting rate</td>
      </tr>
      <tr>
          <td>Actionability</td>
          <td>提供可執行下一步</td>
          <td>response start time</td>
      </tr>
  </tbody>
</table>
<h2 id="告警分層">告警分層</h2>
<p>告警分層的責任是讓值班負載可控。分層可依風險與動作分成：</p>
<ol>
<li>Informational：觀測型訊號。</li>
<li>Action-required：需值班處理。</li>
<li>Escalation-required：需跨團隊升級。</li>
</ol>
<h2 id="調校節奏">調校節奏</h2>
<p>調校節奏的責任是讓告警品質持續改善。每輪調校至少記錄觸發條件、誤報來源、調整內容、影響範圍與回退條件。</p>
<h2 id="與-triage-loop-對齊">與 triage loop 對齊</h2>
<p>與 triage loop 對齊的責任是讓告警到回應保持一致。告警內容至少提供 signal source、impact hint、recommended owner 與下一步路由。</p>
<h2 id="判讀訊號與路由">判讀訊號與路由</h2>
<table>
  <thead>
      <tr>
          <th>判讀訊號</th>
          <th>代表需求</th>
          <th>下一步路由</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>值班人員持續手動排除同類告警</td>
          <td>需要規則調校與分層</td>
          <td>7.B10 → 7.B5</td>
      </tr>
      <tr>
          <td>告警描述不足以支持分級</td>
          <td>需要補 context 欄位</td>
          <td>7.B10 → 7.B6</td>
      </tr>
      <tr>
          <td>告警量下降但漏報上升</td>
          <td>需要平衡 precision 與 recall</td>
          <td>7.B10 → 7.B7</td>
      </tr>
      <tr>
          <td>告警調整缺少變更證據</td>
          <td>需要補 release gate 記錄</td>
          <td>7.B10 → 7.22</td>
      </tr>
  </tbody>
</table>
<h2 id="必連章節">必連章節</h2>
<ul>
<li><a href="/blog/backend/07-security-data-protection/blue-team/detection-engineering-lifecycle/" data-link-title="7.B5 Detection Engineering Lifecycle" data-link-desc="把偵測規則視為可維護資產，建立從來源、測試、調校到退場的完整生命週期">7.B5 Detection Engineering Lifecycle</a></li>
<li><a href="/blog/backend/07-security-data-protection/blue-team/incident-triage-loop/" data-link-title="7.B6 Incident Triage Loop" data-link-desc="把資安訊號轉成 triage、severity、owner、containment 與 evidence 的回應循環">7.B6 Incident Triage Loop</a></li>
<li><a href="/blog/backend/07-security-data-protection/detection-coverage-and-signal-governance/" data-link-title="7.13 偵測覆蓋率與訊號治理" data-link-desc="定義偵測覆蓋、訊號品質與誤報成本的治理問題">7.13 偵測覆蓋率與訊號治理</a></li>
<li><a href="/blog/backend/07-security-data-protection/security-risk-in-release-gate/" data-link-title="7.22 資安風險如何進入 Release Gate" data-link-desc="把資安風險、例外與驗證證據納入 release gate，建立可稽核的放行判準">7.22 資安風險如何進入 Release Gate</a></li>
</ul>
<h2 id="完稿判準">完稿判準</h2>
<p>完稿時要讓讀者能為告警系統建立品質治理循環。輸出至少包含品質欄位、分層策略、調校節奏、對齊路由與回寫位置。</p>
]]></content:encoded></item></channel></rss>