LLM01: Prompt Injection holds the top position for good reason and has not moved since the list's inception. It exploits the LLM's inability to reliably separate instructions from data, allowing attackers to override intended behavior either through direct manipulation or by planting instructions in content the model processes. Covered in depth in the Prompt Injection topic.
LLM02: Sensitive Information Disclosure rose to second place in the 2025 edition, from sixth. LLMs can memorize and later reproduce fragments of their training data, including PII, proprietary business data, confidential documents, and credentials. Attackers have demonstrated techniques for extracting memorized content through targeted queries. Models can also be prompted to reveal their system prompt, which may contain sensitive configuration or operational logic.
LLM03: Supply Chain addresses the complex dependency chain that surrounds modern LLM applications: foundation models from external providers, fine-tuning datasets from third parties, plugins and integrations, RAG data sources, and inference APIs. Each is an opportunity for compromise. Covered in detail in the Data and Model Poisoning topic.
LLM04: Data and Model Poisoning specifically addresses manipulation of training data, fine-tuning data, and retrieval content. Attackers who can influence these datasets can cause models to produce biased outputs, degrade accuracy on targeted topics, or exhibit backdoor behaviors triggered by specific inputs that are invisible under standard evaluation. Covered in depth in the Data and Model Poisoning topic.
LLM05: Improper Output Handling covers insufficient validation, sanitization, and handling of LLM-generated content before it is passed to downstream systems. When model outputs are used in contexts that interpret them as instructions, code, or structured data, unsanitized outputs can introduce injection vulnerabilities in those downstream systems. A model that generates SQL and passes it to a database without sanitization can be the source of SQL injection even though the injection occurred at the LLM output level.
LLM06: Excessive Agency is one of the most significantly expanded entries in the 2025 edition. When LLM agents have access to more tools than their task requires, broader permissions than necessary, or the ability to take high-impact actions without human review, they become a larger attack surface. OWASP identifies three root causes: excessive functionality, excessive permissions, and excessive autonomy. The mitigation is least-privilege design for agents.
LLM07: System Prompt Leakage is a new category in 2025. System prompts increasingly contain sensitive instructions, credentials, business logic, and security controls. When these prompts are extracted through adversarial querying, attackers gain insight into the application's configuration, its security mechanisms, and the specific instructions it is trying to follow.
LLM08: Vector and Embedding Weaknesses is also new in 2025, reflecting the widespread adoption of RAG architectures. Attackers can poison vector databases by injecting malicious content that gets retrieved during legitimate queries. Insufficient access controls on vector stores can expose sensitive data across tenant boundaries.
LLM09: Misinformation (renamed from "Overreliance" in previous editions) addresses the risk that LLMs generate and confidently assert false information. Models hallucinate facts, fabricate citations, and produce polished responses to questions they cannot reliably answer. The risk is not just that users trust the output too much; it is that the model itself generates and propagates false information that can mislead critical decisions in legal, medical, financial, and security contexts.
LLM10: Unbounded Consumption addresses uncontrolled resource consumption by LLM applications. Unlike traditional denial-of-service attacks that saturate network capacity, LLM resource abuse involves triggering computationally expensive inference operations, prompt chains that consume excessive tokens, or agent loops that make repeated external API calls.