Blog

OWASP12 min read

OWASP LLM Top 10 in 2026: What Every Developer Needs to Know

Most teams know prompt injection exists, but far fewer test for it systematically. This guide breaks down all ten OWASP categories and how to apply them as a practical security checklist.

Table of Contents

Why the OWASP LLM Top 10 Matters in 2026

Most developers shipping LLM-powered features in 2026 have heard of prompt injection. Far fewer have actually tested their endpoints for it. That gap is where real incidents happen.

The OWASP LLM Top 10 is the closest thing the industry has to a shared standard for LLM security. It catalogs the ten most significant vulnerability categories affecting applications built on large language models, from prompt injection to model theft. If your team is building a chatbot, a copilot, or a RAG pipeline and you have not mapped your security posture to this list, you have blind spots you do not know about yet.

This article walks through each of the ten categories, explains what the attack looks like in practice, and tells you which ones you can test automatically today.

The Full List: OWASP LLM Top 10 Vulnerabilities

LLM01: Prompt Injection

Prompt injection is the top-ranked vulnerability for a reason. An attacker crafts input that overrides your system prompt, changes the model's behavior, or causes it to execute instructions it should not.

There are two variants. Direct injection happens when a user sends malicious instructions through the chat interface. Indirect injection happens when the model processes external content, a webpage, a document, or a tool response, that contains embedded instructions. Both can cause the model to leak data, ignore safety rules, or act on behalf of the attacker.

This is OWASP LLM01, and it is the category most automated scanners focus on first.

LLM02: Insecure Output Handling

The model's output does not stay inside the LLM. It gets rendered in a UI, passed to a downstream system, or used to construct a database query. If you trust that output without validation, you have introduced a new injection surface.

Classic examples include LLM-generated content that contains JavaScript executed by a browser (XSS), or SQL fragments passed directly to a query builder. The model is not the vulnerability here, your output pipeline is.

LLM03: Training Data Poisoning

If an attacker can influence what data your model was trained or fine-tuned on, they can influence its behavior at inference time. This is more relevant for teams fine-tuning their own models or using retrieval-augmented generation with external data sources.

Poisoned training data can introduce backdoors, bias outputs toward specific conclusions, or cause the model to behave differently when it encounters specific trigger phrases.

LLM04: Model Denial of Service

LLMs are computationally expensive. Sending carefully crafted inputs that force the model into long, resource-intensive generation loops can degrade performance or drive up costs significantly.

This category covers both deliberate attacks and accidental abuse patterns. If your endpoint has no rate limiting or input length constraints, you are exposed.

LLM05: Supply Chain Vulnerabilities

You are probably not running a model you trained from scratch. You are using a foundation model from a third-party provider, a fine-tuned variant, or a plugin ecosystem. Each of those is a supply chain dependency.

Compromised model weights, malicious plugins, or vulnerable third-party integrations can introduce risks that have nothing to do with your own code. This category asks you to treat your AI supply chain the same way you treat your software dependencies.

LLM06: Sensitive Information Disclosure

Models can leak sensitive information in several ways. They might reproduce training data that includes PII or credentials. They might expose your system prompt when asked directly. They might reveal internal configuration details through carefully structured queries.

System prompt leakage is particularly common and often underestimated. Your system prompt frequently contains business logic, persona instructions, and sometimes API keys or internal URLs that you do not want users to see.

LLM07: Insecure Plugin Design

LLM plugins and tool-use integrations extend what a model can do, but they also extend the attack surface. A plugin that executes code, reads files, or calls external APIs needs the same security scrutiny as any other privileged component.

Insecure plugin design typically means insufficient input validation, overly broad permissions, or no authentication on the plugin endpoint itself. An attacker who can control what the model sends to a plugin can potentially control what the plugin does.

LLM08: Excessive Agency

When you give an LLM the ability to take actions, send emails, modify records, or call APIs, you need to constrain what it is allowed to do. Excessive agency means the model has more permissions than it needs for its intended function.

This follows the principle of least privilege. If your copilot only needs read access to a knowledge base, it should not have write access to your CRM. The risk is not just malicious input; it is also the model making mistakes with real consequences.

LLM09: Overreliance

This one is less about attackers and more about your own team. Overreliance means treating model outputs as authoritative without appropriate human review or validation.

In security contexts, this matters when teams use LLMs to generate code, write configuration, or make access control decisions without checking the output. The model can be confidently wrong, and if your process does not account for that, errors propagate downstream.

LLM10: Model Theft

Model theft covers attempts to extract your model's weights, architecture, or training data through repeated querying. This is most relevant if you have invested in fine-tuning a model on proprietary data and that model represents a competitive asset.

Attackers can use systematic probing to reconstruct model behavior or extract memorized training data. Rate limiting, output monitoring, and query logging are the primary defenses here.

Which Vulnerabilities Can Be Tested Automatically

Not all ten categories are equally testable through automated attack simulation. Here is a practical breakdown:

VulnerabilityAutomatically TestablePrimary Method
LLM01: Prompt InjectionYesDirect and indirect injection probes
LLM02: Insecure Output HandlingPartialOutput inspection, response analysis
LLM03: Training Data PoisoningNoRequires training pipeline access
LLM04: Model Denial of ServicePartialLong-context and resource-heavy payloads
LLM05: Supply Chain VulnerabilitiesNoManual audit and dependency review
LLM06: Sensitive Information DisclosureYesSystem prompt leak detection, PII probes
LLM07: Insecure Plugin DesignPartialDepends on plugin exposure
LLM08: Excessive AgencyPartialAction boundary testing
LLM09: OverrelianceNoProcess and workflow review
LLM10: Model TheftPartialQuery pattern detection

