Skip to main content
Code Guide

AI Agent Security

Threat intelligence for the AI coding tool ecosystem. 3,984 skills scanned. Here's what we found.

Threat DB v2.27.0 • Updated August 17, 2026

By the Numbers

0
Skills Scanned
0
Have Flaws
0
Critical-Risk
0
Malicious Payloads
0
CVEs Tracked
0
Exposed Servers

Verify Your Repository with AgentSec

AgentSec Triage checks a local repository against the threat intelligence used by this page. The current alpha covers repository lockfiles, installed package metadata, payload hashes, and startup configuration for the August 2026 Shai-Hulud campaign.

A clean result is not a security guarantee. The scan is repository-local, does not inspect Git history or host-level persistence, and uses bundled intelligence that only changes when AgentSec is updated.

AgentSec 0.1.0a0 (alpha) Detector shai-hulud-keyv v1
agentsec scan /path/to/repository --format json --redact

Detect repository-local indicators associated with the August 2026 Shai-Hulud Keyv/cacheable npm campaign.

Attack Techniques

T001

Tool Poisoning via SKILL.md

Hidden instructions in SKILL.md that instruct the agent to run malicious commands.

ClawHavoc ToxicSkills
Examples & mitigation

Examples

  • curl | bash from glot.io scripts
  • Password-protected ZIP with embedded malware
  • Base64-decoded eval commands
Scan SKILL.md for shell commands; never auto-execute prerequisites.
T002

Memory Poisoning

Injection of persistent instructions into SOUL.md, MEMORY.md, CLAUDE.md, AGENTS.md.

ToxicSkills
Examples & mitigation

Examples

  • Skills targeting SOUL.md/MEMORY.md to inject persistent backdoor instructions
  • Cognitive worms that replicate across agent memory files
Treat memory files as config; require code review for changes; monitor diffs.
T003

Rug Pull / Post-Approval Mutation

Benign config approved once, then mutated to malicious version that auto-executes.

CVE-2025-54136
Examples & mitigation

Examples

  • MCPoison: .cursor/rules/mcp.json approved, then updated with reverse shell
  • ClawHub skills updated without changelog to swap in AMOS installer
Hash verification on configs; re-approval on any change.
T004

Confused Deputy via MCP

Attacker manipulates MCP session/output; client trusts poisoned response.

CVE-2025-6515 CVE-2025-68143
Examples & mitigation

Examples

  • oatpp-mcp session ID reuse (CVE-2025-6515)
  • Git MCP + Filesystem MCP chain via poisoned README
Cryptographic session IDs; input validation; least-privilege for MCP tools.
T005

DNS Rebinding on Local MCP

Malicious website rebinds domain to 127.0.0.1 to access local MCP servers.

CVE-2025-66416 CVE-2025-9611
Examples & mitigation

Examples

  • MCP Python SDK HTTP/SSE servers (CVE-2025-66416)
  • MCP Gateway SSE (CVE-2025-64443)
  • Playwright MCP (CVE-2025-9611)
Use stdio transport; enable DNS rebinding protection; authenticate local servers.
T006

Supply Chain Package Attack

Malicious packages published to registries mimicking legitimate MCP servers.

PyPI MCP Postmark npm
Examples & mitigation

Examples

  • PyPI: mcp-runcmd-server, mcp-runcommand-server (JFrog)
  • npm: postmark-mcp squatter
Verify package author; check download counts; use SafeDep vet.
T007

Hook-Based Exfiltration

Malicious .claude/hooks/ scripts run on agent events with full user privileges.

Claude Code
Examples & mitigation

Examples

  • SessionStart hook that POSTs environment variables
  • PostToolUse hook that exfiltrates file paths and content
Review all hooks; forbid auto-running hooks from untrusted repos; maintain hook allowlist.
T008

Credential Theft via Agent

Agent instructed to read credential files and send to attacker.

ClawHavoc ToxicSkills
Examples & mitigation

Examples

  • rankaj skill: reads ~/.clawdbot/.env, POSTs to webhook.site
  • Base64-encoded curl to send ~/.aws/credentials
Block agent access to .env, .aws, .ssh directories; use pre-execution hooks.

CVE Database

Query the threat database directly with jq →
bash — threat-db.json

Loading bash sandbox…

