OWASP Top 10:
the ten risks, explained in practice
The industry reference list for web application security, translated into what each category means for a real application and what gets tested in it.
The OWASP Top 10 is not a list of vulnerabilities but a list of risk <em>categories</em>, updated periodically from data across tens of thousands of applications. It is the reference most contracts and compliance frameworks cite when they say "testing per a recognised methodology". This guide walks the 2021 edition — the one in general use — and shows, for each category, what is actually checked in a test.
A01 — Broken Access Control
First place, and the most consistent source of real incidents. The application verifies who you are but not whether you are allowed to perform the exact action requested. In practice: change an identifier in the URL and see another customer’s invoice; call an admin endpoint directly that the interface never shows you; modify a role field in a request and become an administrator. No scanner catches these, because it does not know who should see what.
A02 — Cryptographic Failures
Sensitive data transmitted or stored without adequate protection: traffic over HTTP, passwords stored with outdated algorithms, keys in source code, card data or identity documents kept in the clear "temporarily". The category was previously called "sensitive data exposure", and the rename is useful: the problem is not only exposure but choosing the wrong protection mechanism.
A03 — Injection
User-supplied data reaches an interpreter without separation: SQL, system commands, LDAP, XPath, server-side templates. It also includes cross-site scripting, moved here in the 2021 edition. This is the category automated tools cover best — which is precisely why, in a manual test, attention goes to the variants tools miss: second-order injection, unusual contexts, filters that can be bypassed.
A04 — Insecure Design
A category introduced in 2021 and the hardest to automate: the application does exactly what it was designed to do, and the design is the problem. A password recovery flow resting on a publicly known answer, a refund limit missing from the logic, an order process that can be replayed. There is no signature to detect here — only someone who understands the business and tries to misuse it.
A05 — Security Misconfiguration
Default accounts left active, error messages revealing internal structure, exposed admin services, overly broad cloud permissions, debug features left on in production. It is the category with the best ratio between remediation effort and risk removed — and, in most tests, the source of the first way in.
A06 — Vulnerable and Outdated Components
Libraries, frameworks and services with known, published vulnerabilities. The category best solved by automation: a dependency inventory and a recurring check resolve most cases. The real difficulty is not detection but updating — an old dependency woven deep into the code becomes a project, not a patch.
A07 — Identification and Authentication Failures
Weak passwords permitted, no attempt limiting, sessions that never expire, predictable tokens, account recovery that can be abused, multi-factor authentication bypassable through an alternative flow. The last case appears more often than expected: MFA on the web interface but not on the mobile API.
A08 — Software and Data Integrity Failures
Code or data accepted without verifying provenance: unsigned automatic updates, libraries pulled from uncontrolled sources, deserialisation of user-supplied objects, delivery pipelines where anyone can inject an artefact. This is the category matching supply chain attacks — which is why NIS2 and the legislation aligned to it treat it separately.
A09 — Security Logging and Monitoring Failures
The category that never causes a breach on its own but decides how long it lasts. Unlogged security events, logs kept only locally and wiped by the attacker, alerts reaching nobody, no way to reconstruct what happened. In a test it is measured simply: at the end, the team is asked what it noticed — and the answer says more than the findings list.
A10 — Server-Side Request Forgery (SSRF)
The application takes a user-supplied address and fetches it itself. The attacker points it at the internal network or the cloud provider’s metadata service and thereby reaches things it cannot touch directly. It entered the Top 10 in 2021 precisely because cloud architectures increased its impact: a single well-chosen request can return credentials.
What automation catches and what needs a human
| Category | Automated scan coverage | What manual testing adds |
|---|---|---|
| A01 Access control | Very low | Cross-role and cross-tenant testing with real accounts |
| A02 Cryptography | Partial (protocols, certificates) | Checking actual storage and key management |
| A03 Injection | Good | Second-order injection, contexts and bypassable filters |
| A04 Insecure design | None | Business flow abuse, the only method available |
| A05 Misconfiguration | Good | Assessing real impact in the architecture context |
| A06 Outdated components | Very good | Confirming exploitability, not just the version |
| A07 Authentication | Partial | MFA bypass via alternative flows, recovery abuse |
| A08 Integrity | Low | Analysis of the delivery chain and deserialisation |
| A09 Logging | None | Measuring what was actually detected during the test |
| A10 SSRF | Partial | Pivoting to internal services and cloud metadata |
Frequently asked questions
What is the OWASP Top 10?
It is the list of the ten most important security risk categories for web applications, published by the Open Worldwide Application Security Project and updated periodically from data gathered across tens of thousands of real applications. It is not a list of individual vulnerabilities but of categories — which is why it is used as a reporting structure and a methodological reference in contracts and compliance frameworks.
Does a test "per OWASP Top 10" cover everything?
No, and that is worth knowing before signing. The list covers the most frequent categories but does not include flaws specific to your business logic — a refund flow that can be replayed or a missing limit fits no category. A good test uses the Top 10 as the minimum structure and adds functional testing of the flows that move money or expose data.
Which category shows up most often in real tests?
Broken access control (A01) and security misconfiguration (A05). The first because authorisation must be checked on every action and applications grow faster than their rules; the second because infrastructure changes often and every change leaves something behind — an exposed service, a default account, an overly broad cloud permission. Both are relatively cheap to fix once identified.
How often is the list updated?
Every few years, based on data gathered from real applications and a community survey. The 2021 edition brought notable changes — the appearance of the insecure design and software integrity categories, the move of cross-site scripting into injection, and SSRF entering the Top 10. When citing the methodology in a contract, state the edition, so there is no ambiguity at audit time.
Is there an equivalent list for mobile apps and APIs?
Yes. OWASP publishes separate lists for mobile applications and for API security, plus more detailed verification guides such as the ASVS standard for web applications. For a product with both a mobile app and a public API, a complete test uses all three — the lists only partially overlap, and the API is often the least tested part.
Related guides
- What a pentest costs — what drives the price, how effort is estimated, and what makes two quotes comparable.
- DORA & TLPT — digital operational resilience in finance and threat-led penetration testing.
- ISO 27001 & SOC 2 — which controls require technical testing and what evidence the auditor accepts.
- Moldova’s Law 48/2023 — the national cybersecurity framework: who is in scope and what obligations it brings.
- PCI DSS 4.0 — requirements 11.3 and 11.4, segmentation testing, and what it means for payment processors.
- Pentest vs vulnerability scanning — what each one finds, what it misses, and what auditors accept as evidence.
- How to prepare for a pentest — scope, access, rules of engagement and everything settled before day one.
This material summarises the 2021 edition of the OWASP Top 10 for information. The list is updated periodically by OWASP; check the edition in force when citing it in a contract or an audit file.
Want your application tested against all ten?
Book a free consultation: we set the scope and you get a manual test that goes beyond the list, into your business logic.