8 ATR Rules That Catch Microsoft Semantic Kernel CVE-2026-25592/26030
On 2026-05-07 Microsoft disclosed two CVEs in Semantic Kernel: CVE-2026-26030 (in-memory vector store unsafe string interpolation enabling Python class hierarchy traversal to RCE) and CVE-2026-25592 (KernelFunction-exposed file-write primitive enabling persistence via Windows Startup). Microsoft AGT already deploys 287 ATR rules. Here is the 8-rule mapping that catches the attack class at runtime, with the bridge issue filed upstream.
揭露事件
Microsoft Security Blog 在 2026-05-07 發布兩個影響 Semantic Kernel 的 CVE 公告:
- ●CVE-2026-26030 — In-memory vector store 在 lambda filter 中的不安全字串內插。能控制 vector 內容的攻擊者可以透過內插的 lambda 遍歷 Python class hierarchy,觸及
object的__subclasses__。最終結果:任意 Python 求值、RCE。 - ●CVE-2026-25592 —
KernelFunction暴露檔案寫入原語但未做 scope 驗證。受提示影響的 agent 寫入 Windows Startup 目錄。最終結果:下次開機 RCE、具持久化。
受影響版本:Semantic Kernel Python <1.39.4、.NET <1.71.0。修補已釋出。
為什麼 Microsoft AGT 在意
Microsoft Agent Governance Toolkit 透過我們在 Q1 與 AGT 團隊建立的每週自動同步,已部署 287 條 ATR 規則。這兩個 CVE 是教科書級的 agent runtime 攻擊 — 正是 ATR 設計要偵測的威脅類別。
修補關掉特定漏洞。ATR 規則在 runtime 關掉攻擊類別,包含尚未揭露的變種。
CVE-2026-26030 — 規則對應
| Rule ID | Pattern | 覆蓋方式 |
|---|
|---|---|---|
| ATR-2026-00110 | eval-injection | 直接 — 標記字串內插的 eval/exec/lambda 建構 |
|---|
| ATR-2026-00112 | dynamic-import-exploitation | 直接 — 偵測 __subclasses__、__import__、__bases__ 遍歷 |
|---|
| ATR-2026-00111 | shell-escape | 鄰接 — 攔下落在 eval 原語之後的 RCE shell payload |
|---|
| ATR-2026-00066 | parameter-injection | 上游 — 標記使用者可控內容到達危險 sink |
|---|
ATR-2026-00112 專門追蹤從沙箱逃逸到任意執行的標準 Python class hierarchy 遍歷慣用語(().__class__.__bases__[0].__subclasses__())。
CVE-2026-25592 — 規則對應
| Rule ID | Pattern | 覆蓋方式 |
|---|
|---|---|---|
| ATR-2026-00204 | stealth-execution-persistence | 直接 — 標記對 Startup/Run/Task Scheduler 位置的寫入 |
|---|
| ATR-2026-00123 | skill-overreach-permissions | 直接 — 標記檔案系統存取權與宣告目的不相稱的 Skill |
|---|
| ATR-2026-00041 | scope-creep | 直接 — 偵測超出宣告 scope 的 agent 操作 |
|---|
| ATR-2026-00064 | over-permissioned-skill | 上游 — 在部署前標記未經正當理由暴露檔案寫入的 Skill |
|---|
ATR-2026-00204 是 runtime 偵測器。ATR-2026-00064 是部署前稽核閘門,本可在 Skill review 時就攔下這個過寬的 KernelFunction,讓它根本到不了 production。
上游 Bridge
我們提了 microsoft/agent-governance-toolkit#1937,走過兩個 CVE 與 8 條規則對應,並確認哪些規則已在 AGT 287 條規則包中,哪些屬於完整 336 條 corpus 但尚未同步。
快速狀態:
- ●對應中 8 條規則有 6 條已部署在今天的 AGT
- ●2 條規則(ATR-2026-00204、ATR-2026-00112)在完整 corpus 中,等下一輪同步
AGT 在 build time 對 agent Skill manifest 跑,也在 runtime 對 agent 遙測資料跑。兩個 CVE 在兩條 lane 都打到可偵測的特徵。
心得
CVE 修補修掉 bug。偵測規則修掉 bug 類別。本週揭露的兩個 CVE 模式不會是同類最後一例 — 字串內插進動態求值、過度授權的 Skill 原語會持續出現在 agent 框架中。在攻擊類別層做偵測有延續性;按 CVE 修補沒有。