Skip to content

Evidence request lists

CWE Top 25 Most Dangerous Software Weaknesses (2024)

Evidence request list. 25 controls, 25 carrying auditor artefact guidance. Generated from the compliance knowledge graph on 11 September 2026. Published by The Art of Service.

CWE Top 25 2024: Access Control and Authorization

CWE-200
Exposure of Sensitive Information to an Unauthorized Actor

Rank 17 in the 2024 CWE Top 25 (frequency x severity of CVEs). The product exposes sensitive information to an actor that is not explicitly authorised to have access to it.

Artefacts an auditor will ask for
  • Data classification and need-to-know access; minimised error/debug output
  • Review of responses, logs and headers for sensitive leakage
Where this commonly fails
  • Verbose errors or debug data in responses
  • Over-broad API responses
CWE-22
Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)

Rank 5 in the 2024 CWE Top 25 (frequency x severity of CVEs). Path Traversal: user input used in a file path is not properly neutralised, allowing access to files and directories outside the intended location.

Artefacts an auditor will ask for
  • Canonicalisation and allow-list validation of file paths
  • Tests covering ../ and absolute-path payloads
Where this commonly fails
  • Direct use of user input in file paths
  • Validation before canonicalisation
CWE-269
Improper Privilege Management

Rank 15 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software does not properly assign, track, or relinquish privileges, allowing actors to gain unintended elevated access.

Artefacts an auditor will ask for
  • Least-privilege role assignment and privilege-drop after use
  • Review of privilege transitions and admin grants
Where this commonly fails
  • Excessive default privileges
  • Privileges not dropped after elevation
CWE-352
Cross-Site Request Forgery (CSRF)

Rank 4 in the 2024 CWE Top 25 (frequency x severity of CVEs). The web application does not verify that a state-changing request was intentionally sent by the user, allowing an attacker to force the victim's browser to submit requests.

Artefacts an auditor will ask for
  • Anti-CSRF tokens and/or SameSite cookies on state-changing requests
  • Tests confirming forged cross-origin requests are rejected
Where this commonly fails
  • No CSRF token on state-changing endpoints
  • Relying solely on a session cookie
CWE-862
Missing Authorization

Rank 9 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software does not perform an authorization check when an actor attempts to access a resource or perform an action.

Artefacts an auditor will ask for
  • Server-side authorization checks on every protected resource/action
  • Tests for forced-browsing and IDOR
Where this commonly fails
  • Authorization enforced only in the UI
  • Object access without ownership checks
CWE-863
Incorrect Authorization

Rank 18 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software performs an authorization check but does so incorrectly, granting access that should be denied.

Artefacts an auditor will ask for
  • Centralised, correct authorization logic with deny-by-default
  • Tests for privilege-escalation and role-confusion
Where this commonly fails
  • Flawed role/scope comparison
  • Authorization decisions split across inconsistent checks

CWE Top 25 2024: Authentication and Credentials

CWE-287
Improper Authentication

Rank 14 in the 2024 CWE Top 25 (frequency x severity of CVEs). When an actor claims to have a given identity, the software does not prove or insufficiently proves that the claim is correct.

Artefacts an auditor will ask for
  • Strong authentication with MFA where appropriate; correct credential verification
  • Tests for auth bypass and weak verification
Where this commonly fails
  • Authentication logic that can be bypassed
  • Comparisons vulnerable to timing or type confusion
CWE-306
Missing Authentication for Critical Function

Rank 25 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software does not perform any authentication for functionality that requires a provable user identity or consumes significant resources.

Artefacts an auditor will ask for
  • Authentication enforced on all critical/administrative functions
  • Tests confirming critical endpoints reject unauthenticated access
Where this commonly fails
  • Admin/critical endpoints exposed without authentication
  • Hidden endpoints assumed safe by obscurity
CWE-798
Use of Hard-coded Credentials

Rank 22 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software contains hard-coded credentials, such as a password or cryptographic key, used for authentication or encryption.

