跳到主要內容
回到文件證據與涵蓋
寫出來就是為了能被反駁

什麼已被證明,什麼還沒有。

一項無法被反駁的安全主張不是主張,是廣告。本頁用內部計畫所使用的同一套措辭,宣告每個設定檔的證據等級,好讓外部的人能拿它與已經公開的東西相互對照。

四個等級

每個工作包收尾時都要宣告其中之一,與 PASS、FAIL 或 SKIP 以及分母並列。沒有第五個等級,也沒有舒服的中間地帶。

設計

已規範、已審閱。什麼都沒有執行。描述某樣東西將如何運作,永遠換不來一個 PASS。

模擬

對著 fixture 執行,供應商與核准都標明為 fixture。這不是整合,也從不被說成是整合。

真實整合

對著真實供應商、在獲授權的帳戶中、針對確切被測的那個設定檔執行——也僅限於那一個。

未評估

沒有任何探針跑過。這是預設值,不是疏漏,而且從不計為通過。

今天已被證明的

上面那些規則的存在,是為了讓這份清單保持誠實,而不是為了不列清單。每一條都是程式碼的性質,不用問我們就能核對。

一份授權只消耗一次

單次使用是 grant 結構描述中型別層級的字面值,任何其他取值在驗證時都會被拒。它不是某個人記得去遞減的計數器。

receipt 不用連網即可驗證

整條驗證路徑上的網路呼叫為零。五年之後核驗的一份 receipt,既不依賴我們還在線,也不依賴某個可變的登錄檔。

配接器無法重新定義已授予的內容

供應商用戶端拿到的是效果與一個冪等鍵。它從不拿到 grant,也不拿到 authority,所以沒有可以擴大的東西。

變更絕不會被盲目重試

對帳是對供應商的唯一一次二次呼叫。如果對帳本身失敗,結果會被記錄為不確定,而不是被假定。

雲端無法抬高本機上限

本機政策檢查是僅拒絕的,並固定 tenant、閘道、供應商、配接器摘要、authority、可接受的政策版本、資源規則與金額上限。它要求已安裝一份簽章的本機政策,沒有它正式模式根本拒絕啟動。

其中兩條取決於你怎麼部署:本機上限需要已安裝一份簽章政策——在沒有政策的沙箱裡就不存在上限——而憑證隔離取決於你選擇的連接器與部署模式。

讓它可被反駁的那些規則

  • SKIP 與未評估從不計為 PASS。
  • 沒有探針的路徑維持未評估。它不繼承另一條路徑的涵蓋。
  • 涵蓋清單是一項測試框架必須有能力反駁的主張:若某個繞過成功造成了效果,已宣告的涵蓋就轉為「被反駁」,關卡隨之失敗——哪怕檔案裡寫著「已保護」。
  • 適用性在執行期存在之前就已固定。任何東西都不能在失敗之後被標為「不適用」。
  • 用 MFA 或法定人數測試某個連接器,並不能為多步委派設定檔背書。每一項主張都會點名自己所測試的鏈條與版本。
  • 核准用的 fixture 不是真正的 MFA 或法定人數,模擬出來的核准也絕不會被當作真人核准來呈現。

一份 receipt 確立了什麼

一份 Action Receipt 證明的是:什麼經過了一個已登錄的 Guardian,以及那個 Guardian 能夠確立的結果。逾時會透過回讀供應商來對帳,絕不盲目重試,而含混的結果會維持為不確定,不會被向上取整成成功。

點名的威脅

我們緩解的那些,以及仍然敞著的缺口。

Tool poisoning

某個主機竄改工具描述,好讓模型用被操縱的引數去呼叫。工具目錄以伺服器為準——伺服器提供一份固定清單,不接受用戶端給出的工具定義——並由允許清單限定某個用戶端能呼叫什麼。敞著的缺口:所提供的 manifest 尚未簽章,其完整性因此依賴於傳輸層。

敵意的主機或用戶端

編排代理程式的那個行程本身就是敵意的。範圍與工具允許清單限住損害,每次呼叫都有稽核,金鑰可立即撤銷。敞著的缺口:API 金鑰是持有人憑證,因此握有它的敵意主機在被撤銷之前就等同於該 tenant。短時效的委派權杖正是為了收窄這一點。

經由被分析內容的 prompt injection

一則訊息試圖藉著被分析的內容注入指令。guard 做的是分類與分析;它不執行自己讀到的東西,回應裡帶的是抽取出的事實而非指令。合約之外的效果一律被拒,無論有沒有哪個偵測器看見了這次注入。

審閱之後的目錄變更

你核准過的,不等於之後啟動的。已釘選的快照會與目前目錄相比,實質性的變動會要求複審,而不是自行生效。

在目錄站台上的冒名

第三方發布一筆偽造的項目。正規的端點與 manifest 由服務本身提供。敞著的缺口:目前還沒有公開的 manifest 簽章,也沒有網域驗證。

擔保之外

點名說出,而不是暗示。

  • 主機的管理員。誰掌控這台機器,誰就掌控上面跑什麼。
  • 被攻陷的 Guardian 或簽章金鑰。
  • 在已登錄執行路徑之外採取的行動。receipt 因其構造而對此保持沉默。
  • 一條沒有人觀測到的側通道。
  • 那份已獲核准的 mandate 本就允許的損害。授權並不證明真實、無害或正確。
  • 供應商帳戶的法律所有權——沒有任何 receipt 能確立這一點。

不存在全域觀測

不存在對一台主機的完整脈絡、其郵件、其記憶或其他 MCP 伺服器流量的視野。能知道的只有 bridge 自身的目錄、經由它的那些呼叫,以及被明確匯入的快照。一個設定雜湊描述的是一個設定檔;它不是對主機的密碼學證明。單靠一個容器,若不展示其網路與掛載,並不能證明隔離。

關於簽章

manifest 簽章證明的是完整性與來源。它不證明無害,而且沒有任何徽章——包括我們自己的——能讓一個 MCP 伺服器變得安全。

本頁上的一項主張如何改變

不是靠改寫它。一項新的能力主張在出現之前,要先對照程式碼加以驗證並註明日期,而驗證表就放在儲存庫裡、緊挨著這些文字。一個沒通過檢查的頁面會把失敗留在明面上,而不是被悄悄重寫——後續的一次執行會產生新的版本,而不是取代掉舊的結果。沒有出資的 bug bounty,也沒有第三方獨立稽核,這兩者在真正存在之前都不會宣布。

本頁狀態

上面的證據等級與規則今天即已生效。按設定檔列出的表格會隨著每個工作包收尾,公布其觀測到的結果,並附上分母、版本與設定。在某個設定檔擁有自己針對真實供應商的結果之前,它都會被列為模擬或未評估——絕不會從一個 mock 或另一個連接器外推而來。

證據與涵蓋 — 什麼已被證明,什麼還沒有 | SecureStamp Foundation