CVE ID Component Severity Fixed In
CVE-2025-53109Filesystem MCP ServerHigh0.6.3
CVE-2025-53110Filesystem MCP ServerHigh0.6.3
CVE-2025-49596MCP InspectorCritical0.14.1
CVE-2025-68143MCP Git ServerHigh2025.9.25
CVE-2025-68144MCP Git ServerHigh2025.12.18
CVE-2025-68145MCP Git ServerHigh2025.12.18
CVE-2025-66416MCP Python SDKMedium1.23.0
CVE-2025-64443MCP GatewayMedium0.28.0
CVE-2026-25536MCP TypeScript SDKHigh1.26.0
CVE-2025-54135Cursor IDEHigh1.3.9
CVE-2025-54136Cursor IDEHigh1.3.9
CVE-2025-66032Claude CodeHigh1.0.93
CVE-2026-24052Claude Code WebFetchHigh1.0.111
ADVISORY-CC-2026-001Claude Code (Sandbox Bypass)High2.1.34
CVE-2025-53967Figma MCP ServerHigh0.6.3
CVE-2025-9611Playwright MCPMedium0.0.40
CVE-2025-6515MCP SSE TransportHigh--
CVE-2026-25546Godot MCP ServerHigh0.1.1
CVE-2025-54073mcp-package-docsHigh0.1.28
CVE-2026-23744MCPJamCriticalAudit servers
CVE-2026-30623LiteLLMHighcheck upstream
CVE-2026-40933FlowiseHighcheck upstream
CVE-2026-33224BishengCriticalcheck upstream
CVE-2025-69256Serverless FrameworkHighcheck upstream
CVE-2026-6494Red Hat AAP MCPHighcheck upstream
CVE-2026-33032nginx-ui MCPwnCriticalpatch immediately
ADVISORY-MCP-STDIO-2026-001MCP stdio transportMediumimpl-dependent

AgentSec Intelligence

Reviewed security events exported from AgentSec. Each fiche keeps its status, detector coverage, and source references.

monitoring

Tenet described observability data as an indirect injection channel

Tenet reports demonstrations where attacker-controlled log and telemetry content influenced agents that held privileged tools. Reported success rates, detection outcomes, and organization counts are Tenet's claims and are not independent measurements by AgentSec.

Detector coverage: not_detected AgentSec does not read remote telemetry or observe live tool calls. Repository scans cannot establish exposure to this attack path.
monitoring

Zenity and Tenet published agent-security reference tools

Zenity documents AI Total for dynamic skill evaluation. Tenet publishes agent-jackstop as a public reference repository, but AgentSec found no visible software license and does not classify it as open source.

Detector coverage: not_applicable These are external controls. AgentSec records their stated scope but does not execute or endorse them.
monitoring

Zenity reported delayed payloads in agent-skill typosquats

Zenity reported Paperclip and Browser Use typosquats that accumulated reputation while clean and later directed agents to fetch external payloads. The reported install count is aggregate and is not a victim count.

Detector coverage: not_detected AgentSec does not inspect skills.sh installations, Python packages, or payloads fetched after repository content is read.
contested