Artefacts an auditor will ask for
  • Secrets stored in a secrets manager, not source; secret-scanning in CI
  • Rotation process for any embedded keys
Where this commonly fails
  • Credentials/keys committed to source or config
  • No secret scanning

CWE Top 25 2024: Data and Resource Handling

CWE-400
Uncontrolled Resource Consumption

Rank 24 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software does not properly control the allocation and maintenance of a limited resource, enabling denial of service.

Artefacts an auditor will ask for
  • Rate limiting, quotas, timeouts and input-size limits
  • Load/abuse testing of resource-intensive endpoints
Where this commonly fails
  • No limits on request size, recursion or concurrency
  • Unbounded resource allocation from input
CWE-502
Deserialization of Untrusted Data

Rank 16 in the 2024 CWE Top 25 (frequency x severity of CVEs). The application deserialises untrusted data without sufficient verification, allowing object/state manipulation and often remote code execution.

Artefacts an auditor will ask for
  • Avoiding native deserialisation of untrusted data; safe formats and allow-listed types with integrity checks
  • Tests with malicious serialised payloads
Where this commonly fails
  • Native deserialisation of attacker-controlled data
  • No type allow-list or integrity check
CWE-918
Server-Side Request Forgery (SSRF)

Rank 19 in the 2024 CWE Top 25 (frequency x severity of CVEs). The web server receives a URL or request from an upstream component and retrieves it without sufficiently validating the destination.

Artefacts an auditor will ask for
  • Allow-list of permitted destinations; block internal/metadata ranges; no redirects to untrusted hosts
  • Tests targeting internal and cloud-metadata endpoints
Where this commonly fails
  • Fetching arbitrary user-supplied URLs
  • No egress restrictions to internal networks

CWE Top 25 2024: Injection and Input Handling

CWE-20
Improper Input Validation

Rank 12 in the 2024 CWE Top 25 (frequency x severity of CVEs). The product does not validate, or incorrectly validates, input that affects the control flow or data flow of the program.

Artefacts an auditor will ask for
  • Allow-list input validation at trust boundaries with canonical forms and length/range/type checks
  • Negative test cases for malformed input
Where this commonly fails
  • No validation at the boundary
  • Blacklist-only validation
CWE-434
Unrestricted Upload of File with Dangerous Type

Rank 10 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software allows the upload of files that can be automatically processed or executed within the product's environment.

Artefacts an auditor will ask for
  • File-type/content validation, storage outside webroot, non-executable handling
  • Tests with disguised and dangerous file types
Where this commonly fails
  • Trusting client-provided content type or extension
  • Uploaded files served from an executable path
CWE-77
Improper Neutralization of Special Elements used in a Command (Command Injection)

Rank 13 in the 2024 CWE Top 25 (frequency x severity of CVEs). Command Injection: untrusted input is incorporated into a command without neutralisation, allowing alteration of the intended command.

Artefacts an auditor will ask for
  • Parameterised command APIs and strict argument validation
  • Tests for command-separator and metacharacter payloads
Where this commonly fails
  • Concatenating commands from user input
CWE-78
Improper Neutralization of Special Elements used in an OS Command (OS Command Injection)

Rank 7 in the 2024 CWE Top 25 (frequency x severity of CVEs). OS Command Injection: untrusted input is incorporated into a command executed by the OS, allowing arbitrary command execution.

Artefacts an auditor will ask for
  • Avoiding shell invocation; using parameterised APIs/arg arrays
  • Allow-list validation of any command arguments
Where this commonly fails
  • Building shell strings from user input
  • Use of shell=true with untrusted args
CWE-79
Improper Neutralization of Input During Web Page Generation (Cross-site Scripting)

Rank 1 in the 2024 CWE Top 25 (frequency x severity of CVEs). Cross-site Scripting (XSS): the software does not neutralise user-controllable input before it is placed in output used as a web page, allowing attacker-supplied script to execute in victims' browsers.

Artefacts an auditor will ask for
  • Context-aware output encoding and a Content Security Policy
  • SAST/DAST results showing no reflected/stored/DOM XSS
  • Code review of all sinks that render user input
