Platform

Platform overview How it works Authorization testing Evidence & reports Private scanning Integrations

Solutions

Security agencies Product teams Regulated industries Partner programme

Learn

Blog Knowledge hub Compare

Resources

Pricing Documentation Help centre FAQ Security & data What we haven’t proved

Company

About Contact Careers Sign in to the platform Start a $199 pilot →

Home / Knowledge hub / Excessive agency

Knowledge hub

Excessive agency

Giving an AI agent more tools and permissions than its task needs.

Illustration explaining Excessive agency

What it means

Excessive agency is what happens when an AI system can do more than its task requires. OWASP names three causes: too much functionality, such as a tool that can delete when the job is only to read; too many permissions on the account behind it; and too much autonomy, with no person to approve risky actions.

It is least privilege applied to AI. The model is not trusted to decide safely, so its reach should be small enough that a wrong decision does little harm. Ask what the worst thing the agent could do is, then remove the tools and permissions that make that possible.

Why it matters

Models make mistakes and can be steered by text they read. When an agent can only draft a reply, a mistake is an awkward email. When it can send the email, issue a refund, change a record and call an API using a broad service account, the same mistake becomes an incident.

Combined with indirect prompt injection, it lets an outsider borrow your agent's access. The attacker never needs your login. They only need the agent to read something they wrote. The same applies to mistakes made without any attacker involved, such as a wrongly phrased request.

How it shows up

You meet it in assistants wired to email, calendars, ticketing, databases and code repositories. Typical mistakes: a plugin that exposes a whole API when one call is needed, one shared admin token for every action, a database user with write access for a read-only task, and no confirmation step before something irreversible.

Scope each tool narrowly. Run the agent as the signed-in person, so it can reach only what that person can. Use read-only access where reading is enough. Require human approval for money, deletion and outside messages. Log every tool call. Enforce all permissions in your own code and not in the prompt.

Questions people ask

Excessive agency, answered

What is the difference between excessive agency and prompt injection?

Prompt injection steers the model. Excessive agency decides how much damage a steered model can do.

Reducing agency limits the harm from many other failures, including ones you have not met yet.

Should an agent act with its own account or the user's?

Prefer the user's permissions, passed through safely, so the agent cannot reach more than the person could. A shared powerful account turns each person's agent into a route to everyone's data.

Check who the tool call runs as.

Do we always need a human to approve actions?

Not for everything. Reading and drafting can run freely. Anything costly, irreversible or sent outside the company should wait for approval.

Decide by the worst outcome of the action. Approval is cheap compared with undoing a wrong action.

Does a prompt telling the model what not to do help?

A little, but it is a request, not a control. The model can be talked past it.

Enforce limits in the tool layer and the permissions behind it. Keep sensitive rules in code.

How do we test for excessive agency?

List every tool the agent can call and the permissions behind each. Then try to get it to use one it should not need, or to act on data belonging to another account.

Fix by removing the tool or permission.

Cyberlop mark

What can your agent reach?

We check what each signed-in account can reach that it should not, including through features that call tools on its behalf, and each finding carries the request and the response. Ask us to run it on one of your applications.

Or start with a $199 pilot on one application: thirty days, success criteria agreed before day one, credited against the annual if you convert.