Why Transparent 39.9% Recall Beats Opaque 98%
ATR has 99.7% precision and 62.7% recall on the PINT benchmark. We use "ATR Scanned" not "ATR Certified." We publish what we miss. The Snort analogy: lower detection but open and auditable beats proprietary black boxes every time.
我們的數字
在 PINT(Prompt Injection Test)基準測試上,ATR v0.4.0 達到 99.7% 精確率和 62.7% 召回率。意思是:當 ATR 標記某樣東西為威脅時,99.7% 的時候是正確的。但它只捕獲了基準測試中 62.7% 的威脅。我們從 v0.3.0 的 39.9% 召回率提升到 62.7%,透過規則擴展——10 條新規則針對 eval 注入、shell 逃逸、動態匯入、OAuth 濫用和社交工程模式。
我們漏掉什麼
ATR 主要基於 regex。Regex 對自然語言攻擊偵測有天花板。我們對未偵測到的分析顯示: - 42% 是改寫攻擊:同樣的惡意意圖用不同的詞表達。「Ignore previous instructions」會被抓。「Please disregard the guidelines established earlier」不會。 - 31% 是非英文攻擊:ATR 規則主要是英文模式。中文、西班牙文或阿拉伯文的 prompt injection 能繞過大多數規則。 - 18% 是編碼攻擊:Base64、ROT13、Unicode 同形字和其他編碼方案,將 payload 轉換成 regex 無法匹配的格式。 - 9% 是多輪攻擊:指令分散在多條訊息或工具呼叫中,單一訊息中沒有可偵測的模式。
為什麼是「ATR Scanned」而不是「ATR Certified」
寫著「Certified Secure」的徽章暗示完整性。它暗示所有危險都已被發現和消除。在 62.7% 召回率下,我們無法做這個聲明。「ATR Scanned」的意思是:這個套件已被 71 條已知攻擊模式分析過,未偵測到威脅。不代表套件是安全的,代表它通過了我們有的檢查。如果開發者看到「Certified」就不再審查便安裝,而套件包含一個 ATR 漏掉的改寫式注入,我們反而讓開發者更不安全——給了他們虛假的信心。
Snort 的先例
1998 年,Martin Roesch 發布了 Snort——一個開源入侵偵測系統。Snort 不是什麼都抓得到,偵測率比 ISS(現 IBM)和 Cisco 的商業產品低。但 Snort 規則是開放的。任何人都可以讀、寫、分享、稽核。Snort 成為歷史上部署最廣的 IDS。不是因為它有最好的偵測率,而是因為社群信任它。管理員可以驗證它偵測什麼、漏掉什麼。研究者可以貢獻新規則,數小時內每個人都能使用。開放創造了飛輪:更多使用者代表更多眼睛盯著規則,代表更好的偵測,代表更多使用者。
ATR 的立場
ATR 走的是同一條路。我們的召回率永遠不會跟大資本專有方案一樣高——那些用 LLM 做主要偵測層的產品(我們也用 LLM,但作為可選的第二層,不是主要偵測層)。我們提供的是透明度、可稽核性和社群貢獻。每條規則都是公開的。每個基準測試結果都是發布的。每個未偵測到的都有記錄。
regex 天花板和突破方法
純 regex 偵測在自然語言注入攻擊上的召回率上限約 55%。我們透過三種技術推到 62.7%: 1. 上下文信號:同一模式根據出現位置有不同嚴重度。工具描述中的「Ignore previous instructions」是 HIGH。解釋 prompt injection 防禦的程式註解中則被抑制。上下文感知比原始 regex 多約 5% 召回率。 2. 複合規則:多模式規則結合弱信號。單一模式不足以標記,但同一檔案中三個弱信號會觸發偵測。這能抓到使用單獨良性短語的微妙攻擊。 3. Threat Crystallization:當可選的 LLM 審查抓到 regex 漏掉的東西時,系統自動從發現生成新的 regex 規則並分發。這根據真實世界遭遇持續擴展規則集。
誠實的立場
我們寧可擁有你可以驗證的 62.7% 召回率,也不要你無法稽核的 98% 召回率。我們寧可告訴你我們漏掉什麼,也不要假裝什麼都抓得到。我們寧可成為你信任的工具——因為你可以讀原始碼——而不是因為銘售簡報告訴你它最好。安全不是產品功能,是信任關係。信任需要透明。