October 19, 2026
OWASP Top 10:2025: What Security Teams Should Operationalize
Ten risks. Clear owners. Verifiable controls. A practical 90-day plan for making application security part of software delivery.

By Arthur Steel | Contra Average
12 min read
Arthur Steel | Contra Average
1. The Release Passed. The Control Failed.
Every indicator on the release dashboard is green.
Static analysis has completed. The dependency scan reports no new critical findings. The deployment ticket has the required approvals. Nothing in the release pipeline indicates a reason to stop.
Then a tester signs in as Customer A, changes a payee identifier in an API request, and successfully modifies a payment record belonging to Customer B.
The application accepts the request. The database confirms the unauthorized change.
This is a fictional scenario, but the underlying failure is entirely plausible. The scanners did what they were configured to do. The release process checked the conditions it had been told to check.
What nobody had done was turn a basic business rule โ customers must not modify another customer's payment information โ into an enforceable release requirement.
There was no negative authorization test. No explicit acceptance criterion. No accountable decision-maker responsible for closing that gap before deployment.
Adding another scanner would not necessarily have solved the problem. Someone first needed to recognize what had to be true, assign responsibility, and require evidence.
That distinction is central to understanding the OWASP Top 10:2025.
The OWASP Top 10 identifies the risks. It does not operate the controls.
2. What Changed in OWASP Top 10:2025
The 2025 edition introduces two new categories and consolidates another. Several existing categories also move in the rankings or receive revised names.
The changes deserve attention, although not because every movement signals a corresponding increase or decrease in an organization's exposure. The more useful question is what the revised categories reveal about the responsibilities of modern application security teams.
According to the official OWASP introduction, five developments warrant particular attention.
A01: Broken Access Control remains the highest-ranked category and now incorporates Server-Side Request Forgery (SSRF), previously a separate entry. That consolidation should not obscure the technical distinction. Unauthorized access to another customer's records and an attacker influencing a server to contact an internal service are different failure modes. Both require deliberate defenses.
A02: Security Misconfiguration moves from fifth to second. Application behavior increasingly depends on infrastructure definitions, cloud permissions, deployment parameters, and configuration choices. Secure source code does not compensate for a production environment that grants excessive privileges or exposes an unintended service.
A03: Software Supply Chain Failures broadens the former Vulnerable and Outdated Components category. The concern extends beyond libraries with known vulnerabilities to the repositories, developer tools, build infrastructure, dependencies, and distribution processes involved in producing software.
A09: Security Logging & Alerting Failures remains ninth but emphasizes actionable alerting. Recording a security event is not equivalent to detecting it in time or ensuring that someone investigates.
A10: Mishandling of Exceptional Conditions is new. It addresses what happens when applications encounter abnormal inputs, unexpected states, unavailable dependencies, exhausted resources, or interrupted operations. Failure behavior is part of security design, not simply application reliability.
These distinctions matter, but the rankings require context. OWASP uses contributed testing data alongside practitioner survey input. Some weaknesses are easier to detect through widespread automated testing than others. A change in position therefore should not be treated as a direct measurement of changing risk in a particular application portfolio.
The remaining 2025 categories continue to address cryptography, injection, insecure design, authentication, and software or data integrity.
Most importantly, OWASP describes the Top 10 as an awareness document. It is neither a comprehensive assurance standard nor a substitute for organizational risk assessment, technical verification, or applicable compliance obligations.
OWASP's accompanying application security program guidance makes the broader direction clear: prioritize applications by risk, embed security activities into development, and evaluate whether those activities produce useful results.
Knowing the categories is the beginning. The harder work is deciding what must happen because of them.
3. Why Awareness Is Not an Operating Model
Consider Broken Access Control.
A security policy might require appropriate authorization. A development standard might tell engineers to enforce access permissions. A scanner might detect certain common authorization weaknesses.
None of those statements establishes whether Customer A can modify Customer B's payee.
That question needs an owner, a defined control, a verification method, and a record of the result.
To make that relationship explicit, I use the Contra Average assurance chain: Risk โ Control โ Verify โ Evidence.
This is an original editorial model, not an OWASP or NIST framework.
Risk: Describe the failure in the application's business context. Identify the affected transaction or resource, the potential consequence, and the person accountable for the risk decision.
Control: Specify the required security behavior and assign implementation ownership. "Apply secure coding practices" is too broad. "Reject updates when the authenticated customer does not own the target payee" is actionable.
Verify: Test the behavior under conditions that could expose a failure. Record the expected outcome, actual outcome, environment, and relevant application version. Include negative and exceptional conditions where they matter.
Evidence: Link the requirement, implementation, test result, unresolved issues, and release decision so another reviewer can reconstruct what happened.
Accountability and feedback connect all four stages. Evidence that a control failed should change the decision, not merely populate a dashboard.
For deeper technical requirements, teams can draw on OWASP ASVS. OWASP SAMM supports application security maturity assessment, while NIST's final Secure Software Development Framework, version 1.1, addresses broader development practices.
These resources complement each other. None removes the need to determine which controls a specific application actually requires.
4. Ten Risks, Ten Operational Decisions
The following are practical implementation recommendations, not an official OWASP checklist. The controls, tests, and records should be tailored to the application's architecture, exposure, and business consequences.
The question for each category is the same: what decision must someone make, and how will the organization know whether it was carried out?
A01:2025 โ Broken Access Control
Who determines which users can perform which operations on which resources?
Product owners define business entitlements; application engineering implements server-side, deny-by-default authorization; AppSec reviews higher-risk boundaries. Verification should include unauthorized cross-account access, privilege escalation, alternate API paths, and attempts to modify resources outside the authenticated user's ownership.
SSRF requires additional defenses: appropriate destination restrictions, protocol validation, redirect handling, and outbound network controls.
Evidence: Approved authorization rules, negative-test results, and reviewed exceptions. See OWASP A01.
A02:2025 โ Security Misconfiguration
Who owns the security settings that actually reach production?
Platform and application teams need version-controlled configuration baselines, least-privilege service permissions, secure defaults, and defined approval rules for deviations. Configuration checks should run before deployment, but production drift matters too.
A baseline is useful only when it represents the intended operating state and is periodically validated against reality.
Evidence: Approved baseline version, deployment checks, configuration differences, and remediation records. See OWASP A02.
A03:2025 โ Software Supply Chain Failures
A dependency scanner can identify known vulnerabilities in a package. It cannot establish that the process producing the application is trustworthy.
That distinction changes the ownership question: who is responsible for the integrity of the entire software production process?
Build engineering and AppSec should maintain visibility into direct and transitive dependencies, use software bills of materials (SBOMs) where appropriate, monitor relevant advisories, and triage findings using exposure, affected functionality, exploit information, and uncertainty.
Apparent code unreachability may inform prioritization. It should not be treated as conclusive evidence that a vulnerable dependency is harmless.
Then examine the build environment itself. Who can change pipeline definitions? Who controls artifact signing credentials? Could a compromised build identity introduce changes after code review? Are source repositories, package registries, build workers, and promotion permissions protected?
Verification should include privileged-access reviews, pipeline change controls, dependency-policy tests, and checks that an artifact corresponds to the expected source revision and authorized build.
An SBOM is an inventory, not a trust guarantee. Even provenance or signing evidence depends on the integrity of its producer, keys, and verification policy.
Evidence: Release-linked SBOMs, dependency risk decisions, pipeline reviews, and build provenance. See OWASP A03.
A04:2025 โ Cryptographic Failures
Which data requires protection, and who approves the cryptographic design?
Security architects and application owners should define suitable mechanisms, protect keys throughout their lifecycle, and minimize unnecessary sensitive-data collection and retention.
Password storage requires appropriate salted, adaptive password hashing โ not reversible encryption. Data encryption requires suitable modes, secure randomness, and protected keys.
Verify actual configurations, certificate validation, key access, and whether sensitive information leaks through logs or backups.
Evidence: Data-flow assessments, cryptographic configuration tests, and key-management reviews. See OWASP A04.
A05:2025 โ Injection
Where does untrusted data enter a query, command, template, or rendered output?
Engineering leads should establish approved coding patterns for these boundaries. Parameterized database operations, safe command interfaces, and context-appropriate output encoding serve different purposes; one technique does not replace the others.
Test the actual paths between inputs and interpreters, including administrative functions and less frequently used APIs.
Evidence: Coding standards, targeted injection tests, reviewed findings, and remediation commits. See OWASP A05.
A06:2025 โ Insecure Design
Which design assumptions deserve challenge before implementation?
Product owners, architects, and AppSec reviewers should examine consequential changes to payment workflows, trust boundaries, tenant separation, administrative privileges, and sensitive-data flows.
Threat models should produce decisions: abuse cases, security requirements, mitigation owners, and acceptance criteria. A diagram without those outcomes contributes limited assurance.
Verification should exercise workflow manipulation, replay, concurrency, and other credible design failures.
Evidence: Reviewed threat models, security requirements, architecture decisions, and abuse-case tests. See OWASP A06.
A07:2025 โ Authentication Failures
What assurance is necessary before an identity can perform a sensitive action?
Identity and application teams should define risk-appropriate authentication, multifactor protections, session management, credential recovery, and controls over service identities.
Test expired and revoked sessions, authentication recovery abuse, privileged actions, and token misuse. A successful login test says little about what happens after authentication.
Evidence: Identity requirements, session-security tests, configuration reviews, and accepted exceptions. See OWASP A07.
A08:2025 โ Software or Data Integrity Failures
At which boundaries must the application establish that software or data is authentic and unchanged?
Release and application engineering should verify relevant updates, packages, artifacts, and externally controlled data before trusting them. Signature verification needs a trusted signer, protected keys, and explicit acceptance rules.
Deliberately alter test artifacts and data to confirm rejection. Review deserialization paths separately: a correctly verified artifact does not make unsafe handling of untrusted serialized data acceptable.
A03 addresses the broader supply-chain lifecycle. A08 focuses more directly on integrity and trust decisions at software and data boundaries. Some controls support both categories.
Evidence: Artifact-verification results, trust-policy records, and tampering tests. See OWASP A08.
A09:2025 โ Security Logging & Alerting Failures
Which security events require intervention, and who must receive them?
Application owners and security operations should define meaningful events, useful context, protected logging, alert rules, and escalation responsibilities.
Testing must extend beyond generating a log. Confirm that the event triggers the intended alert, reaches the correct responder, receives acknowledgment, and leads to the required triage or action.
A delivered notification and an effective response are different results.
Evidence: Event definitions, alert-routing tests, response exercises, and corrective actions. See OWASP A09.
A10:2025 โ Mishandling of Exceptional Conditions
What happens when an application cannot establish a reliable result?
Consider an authorization service that times out before approving a payment. The application must not interpret uncertainty as permission. Engineering should define whether the transaction is rejected or safely deferred, how the condition is recorded, and what the customer sees.
A more difficult case occurs when the downstream payment service times out after receiving a request.
The calling application may not know whether the payment was accepted. Blindly retrying could execute the same transaction twice.
Secure handling may require durable transaction states, stable idempotency keys, bounded retries, reconciliation, and compensating actions. Local database rollback cannot automatically reverse an external payment already accepted by another system.
Test these conditions deliberately. Interrupt dependencies, return malformed responses, exhaust relevant resources, introduce repeated requests, and examine what the application records and does.
The objective is not simply graceful error messages. It is preventing unsafe business effects when normal assumptions no longer hold.
Evidence: Fault-injection results, transaction-state assertions, retry and reconciliation tests, and recovery decisions. See OWASP A10.
Across all ten categories, the pattern is consistent. Security becomes operational when requirements affect engineering behavior, tests challenge the expected outcome, and someone has the authority to act on the results.
5. What This Looks Like in a Real Release
Return to the fictional customer-account application.
The proposed release adds saved payees and scheduled payments. Two security requirements are especially consequential: customers must not modify another customer's payee records, and uncertain authorization must not result in an unauthorized transfer.
The product owner approves those business rules. Engineering implements the authorization checks and transaction safeguards. AppSec defines adversarial acceptance tests, while platform engineering protects the build and deployment process.
Continuous integration runs code analysis, dependency checks, configuration verification, and targeted security tests. Results are associated with a specific source revision and release artifact.
Then test AUTH-NEG-004 fails.
The test authenticates as Customer A, attempts to update Customer B's payee, and expects denial without a database change. Instead, the application returns a successful response and modifies the record.
The release is blocked.
That decision comes from a predefined high-risk release criterion โ not from the scanner's overall status. Engineering fixes the server-side ownership check, adds regression coverage, and obtains an independent review before the defect is closed.
A second test simulates the authorization service becoming unavailable before a payment is approved. The application safely refuses or defers the transaction.
A third test interrupts communication after a downstream payment request has been submitted. Rather than retrying blindly, the application reconciles the transaction using its durable identifier and prevents duplicate execution.
Security operations verifies that critical failures generate actionable alerts.
Now suppose a lower-priority diagnostic alert remains incomplete. An exception is considered only after confirming that required high-priority detection remains effective.
The business risk owner documents the residual exposure, compensating review, remediation owner, expiration date, and conditions requiring earlier reassessment. The authorization bypass and unsafe payment behavior remain outside the ordinary exception process.
A release record might group the evidence under an identifier such as PAY-API/REL-2026โ10โ20, with linked tests, findings, artifact identity, and approvals. That naming convention is illustrative, not a claim about a real system.
The final release decision can be reconstructed without relying on someone's recollection of a meeting.
That is what accountable security verification should enable.
6. Evidence That the Controls Actually Work
Four records often get confused.
A policy states what is expected. Code or configuration establishes what was implemented. Test results show what happened under defined conditions. Review and approval records identify who evaluated the outcome.
None is interchangeable with the others.
Evidence should connect the application, requirement, control, release, result, and decision. For example, a reviewer examining PAY-API/REL-2026โ10โ20/AUTH-NEG-004 should be able to find the expected denial, observed response, affected build, defect, and eventual retest.
The exact naming convention matters less than consistent traceability.
Five management measures provide a starting point:
-
Ownership coverage: Critical applications with a named accountable owner divided by all critical applications in scope. The AppSec program owner maintains the inventory.
-
Verification adherence: Releases completing applicable security verification criteria divided by releases requiring those criteria. Engineering owns the calculation; AppSec samples whether the criteria are adequate.
-
Dependency triage timeliness: Critical findings assessed within the defined risk-based target divided by critical findings requiring assessment during the reporting period. The dependency management owner tracks exclusions and overdue work.
-
Detection and response exercise success: Tested high-priority scenarios meeting both alert-delivery and required-response expectations divided by all high-priority scenarios exercised. Security operations owns the results.
-
Exception and remediation aging: Open and overdue items, age distributions, and repeated extensions by severity and owner. Business risk owners review acceptance and expiry.
These are proposed management indicators, not empirical benchmarks or official OWASP measures.
Every metric requires a reporting period, source system, consistent population, and review cadence. Strong performance against weak verification criteria is still weak assurance.
Evidence should also be protected, access-controlled, and retained according to legitimate operational and legal requirements โ not accumulated indefinitely.
7. The First 90 Days
A small organization may have one person performing several security responsibilities. A larger enterprise may distribute the same decisions across engineering, AppSec, platform operations, and risk management.
The roles can differ. Accountability cannot disappear.
The following Establish โ Integrate โ Verify roadmap is a Contra Average recommendation, not an OWASP requirement. Ninety days is a planning horizon for a reasonably scoped pilot, not a universal promise.
Days 1โ30: Establish
Select a manageable group of applications where security failure could have serious consequences. Payment processing, customer-account access, privileged administration, and exposed integrations are reasonable candidates.
Inventory critical workflows, sensitive data, dependencies, exposure, and deployment paths. Record what is unknown rather than disguising inventory gaps.
Identify who owns business risk, engineering implementation, security verification, platform controls, and operational response. In smaller teams, one individual may hold several responsibilities, but consequential risk acceptance still needs a clearly authorized decision.
Review existing security activities against the application's most important failure scenarios. Identify where tests, ownership, or release criteria are missing.
Deliverable: Application risk baseline, ownership matrix, and prioritized verification gaps.
Primary risks: Incomplete inventory, unclear authority, and attempting too broad a rollout.
Days 31โ60: Integrate
Use one or two representative applications to establish repeatable controls.
Turn the highest-priority risks into requirements and security tests. Add negative authorization checks, relevant dependency review, configuration validation, and exceptional-condition testing to existing development workflows.
Define release criteria clearly enough that teams know what blocks promotion, what requires manual review, and which lower-risk issues may qualify for a time-limited exception.
A useful pilot should deliberately demonstrate both a successful release and a blocked release. Otherwise, the team has not established that its gate actually enforces the policy.
Link evidence to stable application and release identifiers. Remove duplicate administrative steps where automation can produce reliable records.
Deliverable: A pilot secure-release workflow with tested gates, documented authority, and traceable evidence.
Primary risks: Ineffective acceptance criteria, excessive alert noise, and approvals that exist only on paper.
Days 61โ90: Verify
Challenge the pilot rather than merely reporting its completion.
Attempt unauthorized cross-account actions. Simulate unavailable services and uncertain transaction outcomes. Trigger high-priority alerts and test whether responders take the expected action.
Sample release records to determine whether requirements, test conditions, findings, exceptions, and approvals can be reconstructed.
Review aging exceptions and verify that the documented compensating controls remain effective. Examine measures for misleading exclusions or incomplete test coverage.
Finally, bring the findings to engineering and business leadership. Identify which controls are working, which remain uncertain, and which improvements should be standardized before expanding to additional applications.
Deliverable: Assurance review, assessed exceptions, and a prioritized improvement backlog.
Primary risks: Extrapolating pilot results to the entire portfolio, misleading green metrics, and remediation commitments without accountable owners.
A 90-day pilot may establish a useful operating pattern. It does not certify an application portfolio as secure.
8. From Risk List to Repeatable Practice
The fictional release began with a green dashboard and an unauthorized change to a customer's payee record.
The defect mattered. So did the missing test. But the larger weakness was the absence of a clear connection between a business rule, a security requirement, and the authority to stop a release.
That is where OWASP Top 10:2025 can deliver lasting value.
Not by becoming another checklist, but by prompting better engineering and management decisions: what must be protected, who owns the control, how failure will be detected, and what evidence is needed before accepting the remaining risk.
Documentation and supporting resources can help teams organize these decisions, but they cannot replace engineering verification, accountable ownership, or informed risk acceptance.
The list names the risks. The organization must operate the controls.
AI disclosure: This article was drafted using AI writing software.
Independent commentary by Contra Average. Not affiliated with or endorsed by OWASP. No security, certification, or regulatory compliance outcome is guaranteed.