Where this commonly fails
  • Output not encoded for the HTML/JS/URL context
  • No CSP
  • Relying on input blacklists
CWE-89
Improper Neutralization of Special Elements used in an SQL Command (SQL Injection)

Rank 3 in the 2024 CWE Top 25 (frequency x severity of CVEs). SQL Injection: user input is incorporated into an SQL query without proper neutralisation, allowing modification of query logic and unauthorised data access.

Artefacts an auditor will ask for
  • Parameterised queries / prepared statements throughout
  • SAST/DAST evidence of no SQLi
  • Least-privilege database accounts
Where this commonly fails
  • String-concatenated SQL
  • ORM raw queries with untrusted input
CWE-94
Improper Control of Generation of Code (Code Injection)

Rank 11 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software constructs code from externally-influenced input without neutralising special elements, allowing injection of executable code.

Artefacts an auditor will ask for
  • Avoiding dynamic eval/code generation from untrusted input
  • Sandboxing where dynamic execution is unavoidable
Where this commonly fails
  • Use of eval/exec on user input
  • Template engines run with untrusted templates

CWE Top 25 2024: Memory Safety

CWE-119
Improper Restriction of Operations within the Bounds of a Memory Buffer

Rank 20 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software performs operations on a memory buffer but can read from or write to a location outside the intended boundary.

Artefacts an auditor will ask for
  • Bounds-checked operations and memory-safe languages
  • Fuzzing and sanitizer coverage of buffer operations
Where this commonly fails
  • Unchecked length/size in buffer operations
CWE-125
Out-of-bounds Read

Rank 6 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software reads data past the end, or before the beginning, of the intended buffer, disclosing memory contents or causing crashes.

Artefacts an auditor will ask for
  • Bounds checking and memory-safe APIs
  • Fuzzing and sanitizer results for read paths
Where this commonly fails
  • Unchecked read offsets/lengths from untrusted input
CWE-190
Integer Overflow or Wraparound

Rank 23 in the 2024 CWE Top 25 (frequency x severity of CVEs). An integer calculation can produce a value that wraps around, often leading to undersized allocations and subsequent memory corruption.

Artefacts an auditor will ask for
  • Checked/safe arithmetic and validation of size calculations
  • Fuzzing of size/length handling
Where this commonly fails
  • Unchecked arithmetic on attacker-influenced sizes
CWE-416
Use After Free

Rank 8 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software references memory after it has been freed, leading to crashes, data corruption, or code execution.

Artefacts an auditor will ask for
  • Memory-safe languages or RAII/smart pointers; nulling freed pointers
  • Sanitizer (ASan/UBSan) and fuzzing coverage
Where this commonly fails
  • Manual memory management without ownership discipline
  • No use-after-free detection in CI
CWE-476
NULL Pointer Dereference

Rank 21 in the 2024 CWE Top 25 (frequency x severity of CVEs). The application dereferences a pointer it expects to be valid but is NULL, typically causing a crash or denial of service.

Artefacts an auditor will ask for
  • Null checks after allocation/return; static analysis for nullability
  • Tests covering allocation-failure and unexpected-null paths
Where this commonly fails
  • Unchecked return values from allocation/lookup
CWE-787
Out-of-bounds Write

Rank 2 in the 2024 CWE Top 25 (frequency x severity of CVEs). The software writes data past the end, or before the beginning, of the intended buffer, leading to corruption, crashes, or code execution.

Artefacts an auditor will ask for
  • Use of memory-safe languages or bounds-checked APIs
  • Fuzzing and AddressSanitizer/static-analysis results
  • Code review of buffer/index arithmetic
Where this commonly fails
  • Unchecked array indices or pointer arithmetic
  • No fuzzing of parsers handling untrusted input
Assembled from the framework's own control set. Every line traces to a control in the graph, so this pack is regenerated rather than written, and stays current as the graph does.

Assembled from the framework’s own control set, so this list is regenerated rather than written and stays current as the graph does.