A community threat catalog for LLM apps, mapped for the classroom.
Not a law, not a certification โ a ranked, crowdsourced list of the most impactful ways LLM-powered applications actually fail in production, maintained by a working group of practitioners and updated as attack patterns evolve.
Most LLM01โLLM10 risks map to a stage in the request lifecycle. A few โ information exposure, retrieval infrastructure, resource limits โ cut across all of them.
Purpose & Origin
What this list is, who maintains it, and why it looks different from a formal standard.
What it is
The OWASP Top 10 for LLM Applications is a community-driven awareness document ranking the most critical security risks specific to applications built on large language models โ produced by OWASP's GenAI Security Project, the same nonprofit community behind the long-running OWASP Top 10 for web applications.
Why it exists
LLM applications introduce failure modes traditional application security checklists don't cover โ a model can be tricked by its own input text, leak information through its own output, or be granted too much autonomous authority. This list gives developers, security teams, and educators shared vocabulary for those new risks.
How it's built
Contributed and reviewed openly by a working group of security practitioners, researchers, and AI engineers โ not issued by a government body or standards organization. The list has already been revised once (originally published 2023, substantially updated for 2025) as real-world attack patterns matured.
What it is not
Not exhaustive, not a compliance checklist, and not a substitute for a full threat model of a specific system. It's a prioritized starting point โ the ten risks OWASP's contributors currently judge most likely to matter across LLM applications generally.
How to Use This Guide
Built for a course session on securing or evaluating LLM-integrated systems.
- Start from the attack surface map. Before memorizing ten labels, place them: which stage of a request โ input, model, output, infrastructure โ does each risk actually live in?
- Notice which risks are stage-specific vs. cross-cutting. Prompt Injection lives at the input boundary. Sensitive Information Disclosure and resource exhaustion can happen almost anywhere in the pipeline โ treat those differently in a threat model.
- Pair each risk with a concrete example. Every entry below includes a short, realistic scenario โ use it as the seed for a "how would you test for this" discussion, not just a definition to memorize.
- Apply it to one real LLM-integrated system. A customer-support chatbot with tool access, a RAG-based internal search tool, an AI coding assistant โ walk all ten risks against it and note which genuinely apply.
- Cross-reference against NIST AI RMF or ISO/IEC 42001. This list is a technical threat catalog; those are governance frameworks. Use OWASP's list to populate the risk-identification work those frameworks call for.
- Go to genai.owasp.org for anything graded. The list is actively revised โ confirm you're citing the current version and exact wording from the source document.
Attack Surface Map
The ten risks below, grouped by where in an LLM application's architecture they actually occur.
Input Surface
โ what a user or upstream system feeds the model
Crafted input that manipulates an LLM into ignoring its intended instructions or safety constraints. Direct injection comes straight from the user; indirect injection is hidden in content the model reads later โ a webpage, a document, a tool's returned data.
Why it mattersIt's the entry point for most other LLM-specific attacks: a successful injection can be the first step toward triggering excessive agency, leaking a system prompt, or exfiltrating sensitive data.
Model & Training Data
โ risks built into the model before a single user ever queries it
Vulnerabilities introduced through third-party components โ pretrained base models, fine-tuning datasets, LoRA adapters, plugins, or hosting/serving infrastructure โ rather than code the organization wrote itself.
Why it mattersAn LLM application often inherits risk from a dozen upstream parties it never directly vetted; a compromised or poisoned upstream artifact can propagate silently downstream.
Deliberate manipulation of training, fine-tuning, or embedding data to introduce vulnerabilities, biases, or backdoors that later affect the model's behavior, security, or ethical performance.
Why it mattersUnlike a runtime attack, poisoning happens upstream and can be extremely difficult to detect after the fact โ the model simply behaves as it was (mis)trained to.
Output & Runtime Behavior
โ what the model produces, and what it's allowed to do with it
Insufficient validation, sanitization, or escaping of LLM-generated output before it's passed to a downstream component โ a browser, a shell, a database query, another service.
Why it mattersThis turns an LLM into an attacker-controlled input source for the rest of the system โ the same class of bug as classic XSS or SQL injection, just with the model as the delivery mechanism.
An LLM-based system granted more autonomy, permissions, or tool access than its actual task requires โ so a manipulated or simply mistaken output can trigger a damaging real-world action.
Why it mattersThe blast radius of a bad output scales with what the system is allowed to do. A chatbot that can only draft text is low-risk; one that can also send emails, execute code, or move funds is a very different system.
Confidently stated, false or misleading output โ including hallucinated facts, citations, or code โ combined with users' tendency to over-trust fluent-sounding answers.
Why it mattersUnlike a crashed system, a confidently wrong answer often isn't flagged as a failure at all โ it's the risk that looks least like a security incident and is easiest to overlook.
Information Exposure
โ cuts across the whole pipeline, not tied to one stage
The model reveals personal data, proprietary business information, or credentials โ whether memorized from training data, present in the current conversation context, or accessible through a connected system.
Why it mattersDisclosure can happen even without an attack โ through ordinary over-sharing in a poorly scoped prompt or a model that memorized more of its training data than intended.
The hidden instructions that configure an LLM application's behavior (its "system prompt") are unintentionally revealed to a user โ exposing internal logic, business rules, or occasionally embedded secrets.
Why it mattersA leaked system prompt hands an attacker a map of the application's guardrails, making every other attack on the list easier to aim.
Infrastructure & Retrieval
โ also cuts across the pipeline, tied to supporting systems rather than the model itself
Security gaps in how vectors and embeddings are generated, stored, and retrieved in retrieval-augmented generation (RAG) systems โ including insufficient access control on a shared vector database or poisoned documents entering the retrieval index.
Why it mattersRAG is meant to ground a model in trustworthy data; if the retrieval layer itself is compromised or under-permissioned, it becomes a new way to feed the model bad or unauthorized information.
Insufficient limits on how much a user (or an automated agent) can make an LLM system compute or spend โ covering both denial-of-service (resource exhaustion) and "denial-of-wallet" (runaway API cost) attacks.
Why it mattersLLM inference is expensive per-request in a way traditional web requests usually aren't, so a lack of rate-limiting can be a direct, fast-moving financial risk, not just an availability one.
Classroom Uses
Ways instructors have used this list with students.
Threat-model walk-through
Give students an architecture diagram of a hypothetical LLM application (chatbot + RAG + tool access) and have them annotate it with every LLM0X risk that applies at each component.
Red team / blue team drill
Split the class: one half designs a prompt-injection or system-prompt-leakage attempt against a described system, the other proposes the specific control that would have stopped it.
Direct vs. indirect injection
Have students write one example each of direct and indirect prompt injection for the same target application, then discuss why indirect injection is often the harder one to defend against.
Version comparison
Assign small groups to compare the 2023 and 2025 editions of the list (e.g., "Insecure Output Handling" becoming "Improper Output Handling," the new "System Prompt Leakage" entry) and discuss what real-world incidents likely drove each change.
Sources & Further Reading
This guide is a teaching summary. For anything graded, cite the current OWASP document directly.
OWASP GenAI Security Project
The current home of the Top 10 for LLM Applications, including the full PDF, exploitation examples, and prevention guidance.genai.owasp.org
OWASP Top 10 (general)
Useful for contrast โ the long-running web application security list this project's format and naming convention is modeled on.owasp.org/www-project-top-ten