LLM01 and LLM06 are where automated scanning delivers the most direct value. These are also the categories where most production LLM endpoints have undetected weaknesses right now.

BastionLLM runs 120+ attack probes covering prompt injection (OWASP LLM01 compliant), jailbreak attempts including DAN attacks and role-play manipulation, system prompt leak detection, safety bypass attempts, and both direct and indirect injection patterns. You point it at your endpoint URL, configure your payload schema and response parsing, and it returns pass/fail verdicts with the raw responses so you can see exactly what happened.

Start your first scan free. No setup required. bastionllm.com

How to Use This List as a Security Checklist

The OWASP LLM Top 10 is most useful when you treat it as a structured checklist rather than background reading. Here is how to apply it practically.

Step 1: Map your attack surface. For each item in the Top 10, ask whether your application is exposed. A chatbot with no plugin access has a different risk profile than a copilot that can write to a database.

Step 2: Prioritize LLM01 and LLM06 first. Prompt injection and sensitive information disclosure are the most common, most testable, and most immediately exploitable categories. Start there.

Step 3: Run automated scans against your endpoint. Manual review catches some issues, but it does not scale and it does not catch everything. Automated scanning with 120+ attack probes covers patterns you would not think to test manually.

Step 4: Schedule recurring scans. Your endpoint changes. Your system prompt changes. New jailbreak techniques emerge. A one-time scan gives you a point-in-time snapshot. Weekly automated scans give you continuous coverage.

Step 5: Keep your scan history. If you are working toward compliance or preparing for a security audit, you need evidence of ongoing testing, not just a single report. Scan history going back 12 months is the kind of documentation that satisfies AppSec reviewers.

Step 6: Address the non-testable categories manually. Training data poisoning, supply chain risks, and overreliance require process changes and architectural decisions. Document your approach to each one. Automated tooling handles the testable surface; you own the rest.

The LLM security checklist is not a one-and-done exercise. Threats evolve, your application changes, and what passed last month might fail today.

FAQs

What is the OWASP LLM Top 10?

The OWASP LLM Top 10 is a list of the ten most significant security vulnerability categories affecting applications built on large language models. It's maintained by OWASP and serves as a reference standard for developers and security engineers evaluating the security posture of LLM-powered systems.

What is OWASP LLM01?

LLM01 is the OWASP designation for prompt injection, the top-ranked vulnerability in the LLM Top 10. It covers attacks where malicious input overrides a model's system prompt or causes it to execute unauthorized instructions. Both direct injection (via user input) and indirect injection (via external content processed by the model) fall under LLM01.

Which OWASP LLM Top 10 vulnerabilities can be tested automatically?

Prompt injection (LLM01) and sensitive information disclosure (LLM06) are the most directly testable through automated attack simulation. Jailbreak attempts, DAN attacks, role-play manipulation, system prompt leak detection, and direct and indirect injection probes all map to these categories. Some other categories, like training data poisoning and supply chain risks, require manual review.

How often should I test my LLM endpoint against the OWASP LLM Top 10?

At minimum, test after any significant change to your system prompt, model configuration, or application logic. For production endpoints, weekly automated scans provide continuous coverage and catch regressions that point-in-time testing misses.

Do I need a security background to use the OWASP LLM Top 10 as a checklist?

No. The list is written to be accessible to developers, not just security specialists. For the testable categories, automated scanning tools handle the technical complexity. For the non-testable categories, the OWASP documentation provides enough context to evaluate your own architecture.

What's the difference between prompt injection and jailbreaking?

Prompt injection involves injecting instructions that override or manipulate the model's system prompt, often through user input or external content. Jailbreaking refers to techniques that bypass the model's safety guidelines, such as DAN attacks or role-play manipulation, to get it to produce outputs it's designed to refuse. Both fall under or adjacent to LLM01 and are distinct attack patterns worth testing separately.

How does automated LLM security scanning map to OWASP compliance?

Automated scanners that run OWASP LLM01-compliant probes test your endpoint against the prompt injection attack patterns defined in the standard. Pass/fail verdicts with raw responses give you evidence of testing that maps directly to the OWASP categories, which is useful for security audits and compliance documentation.

Start Testing Against the OWASP LLM Top 10

Knowing the list is the easy part. The harder part is verifying that your endpoint actually holds up against these attack patterns in practice.

Prompt injection, jailbreaks, and system prompt leakage are not theoretical risks. They're active attack vectors that affect production LLM endpoints right now. If you have not tested for them, you do not know your actual security posture.

BastionLLM maps directly to the testable categories in the OWASP LLM Top 10. Configure your endpoint in minutes, run your first scan, and get pass/fail results with raw responses. Scheduled weekly scans keep you covered as your application evolves.

Learn more and start your first scan free at bastionllm.com.

OWASP LLM Top 10: Complete Security Guide

Get the full reference for prompt injection attacks, LLM jailbreaks, system prompt leaks, and OWASP-aligned testing workflows in one pillar guide.

Read the OWASP LLM Top 10 guide