AI-Infra-Guard deep dive: Tencent Zhuque Lab turns scattered AI attack surfaces into one red teaming platform
1. At a glance
★★★★☆ (4/5). A full-stack AI red teaming platform from Tencent Zhuque Lab, Apache-2.0, 6.6k stars / 615 forks (as of 2026-09-24). This is not “yet another AI scanner” — it collapses the attack surfaces that scattered across the ecosystem after 2025 into a single executable platform: AI infrastructure CVEs, agent loss of control, MCP supply chain, agent skill backdoors, and jailbreak evaluation — and backs the methodology with homegrown benchmarks and Black Hat Europe talks. One star is withheld for two concrete reasons: the README states plainly that it has no authentication mechanism and should not be deployed on public networks, and several sub-modules remain unfinished (skills with a SKILL.md that were never registered, an English CVE store that never syncs, red-team resume not implemented). Usable as-is on an internal network, a controlled environment, or as a CI gate; public deployment requires you to add auth and network isolation yourself.
| Primary language | Go (backend, trpc-go) + Python (sub-scanners), frontend Vite + Tailwind |
| License | Apache-2.0 (migrated from MIT, retains NOTICE attribution requirements) |
| Stars / Forks | 6,600 / 615 |
| Commits / Tags | 1,918 / 58 |
| Latest release | v4.6.2 (2026-09-17) |
| AI component coverage | 146 components / 2,000+ CVE rules |
| Skill risk taxonomy | SkillTrustBench T01–T09 (9 classes) |
| MCP risk taxonomy | 14 classes |
| Deployment requirements | Docker 20.10+ / 4GB RAM / 10GB disk |
| Default port | 8088 |
| URL | https://github.com/Tencent/AI-Infra-Guard |
Who it’s for (scored by audience, out of 5):
| Audience | Score | Why |
|---|---|---|
| Enterprise security ops / CISO | 5 | One of the few open-source tools that can answer “how many AI components are we running internally, and how many have known CVEs” in one pass — and it can gate agent / MCP / skill releases in CI |
| AI security researchers | 5 | Ships three homegrown benchmarks (FORGE-Bench, RogueHandoff-20, SkillJack) and is cited by 19 papers; it’s a tool and a reference frame at once |
| Agent / MCP developers | 5 | One pip install and one command to audit your own skill; MCP scanning emits SARIF straight into CI without reading all of OWASP ASI first |
| Red team / pentest | 4 | Good for attack-surface discovery (AI Infra Scan accepts CIDR ranges), but it’s a self-assessment platform, not an attack platform — you still need something else for adversary emulation |
| Individual learning / self-hosting | 3 | Docker one-liner, but 4GB RAM + 10GB disk, no auth, and LLM API costs for skill/MCP scanning make it heavier than a casual weekend spin-up |
Building on it: Apache-2.0, three tiers of effort (configure / integrate / extend):
| Tier | What you can do |
|---|---|
| Configure | All four plugin types are just files under data/: data/fingerprints/ for component fingerprints, data/vuln/ for CVE rules, data/mcp/ for MCP rules, data/eval/ for jailbreak datasets — CONTRIBUTING lists these as the low-friction contribution paths |
| Integrate | Drop aig-skill-scan (pip) or mcp-scan into CI/CD for SARIF output; drive the Task API (5 task types) from an internal ticketing system; install the OpenClaw skill with clawhub install aig-scanner to embed scanning in an agent workflow |
| Extend | Modify the agent-scan multi-agent framework (new detection skills need both _DETECTION_SKILLS and prompt/skills/<name>/SKILL.md); rework the engine and VulnerabilityExtractor (LLM output parsing); extend services/api_checker model fingerprinting and relay auditing |
2. What it is, and what it isn’t
Four clarifications before you open the repo, because A.I.G is not these things:
Not a single scanner. The “Infra Guard” name suggests a tool that only scans AI frameworks for CVEs — that was its earliest 2025 form. Today A.I.G is a platform with five peer capabilities: Agent Scan, Skill Scan, MCP Scan, AI Infra Scan, Jailbreak Evaluation, plus a Model & API Relay Checker. Infrastructure CVE scanning is one layer of five.
Not DAST or SAST. It doesn’t replace your existing web scanner or code audit. AI Infra Scan does fingerprint identification + CVE matching — it connects to your running vLLM / Ollama / ComfyUI, identifies the component and version, then matches known vulnerabilities. That’s asset inventory and known-vuln hygiene, not 0day hunting.
Not a pure rule database. MCP Scan and Skill Scan are fundamentally LLM-reviewing-code: hand the MCP server or skill source to a model, get findings and remediation against a predefined taxonomy (14 classes / T01–T09). So they come with variance in output quality and per-call cost — expanded in section 7.
Not a public-facing SaaS. README, verbatim: “It currently lacks an authentication mechanism and should not be deployed on public networks.” It is positioned as a red teaming platform for internal use by enterprises or individuals. This is the most important caveat and comes up again below.
So what is A.I.G? The official line:
A full-stack AI Red Teaming platform securing AI ecosystems via Agent Scan, Skills Scan, MCP scan, AI Infra scan and LLM jailbreak evaluation.
Three keywords: full-stack / red teaming / AI ecosystems.
3. The five capabilities
A.I.G splits into five peer task types — five buttons in the web UI, five task types in the API.
| Capability | Input | Output / notes |
|---|---|---|
| AI Infra Scan | Network address of a running service (CIDR / range supported) | Component fingerprint + version + matched CVEs + fix links |
| Agent Scan | Agent workflow (Dify / Coze supported) | Multi-agent automated scanning, 10 detection skills, mapped to OWASP ASI |
| MCP Scan | MCP server source archive or remote URL | 14 risk classes, SARIF output, no running instance needed |
| Skill Scan | Agent skills directory | Aligned to SkillTrustBench T01–T09, one pip-installed command |
| Jailbreak Evaluation | Target LLM API endpoint | Multi-turn jailbreak attacks + cross-model comparison, built on DeepTeam |
One constraint on AI Infra Scan deserves calling out: it scans running service addresses — not GitHub URLs, not local source paths. So http://127.0.0.1:8000 (local vLLM), http://192.168.1.100:11434 (LAN Ollama), or 192.168.1.0/24 (whole CIDR) all work, but you cannot point it at a repository. Source scanning goes through MCP Scan / Skill Scan instead. This distinction fixes its enterprise use case as internal asset inventory, not open-source supply chain assessment.
MCP Scan needs no running instance, which is genuinely useful — hand it a remote URL or upload a source archive, and you never have to start the suspicious MCP server (starting it is itself the risk). v4.5.2 also added a tool allowlist to prevent RCE in dynamic mode: the right instinct, protect yourself before you scan someone else’s malicious code.
Skill Scan covers 9 risk classes across 5 layers — the taxonomy alone is worth studying:
| Layer | Risks |
|---|---|
| A · Instruction & memory | T01 skill instruction hijacking, T02 memory poisoning |
| B · Code execution | T03 remote payload download & execution, T04 embedded malicious code |
| C · System privileges | T05 privilege escalation & unauthorized access, T06 system persistence |
| D · Toolchain & dependencies | T07 tool hijacking & spoofing, T08 insecure dependencies |
| E · Code quality | T09 insecure coding practices |
4. Architecture: plugin framework + multiple scanners
The architectural cornerstone is an extensible plugin framework (README: “The extensible plugin framework serves as A.I.G’s architectural cornerstone”).
Engine and rule data are separated — every scan rule lives under data/:
| Directory | Contents |
|---|---|
data/fingerprints/ |
Component fingerprint YAML |
data/vuln/ + data/vuln_en/ |
CVE rules (Chinese / English) |
data/mcp/ |
MCP security rules |
data/eval/ |
Jailbreak evaluation datasets |
The payoff is a very low contribution barrier: supporting a new AI component means adding a YAML; adding a CVE rule means adding a file. No Go code touched.
The stack is mixed, worth noting:
- Backend: Go + trpc-go, serving the web service and Task API;
cmd/cli/main.gobuilds a unified CLI,ai-infra-guard - Frontend: Vite + Tailwind, one-click scanning with live progress
- Sub-scanners:
agent-scan/mcp-scan/skill-scanare standalone Python modules;AIG-PromptSecurity(jailbreak eval) builds on DeepTeam;services/api_checkeris Python too - Distributed: webserver + agent topology (
Dockerfile_Agent); infra scanning runs viaAIInfraScanAgent.executeScanon the agent side; the API checker is embedded in the agent runtime
I18n lives in the data layer, not the UI layer: the knowledge base endpoint /api/v1/knowledge/vulnerabilities reads a lang parameter (default zh), serving data/vuln_en when lang=en. Right design — but it also planted a known sync bug (section 7).
5. Research and benchmarks: where it pulls away from the pack
Most open-source security tools ship code only. A.I.G ships homegrown benchmarks and papers. This is the part I’d single out for praise.
Four in-house studies (code under Research/):
| Study | What it does |
|---|---|
| FORGE-Bench | A deterministic, oracle-based benchmark for loss of control in autonomous agents: 16 domains, 1,800 trajectories (arXiv:2609.11024) |
| RogueHandoff-20 | Measures whether an agent adopts unsafe trajectories after exposure to another agent’s unsafe policy |
| SkillJack | Demonstrates how poisoned trajectories inject persistent backdoors into a self-evolving agent’s skill system |
| DeepSeek Harness assessment | An authorized security assessment of DeepSeek Harness testing indirect prompt injection across 14,560 agent runs |
SkillJack’s choice of topic says a lot — it isn’t asking “does this round of prompt injection succeed”, it’s asking whether a backdoor can settle in while the agent evolves itself. That is the real 2026 agent-security pain point.
Three papers, two of them from Black Hat Europe 2025:
- Securing the AI Agent: A Unified Framework for Multi-Layer Agent Red Teaming
- AI-Infra-Guard: An AI Red Teaming Platform (Black Hat Europe 2025 Arsenal)
- MCP Unchained: Compromising The AI Agent Ecosystem Via Its Universal Connector (Black Hat Europe 2025)
The third is the sharpest选题 — MCP as the agent ecosystem’s universal connector is also its universal attack surface.
Cited by 19 academic papers, including MCPGuard, MCPSecBench, SkillAttack, and TRUSTDESC. An industry open-source tool serving as a reference for that much academic work means it has become a de facto baseline in agent security.
Skill Scan quality is quantified (SkillTrustBench):
| Model | F1 | Precision | Recall | FPR |
|---|---|---|---|---|
| Claude Opus 4.6 | 0.9848 | 0.9725 | 0.9974 | 0.0663 |
| GLM 5.1 | 0.9836 | 0.9701 | 0.9974 | 0.0723 |
| Gemini 3.5 Flash | 0.9792 | 0.9947 | 0.9641 | 0.0120 |
| Kimi 2.6 | 0.9780 | 0.9895 | 0.9667 | 0.0241 |
| DeepSeek v4 Flash | 0.9740 | 0.9868 | 0.9615 | 0.0301 |
Publishing all four of F1 / Precision / Recall / FPR rather than a lone accuracy number is an honest move. Note how much FPR varies (0.012 to 0.072) — if you’re gating a pipeline on Skill Scan, picking a low-FPR model like Gemini 3.5 Flash matters more than picking the top-F1 one, or false positives will drown your CI.
6. Deployment and integration
Docker one-liner (recommended):
1 | git clone https://github.com/Tencent/AI-Infra-Guard.git |
Or the script: curl https://raw.githubusercontent.com/Tencent/AI-Infra-Guard/refs/heads/main/docker.sh | bash
Skill Scan as a standalone CLI (the easiest CI hook):
1 | pip install aig-skill-scan |
Embedding it in an agent workflow (agent-ready):
1 | clawhub install aig-scanner |
You can then invoke scans from an OpenClaw conversation. Shipping it as a plug-and-play ClawHub skill is the right instinct — half the value of a security tool is whether it fits the workflow developers already have.
Relay Checker (model and API relay auditing) exposes /api/v1/relay/* after Docker deploy, documented at http://127.0.0.1:8088/api-checker/docs. Note the checker frontend is deployed separately — Docker only guarantees the API.
7. Limits and risks
This is where the withheld star lives. Four concrete constraints.
1. No authentication — do not deploy publicly (most important)
The README states the platform lacks an auth mechanism and should not be deployed on public networks. It ships a web UI, a full API (Swagger), and one-click scanning — exposing those to the public internet unauthenticated means handing out internal asset-scanning capability to anyone. Enterprises must add auth and network isolation themselves. Treat this as the first line item in your deployment cost, not an afterthought.
2. MCP / Skill Scan depend heavily on an LLM
Both are “let a model review the code”, with three consequences:
- Quality tracks the model — the 0.98 F1 in section 5 is Claude Opus 4.6’s number; weaker models fall off
- Per-call cost — large-scale scanning isn’t cheap; high-frequency CI runs need a budget
- LLM nondeterminism — the README and commit history record models rewriting
<desc>tags as<description>and wrapping output in<![CDATA[ ]]>, causing valid findings to be dropped by the validation gate (reporting 0 findings)
Robustness fixes are in place (CDATA stripping, synonym fallback), but the paradigm’s limits don’t disappear because of engineering patches. Using an LLM as a security judge means accepting that it both misses things and cries wolf.
3. Several sub-modules are half-finished
Visible from the commit history and code:
- Four agent detection skills (
direct-injection-detection,file-path-traversal-detection,hardcoded-secret-detection,memory-poisoning-detection) have aSKILL.mdbut were never registered in_DETECTION_SKILLS— they never run web-exfiltration-detectionis registered but has no matching row in the OWASP ASI table- The knowledge base create/edit endpoint writes only the Chinese
data/vuln, neverdata/vuln_en— CVEs added by an admin have no English text - Red-team resume is not implemented; only JSONL progress logging landed
- Process termination is limited on Windows
None of this breaks the main flow, but it means the platform is more finished than each sub-module. Confirm the module you depend on is actually running before you rely on it.
4. AI Infra Scan only covers running assets
It fingerprints live services — it can’t reach components that aren’t running, or scan source repositories. Fine for internal inventory; don’t expect open-source supply chain assessment from it.
8. Getting started
Step one, sweep your AI infrastructure (fastest path to visible value):
1 | # start a test vLLM (or point at one you already run) |
A CIDR sweep (192.168.1.0/24) or range (10.0.0.1-10.0.0.20) tells you in one pass how many AI components are live on your network.
Step two, hook skill / MCP scanning into CI:
1 | pip install aig-skill-scan |
Prefer a low-FPR model (section 5), watch the false positive rate for a few days, then decide whether to hard-gate.
Step three, configure Jailbreak Evaluation: fill in your target LLM’s base URL + API key under Settings → Model Config, pick a dataset, run, and compare across models.
Practical notes (from the README and known pitfalls):
- Never deploy this publicly — again: it has no authentication at all
- In CI, pick models by FPR, not F1 — false positives will drown the pipeline
- Before relying on Agent Scan, confirm the detection skill is actually registered — having a
SKILL.mddoesn’t mean it runs - Manually sync
data/vuln_enwhen adding CVEs — the admin endpoint writes Chinese only - Confirm authorization before sweeping a CIDR — it actively connects and fingerprints; don’t scan segments you shouldn’t
9. The one-line verdict
A.I.G isn’t a new scanner — it’s the layer that collapses scattered AI attack surfaces into one executable platform: five capabilities (infra CVEs / agent loss of control / MCP supply chain / skill backdoors / jailbreak eval) plus three homegrown benchmarks plus Black Hat Europe backing, with Tencent Zhuque Lab’s engineering showing in the numbers (1,918 commits, 58 tags, Apache-2.0). In the “AI security red teaming platform” niche, it is among the most complete open-source efforts available, and deserves a high marks.
The deductions cluster in two places: deployment constraints from the missing auth layer, and sub-modules that aren’t finished. The former means you can’t drop it on the public internet out of the box; the latter means verifying that the piece you depend on actually runs. Neither is hard to fix, but until they are, adoption costs extra.
Start by sweeping internal AI assets (fastest visible payoff), then consider wiring skill/MCP scanning into CI. And if you deploy it anywhere reachable, add authentication first.