2023 Security Vulnerability Report
CVE Statistics for 2023

Growth Curve
There have been 12069 security vulnerabilities (CVEs) published so far in 2023. In 2022 there were 25083.

The average severity is 7.2 out of 10, which was about the same as in 2022.

Products & Vendors with the most security vulnerabilities published in 2023 Vulnerabilities may exist in multiple products or vendors

By Product

#1

Canonical Ubuntu Linux

319 vulnerabilities in 2023

#2

Google Android

247 vulnerabilities in 2023

#3

Microsoft Windows Server 2022

240 vulnerabilities in 2023

#4

Microsoft Windows Server 2019

227 vulnerabilities in 2023

#5

Microsoft Windows Server 2016

220 vulnerabilities in 2023

#6

Microsoft Windows 10 22h2

214 vulnerabilities in 2023

#7

Microsoft Windows 10 20h2

214 vulnerabilities in 2023

#8

Microsoft Windows 11 22h2

214 vulnerabilities in 2023

#9

Microsoft Windows 10 21h2

213 vulnerabilities in 2023

#10

Microsoft Windows 11 21h2

212 vulnerabilities in 2023

#11

Microsoft Windows 10 1809

210 vulnerabilities in 2023

#12

Microsoft Windows Server 2012

207 vulnerabilities in 2023

#13

Microsoft Windows 10 1607

199 vulnerabilities in 2023

#14

Microsoft Windows Server 2008

155 vulnerabilities in 2023

#15

Linux Kernel

132 vulnerabilities in 2023

#16

Fedora Project Fedora

116 vulnerabilities in 2023

#17

Microsoft Windows 10 1507

109 vulnerabilities in 2023

#18

Adobe

105 vulnerabilities in 2023

#19

Apple Macos

102 vulnerabilities in 2023

#20

Google Chrome

100 vulnerabilities in 2023

By Vendor

#1

Microsoft

611 vulnerabilities in 2023

#2

Google

371 vulnerabilities in 2023

#3

Canonical

320 vulnerabilities in 2023

#4

Red Hat

259 vulnerabilities in 2023

#5

Adobe

192 vulnerabilities in 2023

#6

Oracle

166 vulnerabilities in 2023

#7

Apple

135 vulnerabilities in 2023

#8

Cisco

135 vulnerabilities in 2023

#9

Linux

132 vulnerabilities in 2023

#10

Jenkins

131 vulnerabilities in 2023

#11

Intel

120 vulnerabilities in 2023

#12

Fedora Project

117 vulnerabilities in 2023

#13

Apache

106 vulnerabilities in 2023

#14

Tracker Software

93 vulnerabilities in 2023

#15

Dell

88 vulnerabilities in 2023

#16

Fortinet

88 vulnerabilities in 2023

#17

GitLab

86 vulnerabilities in 2023

#18

Debian

85 vulnerabilities in 2023

#19

SAP

84 vulnerabilities in 2023

#20

IBM

82 vulnerabilities in 2023

By Weakness

#1
XSS
The software does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
2044
 
16.9%
#2
SQL Injection
The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.
935
 
7.7%
#3
Memory Corruption
The software writes data past the end, or before the beginning, of the intended buffer. Typically, this can result in corruption of data, a crash, or code execution. The software may modify an index or perform pointer arithmetic that references a memory location that is outside of the boundaries of the buffer. A subsequent write operation then produces undefined or unexpected results.
766
 
6.3%
#4
Out-of-bounds Read
The software reads data past the end, or before the beginning, of the intended buffer. Typically, this can allow attackers to read sensitive information from other memory locations or cause a crash. A crash can occur when the code reads a variable amount of data and assumes that a sentinel exists to stop the read operation, such as a NUL in a string. The expected sentinel might not be located in the out-of-bounds memory, causing excessive data to be read, leading to a segmentation fault or a buffer overflow. The software may modify an index or perform pointer arithmetic that references a memory location that is outside of the boundaries of the buffer. A subsequent read operation then produces undefined or unexpected results.
426
 
3.5%
#5
Session Riding
The web application does not, or can not, sufficiently verify whether a well-formed, valid, consistent request was intentionally provided by the user who submitted the request. When a web server is designed to receive a request from a client without any mechanism for verifying that it was intentionally sent, then it might be possible for an attacker to trick a client into making an unintentional request to the web server which will be treated as an authentic request. This can be done via a URL, image load, XMLHttpRequest, etc. and can result in exposure of data or unintended code execution.
426
 
3.5%
#6
Directory traversal
The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
307
 
2.5%
#7
Command Injection
The software constructs all or part of a command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended command when it is sent to a downstream component.
246
 
2.0%
#8
Improper Input Validation
The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
232
 
1.9%
#9
Classic Buffer Overflow
The program copies an input buffer to an output buffer without verifying that the size of the input buffer is less than the size of the output buffer, leading to a buffer overflow. A buffer overflow condition exists when a program attempts to put more data in a buffer than it can hold, or when a program attempts to put data in a memory area outside of the boundaries of a buffer. The simplest type of error, and the most common cause of buffer overflows, is the "classic" case in which the program copies the buffer without restricting how much is copied. Other variants exist, but the existence of a classic overflow strongly suggests that the programmer is not considering even the most basic of security protections.
225
 
1.9%
#10
Dangling pointer
Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code.
214
 