Scope of @keyv/* version 6.0.0 remains contested

AgentSec preserves JFrog and SafeDep reporting for @keyv/*@6.0.0 as contested intelligence instead of promoting the wildcard package scope to critical and confirmed.

Detector coverage: detected Matching scoped packages are reported high/contested with source attribution; lifecycle-only evidence remains a separate review finding.
confirmed

Keyv and cacheable npm supply-chain campaign disclosed

Security researchers reported malicious npm package versions associated with the August 2026 Shai-Hulud campaign. AgentSec treats exact confirmed package/version and payload-hash matches as incident-response evidence.

Detector coverage: partial Repository lockfiles, installed packages, payload hashes, and startup configuration are covered; Git history and host-level evidence are not.
confirmed

MCP Ruby SDK fixed five transport and resource-exhaustion flaws

GitHub Advisory Database records five MCP Ruby SDK vulnerabilities fixed in mcp gem 0.23.0. The set covers session ownership, request and line limits, DNS-rebinding protection, and session retention.

Detector coverage: not_detected AgentSec does not inspect Ruby dependency manifests or live MCP transports. The recorded remediation floor is mcp gem 0.23.0.
confirmed

Perplexity published the Numbat local agent monitor

Perplexity describes Numbat as a local monitor for supported agent event streams, with 52 CEL rules in the reviewed release and enforcement that must be enabled explicitly.

Detector coverage: not_applicable Numbat is a separate runtime control. AgentSec records the source but does not install, invoke, or validate that tool.
confirmed

Gemini CLI and its GitHub Action patched pre-sandbox CI execution

NVD records that a crafted .gemini/.env file could execute commands on a headless CI host before sandbox initialization. The affected version floors cover both Gemini CLI and the run-gemini-cli GitHub Action.

Detector coverage: not_detected AgentSec does not parse Gemini configuration or GitHub Actions for this execution path. Upgrade both affected components and review CI trust.
confirmed

Claude Code patched pre-approved WebFetch domain exfiltration

Anthropic reported that a pre-approved Hugging Face hostname allowed attacker-controlled paths to act as an out-of-band data channel when untrusted content reached Claude Code context. The maintainer identifies 2.1.163 as the first patched release.

Detector coverage: not_detected AgentSec does not inspect Claude Code versions, WebFetch allowlists, or network activity. Repository scans cannot rule out this exposure.

Active Campaigns

ClawHavoc 341 skills • Koi Security • Feb 2026

Largest known malicious AI agent skill campaign. 335 skills deploy Atomic Stealer (AMOS) macOS malware via fake prerequisites in SKILL.md. 6 outlier skills use alternate payloads (reverse shells, credential theft).

Delivery Methods

  • Fake prerequisites in SKILL.md (e.g., "install this CLI tool first")
  • Base64-encoded shell snippets hosted on glot.io
  • Password-protected ZIPs (password: 'openclaw')
  • Second-stage dropper from raw IP addresses

Categories

  • Crypto wallets: 111 skills (Solana, Phantom, wallet-tracker, insider-wallets-finder)
  • Finance & social: 76 skills (Yahoo Finance, X Trends)
  • YouTube utilities: 57 skills (summarizers, thumbnails, downloaders)
  • Polymarket bots: 34 skills
  • Auto-updaters: 30 skills
  • ClawHub typosquats: 29 skills
  • Google Workspace: 17 skills

Targets

  • 60+ cryptocurrency wallets (Exodus, Binance, Electrum, Atomic, Ledger)
  • Browser data (Chrome, Safari, Firefox, Brave, Edge)
  • SSH keys and shell history
  • Telegram sessions, Keychain passwords (macOS)
ToxicSkills 3,984 scanned • Snyk • Feb 2026

Full audit of ClawHub and skills.sh ecosystems. Found 36.82% of all scanned skills have security flaws. 13.4% are critical-risk. 76 contain confirmed malicious payloads.

Key Findings

  • 1,467 flawed skills (36.82% of total)
  • 534 critical-risk skills (13.4%)
  • 76 malicious payloads (8 still live at scan time)
  • 10.9% contain hardcoded secrets
  • 17.7% fetch remote content
  • 2.9% execute remote prompts

Known Malicious Authors

  • zaycv — 40+ malicious skills, programmatic campaign
  • Aslaep123 — Malicious crypto/trading skills
  • pepe276 — Unicode-obfuscated DAN-style jailbreaking
  • moonshine-100rze — Mixed prompt-injection + exfil
hightower6eu Publisher 314+ malicious skills • Feb 2026

Publisher account on ClawHub with 314+ confirmed malicious skills. Skills impersonate popular utilities and development tools to exfiltrate credentials and install backdoors. Added to threat-db.yaml v2.1.0.

Profile

  • 314+ malicious skills published
  • Targets developer tooling and productivity apps
  • Credential theft via fake API integration workflows
PyPI MCP Reverse Shell 3 packages • JFrog • Dec 2025

Three malicious Python packages on PyPI masquerading as MCP server implementations. Each spawns a reverse shell to 45.115.38.27:4433 before starting the legitimate MCP server functionality.

Malicious Packages

  • mcp-runcmd-server
  • mcp-runcommand-server
  • mcp-runcommand-server2

Technique

  • Spawns /bin/sh -i reverse shell before starting MCP server
  • C2 IP: 45.115.38.27, port 4433
Postmark MCP Squatter npm • Defender's Initiative • Nov 2025

A malicious npm package named postmark-mcp that copies the official Postmark MCP server with a hidden backdoor injected into the codebase.

Details

  • Published on npm registry as a squatter of the official Postmark MCP integration
  • Copies legitimate functionality to appear trustworthy
  • Hidden backdoor enables remote access

Detection

  • Verify package author matches official Postmark organization
  • Check package publish date and download count
  • Use npx mcp-scan to detect known squatters

Threat Database Browser

Showing 0 of 0 skills

The Sandbox: Strongest Built-In Control, Three Ways to Get It Wrong

Everything above is an attack. This is the one defense the operating system enforces for you. Permission rules decide whether a command runs, from its text. The sandbox decides what it can touch once running, and the kernel holds that line even when a command does more than its name suggests. npm install passes a rule for npm install, then runs the package's postinstall scripts, which are arbitrary code. The rule never saw it coming.

Enabling it does not protect your credentials

The sandbox's default read policy covers the entire machine, and there is no built-in denylist. ~/.ssh and ~/.aws/credentials stay readable by every sandboxed command until you list them in sandbox.credentials.files. Environment variables are worse: sandboxed commands inherit the parent environment unchanged, so a file deny alone still leaves your tokens exposed. Use credentials.envVars as well.

The excludedCommands traps

Verified against Claude Code 2.1.220 on a 200-repository setup. Each trap fails silently: the symptom is always Operation not permitted or a certificate error, never a message naming the exclusion that did not match.

TRAP-1

The bare name never fires

"docker" matches only the zero-argument string, so it never applies to docker ps. The published JSON schema suggests this form, so the usual path is to configure something inert, notice the tool is still confined, and have no way to tell why.

Fix: always write "docker *".

anthropics/claude-code#10524
TRAP-2

A match unsandboxes the whole call

Once an entry matches anywhere in a compound command, every other command in that call runs unsandboxed too, including commands that execute before it. With "git *" present, git status && cat ~/.ssh/id_ed25519 reads the key: file denies, credentials, and the network allowlist are all suspended for that call.

Fix: scope to subcommands, not binaries. "git push *", "git fetch *", and leave local git confined.

anthropics/claude-code#81157 (open)
TRAP-3

A prefix breaks the match

An entry matches the command as written, so a wrapper, prefix, or loop sends it back into the sandbox. gh api rate_limit runs unsandboxed and returns. rtk gh api rate_limit is sandboxed and fails. Four characters apart. Any PreToolUse hook that rewrites commands, which token-optimizing proxies do by design, disables every exclusion naming a wrapped binary.

Fix: add the wrapped forms explicitly, and run network git as plain commands rather than inside a loop.

Diagnostic signature: x509: OSStatus -26276

A Go CLI (gh, glab, gcloud, terraform) failing certificate verification with this code means it ran inside the sandbox and could not reach the macOS keychain. It is an exclusion that did not match, not an expired token, not an EDR agent, not a macOS security policy. The same session misdiagnosed it as all three before the real cause was found.

Two companions worth recognizing: git over SSH fails at DNS resolution because the proxy handles HTTP and HTTPS but not port 22 and blocks the ssh-agent socket. And a domain missing from the allowlist hangs to timeout (HTTP 000, curl exit 28) rather than erroring cleanly.

Defense Tools

mcp-scan

Invariant / Snyk

Scans MCP server configurations for vulnerabilities. Detects known vulnerable servers and versions.

github.com/invariantlabs-ai/mcp-scan

skills-ref validate

agentskills.io

Validates skill spec compliance (SKILL.md structure, frontmatter, naming conventions).

docs.rs/skills-ref-rs

Garak

NVIDIA

37+ probe modules for LLM vulnerabilities. Prompt injection detection and jailbreak testing.

github.com/NVIDIA/garak

MCP Fortress

mcp-fortress

Scans npm/PyPI dependencies of MCP servers. Queries CVE databases for risk scores.

github.com/mcp-fortress/mcp-fortress

SafeDep vet MCP

SafeDep

Software composition analysis integrated with agents. Detects slopsquatting and malicious packages.

safedep.io/introducing-vet-mcp-server

Koi Clawdex

Koi Security

ClawHub security addon. Checks skills against Koi malicious skill database pre-install and retroactively.

koi.ai/blog/clawhavoc

Built-in Claude Code Security Commands

This guide includes two slash commands for security auditing your configuration: /security-check for a quick 30-second scan, and /security-audit for a full 6-phase audit with a score out of 100. See the next section for details.

Built-in Security Commands

/security-check

Quick scan • ~30 seconds • Config vs known threats
$ /security-check

# Checks your config against threat-db.yaml
[1/4] Scanning .claude/settings.json...
[2/4] Checking MCP server versions...
[3/4] Scanning hooks for suspicious patterns...
[4/4] Matching against known malicious skills...

Result: 0 critical, 1 warning
Warning: @playwright/mcp unpinned (@latest)

/security-audit

Full audit • 2-5 minutes • 6 phases with score /100
$ /security-audit

# Full 6-phase security assessment
[Phase 1] Permission model analysis...
[Phase 2] MCP server inventory & CVE check...
[Phase 3] Hook security review...
[Phase 4] CLAUDE.md injection scan...
[Phase 5] Secrets detection...
[Phase 6] Supply chain assessment...

Security Posture Score: 82/100
3 recommendations generated

5-Minute Security Checklist

0/7
Complete

Sources & References

Snyk ToxicSkills

Feb 2026
snyk.io →

Koi Security ClawHavoc

Feb 2026
koi.ai →

SafeDep Threat Model

Jan 2026
safedep.io →

Cymulate EscapeRoute

Sep 2025
cymulate.com →

Checkpoint MCPoison

Oct 2025
checkpoint.com →

JFrog Prompt Hijacking

Oct 2025
jfrog.com →

JFrog PyPI MCP Reverse Shell

Dec 2025
research.jfrog.com →

Recorded Future MCP Inspector

Jul 2025
recordedfuture.com →

Flatt Security - 8 ways to pwn Claude

Aug 2025
flatt.tech →

SentinelOne WebFetch SSRF

Jan 2026
sentinelone.com →

Hacker News - MCP Git Server Flaws

Jan 2026
thehackernews.com →

Bitsight TRACE - Exposed MCP Servers

Jan 2026
bitsight.com →

Defender's Initiative - Postmark MCP

Nov 2025
defendersinitiative.substack.com →

SAFE-MCP Framework

Jan 2026
safemcp.org →