Skip to content
Back to skills

Ai Agent Tool Abuse

ASecurity

Abuse an LLM agent's tools/functions — coerce it to call tools with attacker-chosen args for SSRF, RCE, data exfil, or privilege abuse. Load when the target is an agent with tools/ function-calling/plugins, MCP servers, code interpreters, or "the assistant can do X". Signals: function-calling, tool schemas, browse/email/query/exec tools, autonomous agents.

  • 20 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 22, 2026
ai-agentsrustgoshellrailsapidatabasesecurity

Works with

  • api
  • mcp

Security analysis

A100/100

Scanned September 22, 2026

npx -y skills add NoorQureshi/SploitAgent --skill ai-agent-tool-abuse --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ai Agent Tool Abuse?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ai Agent Tool Abuse
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/noorqureshi-ai-agent-tool-abuse/badge)](https://www.skillsdirectory.com/skills/noorqureshi-ai-agent-tool-abuse)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ai-agent-tool-abuse
description: >
  Abuse an LLM agent's tools/functions — coerce it to call tools with attacker-chosen args for
  SSRF, RCE, data exfil, or privilege abuse. Load when the target is an agent with tools/
  function-calling/plugins, MCP servers, code interpreters, or "the assistant can do X". Signals:
  function-calling, tool schemas, browse/email/query/exec tools, autonomous agents.
domain: ai-ml
type: technique
stability: learning
modes: [bugbounty, pentest, defense]
severity: critical
owasp_llm: [LLM06:2025-Excessive-Agency, LLM01:2025-Prompt-Injection]
cwe: [CWE-77, CWE-918]
tools: []
schema_version: 1
---

# LLM agent / tool abuse (excessive agency)

## When it applies
The target isn't just a chatbot — it can *act*: call functions, browse, run code, query
databases, send email, hit internal APIs, or chain MCP tools. Impact jumps from "bad text" to
real actions taken with the agent's privileges.

## Why it works
The model decides which tool to call and with what arguments, driven by text it can't fully trust
(user input or fetched content). If tools are over-permissioned or arguments aren't validated,
attacker text steers real actions — the classic "confused deputy".

## Method
1. **Enumerate the tools**: get the agent to reveal its tools/functions and schemas (often it
   just lists them), or read the app/MCP config.
2. **Coerce a call** (direct or via `ai-prompt-injection`/`ai-rag-poisoning`): craft input so the
   agent invokes a tool with your arguments.
3. **Route to impact**:
   - **SSRF/internal reach**: a browse/fetch tool → internal URLs, cloud metadata (→ `cloud-imds-ssrf`).
   - **RCE**: a code-interpreter/shell tool → command execution.
   - **Data exfil**: a query/email/file tool → dump data to you (markdown-image beacon, an email to your address).
   - **Privilege abuse**: an admin/action tool called on behalf of a victim (confused deputy).
4. **Chaining**: poisoned content the agent reads later triggers the tool call (indirect, multi-user).

## Gotchas
- The severity is the *action*, tied to the tool's real privilege — demonstrate the effect, not just intent.
- Guardrails on the model don't cover tool arg-validation — the bug is often at the tool boundary.
- Defenders: least-privilege tools, human-in-the-loop for sensitive actions, validate/allowlist args, isolate the browser/exec.

## Verify success
The agent performs an attacker-directed action via a tool — an SSRF hit, code execution, data
exfiltrated, or a privileged action taken — traceable to your input.

## References
OWASP LLM Top 10 (2025) LLM06/LLM01; MCP security guidance; agent "confused deputy" research.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…