1.8%
#11
AuthZ
The software does not perform an authorization check when an actor attempts to access a resource or perform an action.
211
 
1.7%
#12
Unrestricted File Upload
The software allows the attacker to upload or transfer files of dangerous types that can be automatically processed within the product's environment.
186
 
1.5%
#13
Shell injection
The software constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.
177
 
1.5%
#14
AuthZ
The software performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check. This allows attackers to bypass intended access restrictions.
138
 
1.1%
#15
authentification
When an actor claims to have a given identity, the software does not prove or insufficiently proves that the claim is correct.
131
 
1.1%
#16
NULL Pointer Dereference
A NULL pointer dereference occurs when the application dereferences a pointer that it expects to be valid, but is NULL, typically causing a crash or exit. NULL pointer dereference issues can occur through a number of flaws, including race conditions, and simple programming omissions.
125
 
1.0%
#17
Resource Exhaustion
The software does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources.
102
 
0.8%
#18
Integer Overflow or Wraparound
The software performs a calculation that can produce an integer overflow or wraparound, when the logic assumes that the resulting value will always be larger than the original value. This can introduce other weaknesses when the calculation is used for resource management or execution control. An integer overflow or wraparound occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may wrap to become a very small or negative number. While this may be intended behavior in circumstances that rely on wrapping, it can have security consequences if the wrap is unexpected. This is especially the case if the integer overflow can be triggered using user-supplied inputs. This becomes security-critical when the result is used to control looping, make a security decision, or determine the offset or size in behaviors such as memory allocation, copying, concatenation, etc.
95
 
0.8%
#19
Marshaling, Unmarshaling
The application deserializes untrusted data without sufficiently verifying that the resulting data will be valid.
90
 
0.7%
#20
Code Injection
The software constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.
90
 
0.7%
#21
Stack Overflow
A stack-based buffer overflow condition is a condition where the buffer being overwritten is allocated on the stack (i.e., is a local variable or, rarely, a parameter to a function).
88
 
0.7%
#22
Exposure of Resource to Wrong Sphere
The product exposes a resource to the wrong control sphere, providing unintended actors with inappropriate access to the resource.
80
 
0.7%
#23
Buffer Overflow
The software performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer.
80
 
0.7%
#24
Improper Privilege Management
The software does not properly assign, modify, track, or check privileges for an actor, creating an unintended sphere of control for that actor.
79
 
0.7%
#25
Open Redirect
A web application accepts a user-controlled input that specifies a link to an external site, and uses that link in a Redirect. This simplifies phishing attacks. An http parameter may contain a URL value and could cause the web application to redirect the request to the specified URL. By modifying the URL value to a malicious site, an attacker may successfully launch a phishing scam and steal user credentials. Because the server name in the modified link is identical to the original site, phishing attempts have a more trustworthy appearance.
77
 
0.6%

By Category

Content Management

Adobe Experience Manager

18 vulnerabilities in 2023

MediaWiki

12 vulnerabilities in 2023

Drupal

7 vulnerabilities in 2023

Database

Oracle MySQL

15 vulnerabilities in 2023

Microsoft SQL Server

6 vulnerabilities in 2023

Couchbase Server

4 vulnerabilities in 2023

Desktop Software

Microsoft Office

17 vulnerabilities in 2023

Microsoft Excel

3 vulnerabilities in 2023

Microsoft Word

2 vulnerabilities in 2023

Development Tools

Oracle Java Development Kit (JDK)

10 vulnerabilities in 2023

Jenkins

7 vulnerabilities in 2023

DevOps

GitLab

79 vulnerabilities in 2023

Kubernetes

3 vulnerabilities in 2023

Email

Microsoft Exchange Server

9 vulnerabilities in 2023

Java Application Servers

Oracle Weblogic Server

11 vulnerabilities in 2023

IBM WebSphere Application Server

4 vulnerabilities in 2023

Apache Tomcat

3 vulnerabilities in 2023

Java Libraries

FasterXML Jackson Databind

1 vulnerability in 2023

Libraries

Google Tensorflow

21 vulnerabilities in 2023

OpenSSL

12 vulnerabilities in 2023

 
libming Ming

6 vulnerabilities in 2023

Operating Systems

Google Android

236 vulnerabilities in 2023

Microsoft Windows Server 2019

227 vulnerabilities in 2023

Microsoft Windows Server 2016

220 vulnerabilities in 2023

Runtime Environments

GoLang Go

11 vulnerabilities in 2023

Oracle Java Runtime Environment (JRE)

10 vulnerabilities in 2023

nodejs node.js

4 vulnerabilities in 2023

Server Software

Microsoft Sharepoint Server

10 vulnerabilities in 2023

Microsoft Sharepoint Enterprise Server

5 vulnerabilities in 2023

OpenBSD OpenSSH

1 vulnerability in 2023

Virtualization

Oracle VM VirtualBox

16 vulnerabilities in 2023

QEMU

2 vulnerabilities in 2023

Web Application Framework

Django Project Django

3 vulnerabilities in 2023

Laravel

1 vulnerability in 2023

Web Browsers

Google Chrome

100 vulnerabilities in 2023

Apple Safari

12 vulnerabilities in 2023

Microsoft Edge Browser

2 vulnerabilities in 2023

Web Servers

Apache HTTP Server

5 vulnerabilities in 2023

Caddy Server Caddy Web Server

1 vulnerability in 2023


Report Last Updated: June 2, 2023