I Scanned 24+ MCP Servers, Found a Sandbox Escape (CVSS 9.8), and Got Palo Alto Networks to Cite Our Standard
We built a runtime verification engine for AI agent systems. Then we pointed it at the MCP ecosystem and found things that kept us up at night.
Here's the full story — with verifiable links to every claim.
What We Built
Correctover is a runtime verification framework for AI agent systems. We define a 6-dimension verification standard (we call it CCS — Correctover Compliance Standard):
- Structure — Protocol message format validation
- Schema — Input/output schema enforcement
- Latency — Response time bounds
- Cost — Token/resource consumption limits
- Identity — Authentication and authorization
- Integrity — Output validation and tamper detection
Our scanner operates at two levels:
- Rule-driven (v3.3.2): Pattern-based detection with framework awareness
- Semantic-aware (v4.0.0): Context-filtering engine that understands code intent, not just keywords
The semantic engine is our core differentiator — it reduced 14 CRITICAL findings to 0 on the Aider codebase by understanding that eval() inside a dictionary key check is not actual code execution.
The Hunt: What We Found
We scanned 24+ MCP server implementations across the ecosystem. Here are the highlights:
🔴 Sandbox Escape in AgenticX (CVSS 9.8)
The most critical finding: a sandbox command injection vulnerability in AgenticX that allows full container escape. An attacker can execute arbitrary shell commands outside the sandbox by injecting specially crafted tool call parameters.
- CVE: Filed with MITRE (pending assignment)
- Disclosure: Reported to bingzhenli@hotmail.com
- Status: Acknowledged, patch in progress
🔴 SSRF in Gemini CLI (CVSS 8.6)
Google's Gemini CLI had a DNS resolution bypass in the web-fetch tool. The isBlockedHost() function only checked literal IP addresses, not DNS-resolved addresses. Attacker-controlled domains could resolve to 169.254.169.254 (AWS metadata endpoint) and leak cloud credentials.
-
Issue #28555 — Open, labeled
priority/p2,kind/bug -
Fix: Replace synchronous
isPrivateIp()with asyncisPrivateIpAsync()(implementation already existed in the codebase)
🔴 4 MCP Client Vulnerabilities in AgentScope (Alibaba)
AgentScope (Alibaba's multi-agent framework) had SSRF and command injection vulnerabilities in its MCP client implementation.
-
Issue #2131 — Merged with thanks (commit
58051db9) - Fix: Patched all 4 vulnerabilities in a single security PR
🟡 Default-Unsafe Configuration in Supabase MCP
Supabase MCP allowed destructive SQL operations by default. readOnly defaulted to false, meaning any connected AI agent could execute DROP TABLE, DELETE FROM, or data exfiltration queries without explicit opt-in.
- Issue #352 — Open, 3 HIGH findings
The Wins: Industry Adoption
🏆 Palo Alto Networks Cited Our Standard
In PR #14199 to Microsoft's Semantic Kernel, Palo Alto Networks' AI Research Lab (Palo-Alto-AI-Research-Lab) added a code comment citing our CCS DOI as related work for runtime verification.
Commit a2e757d in python/semantic_kernel/filters/auto_function_invocation/function_authorization_filter.py:
# Related: Correctover Compliance Standard (DOI: 10.6084/m9.figshare.23654166)
# Runtime verification of agent tool calls
This is a significant milestone — a major cybersecurity company recognizing our verification approach in production code.
🏆 garak Integration
We submitted a CCSDetector to garak (NVIDIA's LLM vulnerability scanner) that integrates our runtime call verification into their probe pipeline.
- PR #1987 — Open
🏆 Kimi Code (Moonshot AI) Improvements
We identified UX issues in Kimi Code (a Chinese AI coding assistant):
- MCP tools marked as "disabled" weren't being filtered out
- Timeout description was misleading
PR #2423 — Open, fixing both issues.
🏆 IETF Draft Submission
We submitted draft-correctover-ccs-00 to the IETF for standardization track. The draft defines the CCS verification framework as an open standard.
- Status: Submitted to IETF Secretariat, awaiting review
Our Dual-Scanner Methodology
Every finding goes through a two-stage cross-validation:
- Stage 1 (v3.3.2 — Rule-driven): Broad coverage scan with framework awareness. Catches everything, may have false positives.
- Stage 2 (v4.0.0 — Semantic-aware): L4 context filtering. Understands code intent. Eliminates false positives.
- Manual verification: We verify every CRITICAL/HIGH finding before disclosure.
This means: no misses in initial scan, no false positives in final report.
The difference is dramatic. On the Aider codebase:
- v3.3.2 reported 14 CRITICAL + 1 HIGH
- v4.0.0 reported 0 CRITICAL + 0 HIGH (all were false positives — the semantic engine understood the code context)
On Azure MCP:
- v3.3.2 reported 2 HIGH + 1 MEDIUM
- v4.0.0 reported 1 HIGH + 5 MEDIUM (and the HIGH was also a false positive —
os.platform()is not a security risk)
Ecosystem Blind Test
We ran a blind test on 6 major projects + Authgear + Nextcloud, plus 24 MCP servers:
| Target | True Vulnerabilities | False Positives |
|---|---|---|
| Authgear | 0 | 0 |
| Nextcloud | 0 | 0 |
| 6 other major projects | 0 | 0 |
| 24 MCP servers | 1 confirmed (AgenticX) | 0 |
The semantic engine's ability to understand code intent (not just keyword matching) is what drives the zero-false-positive rate. exec() in a dictionary key check is not a vulnerability. eval() in a banned-word list is not a vulnerability. Our scanner knows the difference.
What's Next
We're building toward a comprehensive AI supply chain security platform:
- Continuous monitoring: Automated scanning of new MCP server implementations
- Runtime verification SDK: Embed our verification engine directly into agent frameworks
- Compliance certification: CCS certification for MCP servers that pass our audit
- Community disclosure program: Responsible vulnerability disclosure with public tracking
All References (Verified)
| # | Achievement | Link | Status |
|---|---|---|---|
| 1 | PANW cites CCS in Semantic Kernel | microsoft/semantic-kernel@a2e757d | ✅ Merged |
| 2 | AgenticX sandbox escape CVSS 9.8 | CVE filed with MITRE | Disclosed |
| 3 | AgentScope 4 vulns (Alibaba) | modelscope/agentscope#2131 | ✅ Merged |
| 4 | garak CCSDetector | leondz/garak#1987 | Open |
| 5 | Kimi Code fixes | kimi-code#2423 | Open |
| 6 | Google MCP Toolbox hardening | googleapis/mcp-toolbox#3748 | Open |
| 7 | Supabase MCP default-unsafe | supabase/mcp#352 | Open |
| 8 | Gemini CLI SSRF CVSS 8.6 | google-gemini/gemini-cli#28555 | Open |
| 9 | IETF draft submission | draft-correctover-ccs-00 | Pending review |
Guigui Wang | Correctover — Runtime Verification for Agent Systems
Every link above is publicly verifiable. We believe in radical transparency in security research.
Top comments (0)