Governance, Safety & Risk Management·Task 5.2·Bloom: remember·Difficulty 1/5·6 min read·Updated 2026-07-14

The LLM System Risk Taxonomy for the CCAR-P Exam

Identify risks, limitations, and failure modes of LLM systems

SUBy Solomon UdohReviewed by Solomon UdohAI-assisted · human-reviewed
In short
The LLM system risk taxonomy is the small set of recurring risk categories an architect checks every design against: direct prompt injection (user input crafted to override instructions), indirect prompt injection (malicious instructions via retrieved content or tool output), token-budget exhaustion (oversized or padded input that truncates work or inflates cost), tool and action abuse (the model induced to call a side-effecting tool outside policy), and data exposure (sensitive fields entering the context or logs where they should not).

A checklist you run against every design

Most of the risk in an LLM system falls into a small, nameable set of categories. The CCAR-P exam treats knowing them as a remember-level skill, because they are the checklist an architect runs a proposed design against - the vocabulary that turns a vague worry about "AI security" into a set of specific questions with specific controls. Naming them is the first step of any risk assessment, and every deeper skill in this task statement assumes you can recite them.

The value of a taxonomy is coverage. When you can list the five categories, you can walk a design and ask, for each one, whether a control stands in the way. A design that has never been checked against "indirect injection" or "data exposure through logging" has an unexamined surface, and the exam is fond of scenarios where the missing category is exactly the one that failed in production.

The LLM system risk taxonomy
The recurring risk categories an architect checks every design against: direct prompt injection, indirect prompt injection, token-budget exhaustion, tool and action abuse, and data exposure. Each names a distinct attack surface with its own control, and a complete risk assessment accounts for all of them.

The five categories

Direct prompt injection is a user crafting input that overrides the system's instructions and redirects its behaviour. The attacker controls the user turn, so this attack targets input screening directly.

Indirect prompt injection is malicious instructions arriving through retrieved content or tool outputs that the model treats as trusted, which user-input screening never inspects. It is a distinct surface from direct injection, defended at a different point in the pipeline.

Token-budget exhaustion is oversized or adversarially padded input consuming the context or output budget - truncating useful work or inflating per-request cost. It is a security and reliability failure, not merely a cost nuisance.

Tool and action abuse is the model being induced to call a side-effecting tool outside policy. This is the exact failure that tool-call authorization exists to stop.

Data exposure is sensitive fields entering the context window or the logs where they should not, creating a leak that can occur independently of anything the model outputs.

Why the boundaries between categories matter

The categories are deliberately distinct because their controls are distinct. The most common oversimplification is collapsing "prompt injection" into one category, when direct and indirect injection need controls at different points - user-input screening for one, retrieved-content and tool-output screening for the other. Treating them as a single item leaves one of the two surfaces uncovered.

The other boundary worth holding is that data exposure can happen purely through logging, independent of the model. A system can produce clean, screened output and still leak a Social Security number into a log file. Because the exposure did not travel through the model's response, no output filter would catch it - which is why data exposure is its own category rather than a subcase of output screening.

2 surfaces
direct and indirect injection need different controls
budget
token exhaustion is a security risk, not just cost
logs
data exposure can occur with no unsafe model output

What the CCAR-P exam trips candidates on

The first trap is treating prompt injection as a single category rather than two distinct attack surfaces. A scenario defends the user's message thoroughly and calls injection handled; the credited reading names indirect injection as a separate, still-open surface. The taxonomy exists precisely so you do not conflate the two.

The second trap is forgetting that data exposure can happen purely through logging. A scenario shows a clean, well-screened model output and asks whether sensitive data is protected; candidates who equate data protection with output screening miss that the logging pipeline is a separate exposure point. The exam rewards checking all five categories rather than stopping at the ones the visible controls already address.

Worked example

An architect reviews a customer-support agent that retrieves answers from a partner knowledge base, issues refunds through a connected tool, and writes all activity to a request log. Which risk categories are present, and roughly what mitigates each?

Walk the taxonomy against the design. Direct prompt injection is present at the user turn - a customer can craft a message to override instructions - mitigated by input screening. Indirect prompt injection is present because answers are retrieved from a knowledge base the model trusts, mitigated by screening retrieved content before it enters the context. Token-budget exhaustion is present wherever user or retrieved content is unbounded, mitigated by deterministic length and format limits at input. Tool and action abuse is present because a refund tool has side effects, mitigated by deterministic tool-call authorization before the refund runs. Data exposure is present because all activity is logged, mitigated by minimising sensitive fields in the log and applying access and retention controls to it.

Notice that at least three categories - indirect injection, tool abuse, and data exposure through the log - are the ones a shallow review would miss, because the obvious control (screen the user's message) addresses only the first. Running the full taxonomy is what surfaces the log as an exposure point and the retrieval path as a second injection surface. That completeness is the whole point of naming the categories.

Common misreadings to avoid

Misconception

Prompt injection is one risk, handled once you screen the user's input.

What's actually true

Direct and indirect injection are two distinct attack surfaces needing different controls at different points. Screening the user's message addresses direct injection only; retrieved content and tool outputs remain an open surface until they are screened too.

Misconception

If the model's output is clean and screened, sensitive data is protected.

What's actually true

Data exposure can happen purely through logging, independent of the model's output. A clean response says nothing about whether a sensitive field landed in a log file, which is why data exposure is its own category with its own controls.

How this shows up on the exam

Domain 5 items ask you to identify the risk categories present in a proposed architecture, usually expecting at least three with a matching mitigation each. The reliable method is to run all five categories against the design rather than stopping at the visible controls, paying special attention to the two injection surfaces and to logging as an exposure point. The categories you almost miss are the ones the exam is testing.

This taxonomy is the entry point to the whole risk task statement. It expands into the direct vs indirect injection distinction and token-budget exhaustion as an attack surface, it is applied end to end in the system vulnerability walkthrough, and each category maps onto a checkpoint from the three-point guarded request path.

Check your understanding

A support agent screens the user's message for injection, and its output filter passes all responses. A reviewer asks whether sensitive data is protected. What is the most complete answer?

People also ask

What are the main risk categories for an LLM system?
Direct prompt injection, indirect prompt injection, token-budget exhaustion, tool and action abuse, and data exposure - the checklist an architect runs against every design.
Are direct and indirect injection the same risk?
No. Direct injection comes from the user’s message; indirect injection arrives via retrieved content or tool output. They are distinct surfaces needing different controls.
How can data be exposed independent of the model output?
Sensitive fields can land in logs even when the model’s output is clean, making data exposure through logging its own failure mode.

Watch and learn

Official Anthropic Academy lessons first, then hand-picked walkthroughs. Videos load only when you press play.

No videos curated for this concept yet

We are still curating the best official and community videos for this topic.

Official prep for this domain

Anthropic's own free prep module for this part of the syllabus, on the official prep course. Free with an Anthropic Academy sign-in.

References & primary sources

Adaptive study

Master this concept with Archie

Practice it inside an adaptive study session. Archie, your Socratic AI tutor, tracks your mastery with Bayesian Knowledge Tracing and schedules the perfect next review.

Start studying