OWASP Top 10 Documentation

repository·master·Indexed 27 days ago

https://github.com/owasp/top10

Official document repository for the OWASP Top 10, providing access to critical web application security risk lists. Includes documentation for current (2025), superseded (2021), and historical versions dating back to 2003. The repository contains guidelines for contributing vulnerability data, instructions for building documentation locally using mkdocs, and details on the OSIB (Open Security Information Base) macro for managing security links and versioning.

Tokens
51.3K
Snippets
28
Records
197
Agent score
90%

What's inside OWASP Top 10

  1. Access OWASP security resources and tools

    master

    OWASP provides free and open resources for improving application security, including tools, standards, research, and libraries. You can access the following resources to support secure development and testing:

    • Security Tools & Standards: Application security tools and industry standards.
    • Research & Controls: Cutting edge research and standard security controls/libraries.
    • Educational Materials: Books on testing, secure code development, and code review, as well as presentations and videos.
    • Cheat Sheets: Practical guidance on common security topics via the OWASP Cheat Sheet Series.
    • Community & Events: Local chapter meetings, training, and conferences.

    For more information, visit the official website at https://owasp.org.

  2. Identify Vulnerability Risk Factors for A06:2021

    master

    You are at high risk for A06:2021 (Vulnerable and Outdated Components) if any of the following conditions are met:

    • You do not know the versions of all components used (including client-side, server-side, and nested dependencies).
    • Software is vulnerable, unsupported, or out of date (OS, web/application servers, DBMS, APIs, runtime environments, or libraries).
    • You do not perform regular vulnerability scans or subscribe to security bulletins.
    • Patching/upgrading of platforms and frameworks is not performed in a timely, risk-based fashion (e.g., waiting months due to change control).
    • Updated libraries are not tested for compatibility before deployment.
    • Component configurations are not secured.
  3. Understand the OWASP Top 10 2017 Methodology

    master

    The OWASP Top 10 2017 ranking is determined by a combination of quantitative data and qualitative surveys. The methodology uses two primary inputs:

    1. Industry Ranked Survey: A qualitative survey where community members ranked vulnerability categories. This survey helped identify emerging threats like 'Exposure of Private Information' and 'Insecure Deserialization'.
    2. Public Data Call (Incidence Rate): A quantitative analysis of vulnerability prevalence. Instead of traditional frequency (counting every instance), the 2017 methodology calculates the incidence rate: the percentage of applications in a dataset that contain one or more instances of a specific vulnerability type. This allows for a more comparable analysis between tool-assisted and human-assisted findings.
  4. Identify vulnerable applications and APIs

    master

    An application or API is vulnerable to Insecure Deserialization if it deserializes hostile or tampered objects supplied by an attacker. This typically occurs when serialization is used for:

    • Communication: Remote- and inter-process communication (RPC/IPC), wire protocols, web services, or message brokers.
    • Persistence/Storage: Caching, databases, cache servers, file systems, or persistence layers.
    • Client-side Data: HTTP cookies, HTML form parameters, or API authentication tokens.
  5. Understand the OWASP Top 10:2021 Standard

    master
    The OWASP Top 10:2021 is a standard awareness document for developers and web application security. It represents a broad consensus regarding the most critical security risks to web applications. Use this standard to understand common vulnerabilities and improve application security posture.
  6. Understand the OWASP Risk Rating Methodology

    master

    The OWASP Top 10 uses a specific Risk Rating Methodology to order categories based on the significant risk they introduce to typical web applications. This methodology is used to estimate risk by combining likelihood factors and impact factors.

    Note: This methodology provides generalities and does not account for specific threat agents, your application's unique technical details, or your specific business impact. Application owners must perform their own risk analysis based on their specific culture, industry, and regulatory environment.

  7. Identify Injection vulnerability patterns

    master

    An application is vulnerable to injection when untrusted user input is sent to an interpreter (browser, database, command line) and executed as a command. Common patterns include:

    • User-supplied data is not validated, filtered, or sanitized.
    • Dynamic queries or non-parameterized calls are used without context-aware escaping.
    • Unsanitized data is used within ORM search parameters to extract sensitive records.
    • Hostile data is directly concatenated into the structure of a SQL or command string.

    Common types include SQL, NoSQL, OS command, ORM, LDAP, and Expression Language (EL) or OGNL injection.

  8. Understand the OWASP Top 10:2025 Methodology

    master

    The OWASP Top 10:2025 categories are selected using a hybrid approach combining automated data analysis and community expertise:

    1. Data-Driven Selection (8 Categories): Eight categories are derived from CVE (Common Vulnerabilities and Exposures) data extracted via OWASP Dependency Check. The methodology calculates average Exploitability and (Technical) Impact scores by grouping CVEs by their associated CWEs (Common Weakness Enumerations). The scoring weights CVSSv3 scores more heavily than CVSSv2 scores to account for differences in scoring formulas.

    2. Community Survey (2 Categories): Because automated data often lags behind emerging trends and relies on existing testing methodologies, two categories are selected via a community survey. This allows AppSec practitioners to vote on high-risk trends that may not yet be fully captured in automated vulnerability datasets.

  9. Identify vulnerable XML processing in applications

    master

    An application may be vulnerable to XXE if it meets any of the following criteria:

    • The application accepts XML directly, accepts XML uploads from untrusted sources, or inserts untrusted data into XML documents parsed by an XML processor.
    • Any XML processors or SOAP-based web services have Document Type Definitions (DTDs) enabled.
    • The application uses SAML for identity processing (federated security or SSO), as SAML uses XML for identity assertions.
    • The application uses SOAP versions prior to 1.2, which may pass XML entities to the SOAP framework.
    • The application is susceptible to denial-of-service attacks like the 'Billion Laughs' attack via XML processing.
  10. Review the OWASP Top 10 2017 Risk Factor Summary

    master
    The OWASP Top 10 2017 risk factors are determined based on available statistics and expert experience. When evaluating risks for a specific application or organization, you must supplement this summary by considering your own specific threat agents and business impacts. A software weakness only presents a serious risk if there are threat agents capable of performing the attack and the business impact on the involved assets is significant.