CWE is a community-developed catalog of common software and hardware weakness types that serve as a common language for describing security vulnerabilities at the root cause level.
CWE (Common Weakness Enumeration) is a community-developed list of common software and hardware weakness types maintained by MITRE. While CVE identifies specific vulnerability instances, CWE categorizes the underlying weakness patterns that cause vulnerabilities, such as CWE-79 (Cross-site Scripting) or CWE-89 (SQL Injection).
CVE identifies specific vulnerability instances in specific products (e.g., CVE-2021-44228 is Log4Shell). CWE categorizes the underlying weakness types that cause vulnerabilities (e.g., CWE-502 is Deserialization of Untrusted Data). Multiple CVEs may share the same CWE, and CWE helps organizations address root causes rather than individual instances.
CWE is organized as a hierarchical taxonomy with multiple views including Research Concepts, Development Concepts, and Architectural Concepts. Weaknesses are categorized from abstract (CWE-707: Improper Neutralization) to specific (CWE-79: Cross-site Scripting). This hierarchy enables analysis at appropriate abstraction levels for different audiences.
The CWE Top 25 Most Dangerous Software Weaknesses is an annually updated list ranking the most prevalent and impactful weakness types based on CVE data analysis. It helps organizations prioritize secure coding training, SAST rule configuration, and code review focus areas based on real-world vulnerability prevalence data.
Developers use CWE to understand vulnerability root causes and apply appropriate coding fixes. Each CWE entry includes descriptions, examples, detection methods, and mitigation strategies. Secure coding training organized by CWE categories teaches developers to recognize and prevent weakness patterns rather than memorizing individual vulnerability fixes.
SAST, DAST, and SCA tools map their findings to CWE identifiers, enabling consistent weakness classification across different tools and vendors. This standardization allows organizations to track weakness trends, measure improvement in specific categories, and correlate findings from multiple tools using CWE as the common taxonomy.
Many compliance frameworks reference CWE for vulnerability classification. NIST uses CWE in the NVD for weakness categorization. PCI DSS references common weakness types in its coding requirements. CWE mappings help organizations demonstrate systematic vulnerability prevention aligned with regulatory expectations and industry standards.
Penetration testers classify findings using CWE identifiers to communicate root causes precisely. CWE classification helps development teams understand the underlying weakness pattern, apply consistent fixes across similar issues, and implement preventive controls in SAST tools to catch the same weakness type in future code.