· 2 min read
2021 CWE Top 25 Most Dangerous Software Weaknesses
The 2021 Common Weakness Enumeration (CWE™) Top 25 Most Dangerous Software Weaknesses (CWE Top 25) is a demonstrative list of the most common and impactful issues experienced over the previous two calendar years.

The 2021 Common Weakness Enumeration (CWE™) Top 25 Most Dangerous Software Weaknesses (CWE Top 25) is a demonstrative list of the most common and impactful issues experienced over the previous two calendar years.
These weaknesses are dangerous because they are often easy to find, exploit, and can allow adversaries to completely take over a system, steal data, or prevent an application from working.
The CWE Top 25 is a valuable community resource that can help developers, testers, and users — as well as project managers, security researchers, and educators — provide insight into the most severe and current security weaknesses.
To create the 2021 list, the CWE Team leveraged Common Vulnerabilities and Exposures (CVE®) data found within the National Institute of Standards and Technology (NIST) National Vulnerability Database (NVD), as well as the Common Vulnerability Scoring System (CVSS) scores associated with each CVE record.
A formula was applied to the data to score each weakness based on prevalence and severity.
Here is the Top 25 Most Dangerous Software Weaknesses (CWE Top 25):
- CWE-787 Out-of-bounds Write
- CWE-79 Improper Neutralization of Input During Web Page Generation (‘Cross-site Scripting’)
- CWE-89 Improper Neutralization of Special Elements used in an SQL Command (‘SQL Injection’)
- CWE-20 Improper Input Validation
- CWE-125 Out-of-bounds Read
- CWE-78 Improper Neutralization of Special Elements used in an OS Command (‘OS Command Injection’)
- CWE-416 Use After Free
- CWE-22 Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’)
- CWE-352 Cross-Site Request Forgery (CSRF)
- CWE-434 Unrestricted Upload of File with Dangerous Type
- CWE-476 NULL Pointer Dereference
- CWE-502 Deserialization of Untrusted Data
- CWE-190 Integer Overflow or Wraparound
- CWE-287 Improper Authentication
- CWE-798 Use of Hard-coded Credentials
- CWE-862 Missing Authorization
- CWE-77 Improper Neutralization of Special Elements used in a Command (‘Command Injection’)
- CWE-306 Missing Authentication for Critical Function
- CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer
- CWE-276 Incorrect Default Permissions
- CWE-918 Server-Side Request Forgery (SSRF)
- CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization (‘Race Condition’)
- CWE-400 Uncontrolled Resource Consumption
- CWE-611 Improper Restriction of XML External Entity Reference
- CWE-94 Improper Control of Generation of Code (‘Code Injection’)
Read the full article and discover the Most Dangerous Software Weaknesses on cwe.mitre.org
