CWEweakness

CWE-908 Use of Uninitialized Resource

Medium Official page ↗
Abstraction
Base
Structure
Simple
Status
Incomplete
Likelihood of exploit
Medium
Languages
Not Language-Specific
CWE version
5.0

Description

The product uses or accesses a resource that has not been initialized.

Common consequences

• Confidentiality: Read Memory, Read Application Data — When reusing a resource such as memory or a program variable, the original contents may not have been cleared before it is sent to an untrusted party. • Availability: DoS: Crash, Exit, or Restart, DoS: Instability — The uninitialized resource may contain values that cause program flow to change in ways that the programmer did not intend, possibly leading to a crash. • Other: Unexpected State, Varies by Context — The consequences vary depending on the type of resource and how it is used within the product.

Potential mitigations

• [Implementation] Explicitly initialize the resource before use. If this is performed through an API function or standard procedure, follow all required steps. • [Implementation] Pay close attention to complex conditionals that affect initialization, since some branches might not perform the initialization. • [Implementation] Avoid race conditions (CWE-362) during initialization routines. • [Build and Compilation] Run or compile the product with settings that generate warnings about uninitialized variables or data.

Detection methods

• Automated Static Analysis: Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)

Observed examples

• CVE-2019-9805: Chain: Creation of the packet client occurs before initialization is complete (CWE-696) resulting in a read from uninitialized memory (CWE-908), causing memory corruption. • CVE-2008-4197: Use of uninitialized memory may allow code execution. • CVE-2008-2934: Free of an uninitialized pointer leads to crash and possible code execution. • CVE-2008-0063: Product does not clear memory contents when generating an error message, leading to information leak. • CVE-2008-0062: Lack of initialization triggers NULL pointer dereference or double-free. • CVE-2008-0081: Uninitialized variable leads to code execution in popular desktop application. • CVE-2008-3688: Chain: Uninitialized variable leads to infinite loop. • CVE-2008-3475: Chain: Improper initialization leads to memory corruption. • CVE-2005-1036: Chain: Bypass of access restrictions due to improper authorization (CWE-862) of a user results from an improperly initialized (CWE-909) I/O permission bitmap • CVE-2008-3597: Chain: game server can access player data structures before initialization has happened leading to NULL dereference • CVE-2009-2692: Chain: Use of an unimplemented network socket operation pointing to an uninitialized handler function (CWE-456) causes a crash because of a null pointer dereference (CWE-476). • CVE-2009-0949: Chain: improper initialization of memory can lead to NULL dereference • CVE-2009-3620: Chain: some unprivileged ioctls do not verify that a structure has been initialized before invocation, leading to NULL dereference • CVE-2008-5021: Composite: race condition (CWE-362) allows attacker to modify an object while it is still being initialized, causing software to access uninitialized memory (CWE-908).

Related

Observed example · CVE (14)

  • CVE-2019-9805 A latent vulnerability exists in the Prio library where data may be read from uninitialized memory for some functions, leading to potential… vulnerability
  • CVE-2009-3620 The ATI Rage 128 (aka r128) driver in the Linux kernel before 2.6.31-git11 does not properly verify Concurrent Command Engine (CCE) state… vulnerability
  • CVE-2009-2692 The Linux kernel 2.6.0 through 2.6.30.4, and 2.4.4 through 2.4.37.4, does not initialize all function pointers for socket operations in… vulnerability
  • CVE-2009-0949 The ippReadIO function in cups/ipp.c in cupsd in CUPS before 1.3.10 does not properly initialize memory for IPP request packets, which… vulnerability
  • CVE-2008-5021 nsFrameManager in Firefox 3.x before 3.0.4, Firefox 2.x before 2.0.0.18, Thunderbird 2.x before 2.0.0.18, and SeaMonkey 1.x before 1.1.13… vulnerability
  • CVE-2008-3475 Microsoft Internet Explorer 6 does not properly handle errors related to using the componentFromPoint method on xml objects that have been… vulnerability
  • CVE-2008-4197 Opera before 9.52 on Windows, Linux, FreeBSD, and Solaris, when processing custom shortcut and menu commands, can produce argument strings… vulnerability
  • CVE-2008-3688 sockethandler.cpp in HTTP Antivirus Proxy (HAVP) 0.88 allows remote attackers to cause a denial of service (hang) by connecting to a… vulnerability
  • CVE-2008-3597 Skulltag before 0.97d2-RC6 allows remote attackers to cause a denial of service (NULL pointer dereference and daemon crash) by sending a… vulnerability
  • CVE-2008-2934 Mozilla Firefox 3 before 3.0.1 on Mac OS X allows remote attackers to cause a denial of service (application crash) or possibly execute… vulnerability
  • CVE-2008-0062 KDC in MIT Kerberos 5 (krb5kdc) does not set a global variable for some krb4 message types, which allows remote attackers to cause a denial… vulnerability
  • CVE-2008-0063 The Kerberos 4 support in KDC in MIT Kerberos 5 (krb5kdc) does not properly clear the unused portion of a buffer when generating an error… vulnerability
  • CVE-2008-0081 Unspecified vulnerability in Microsoft Excel 2000 SP3 through 2003 SP2, Viewer 2003, and Office 2004 for Mac allows user-assisted remote… vulnerability
  • CVE-2005-1036 FreeBSD 5.x to 5.4 on AMD64 does not properly initialize the IO permission bitmap used to allow user access to certain hardware, which… vulnerability

Child of · CWE (1)

  • CWE-665 Improper Initialization weakness

Referenced by CVE · weakness (968)

  • CVE-2026-116739 VMime through 0.9.2 contains an information disclosure vulnerability in the uuEncoder::decode function that writes uninitialized stack… vulnerability
  • CVE-2026-81038 The Object Transfer Service server builds its Object Action Control Point (OACP) response indication in oacp_ind_send()… vulnerability
  • CVE-2026-116180 vLLM from 0.8.5 before 0.31.0 has a denial of service flaw. vulnerability
  • CVE-2026-114651 A memory-handling weakness in the BSON deserialization component of the MongoDB C# Driver may cause data left over from previously… vulnerability
  • CVE-2026-115386 Wasmtime before 36.0.17, 37.0.0 before 48.0.4, and 49.0.0 before 49.0.2 contains an information disclosure vulnerability in the WASIp1… vulnerability
  • CVE-2026-114501 Pillow is a Python imaging library. vulnerability
  • CVE-2026-112897 Pillow is a Python imaging library. vulnerability
  • CVE-2026-104086 7-Zip before 26.03 contains an uninitialized memory disclosure vulnerability in the SquashFS v4 archive handler (SquashfsHandler.cpp) that… vulnerability
  • CVE-2026-109438 3proxy from 0.9.7 through 1.0.1, fixed in commit 206c923, contains an uninitialized stack memory disclosure vulnerability that allows… vulnerability
  • CVE-2026-97629 Description When NGINX Plus or NGINX Open Source is configured with ssl_session_cache shared:name:size without an explicit… vulnerability
  • CVE-2026-102187 Use of uninitialized resource in Windows Kernel allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-105731 Use of uninitialized resource in Microsoft Graphics Component allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-109712 Sandbox escape due to uninitialized memory in the Graphics component. vulnerability
  • CVE-2026-109745 Sandbox escape due to uninitialized memory in the DOM: Web Serial component. vulnerability
  • CVE-2026-70090 Use of uninitialized resource in Windows Netlogon allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-70284 Use of uninitialized resource in Windows Win32 Kernel Subsystem allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-70293 Use of uninitialized resource in Windows Win32 Kernel Subsystem allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-83515 Use of uninitialized resource in RPC Runtime allows an unauthorized attacker to disclose information over a network. vulnerability
  • CVE-2026-83669 Use of uninitialized resource in Windows Error Reporting allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-83695 Use of uninitialized resource in Windows Event Logging Service allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-83714 Use of uninitialized resource in Windows HTTP.sys allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-83723 Use of uninitialized resource in Windows Event Logging Service allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-83755 Use of uninitialized resource in Windows Win32K allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-83925 Use of uninitialized resource in Windows Kernel allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-85320 Use of uninitialized resource in Windows Print Spooler Components allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-85322 Use of uninitialized resource in Windows Routing and Remote Access Service (RRAS) allows an unauthorized attacker to disclose information… vulnerability
  • CVE-2026-85843 Use of uninitialized resource in Windows Background Intelligent Transfer Service (BITS) allows an authorized attacker to elevate privileges… vulnerability
  • CVE-2026-88150 Use of uninitialized resource in Microsoft Office Word allows an unauthorized attacker to execute code over a network. vulnerability
  • CVE-2026-96206 Use of uninitialized resource in Windows Subsystem for Linux allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-96247 Use of uninitialized resource in Windows Kernel-Mode Drivers allows an authorized attacker to disclose information locally. vulnerability
Show all 968 ›

Referenced by CWE · can precede (1)

  • CWE-909 Missing Initialization of Resource weakness

Referenced by CWE · child of (1)

  • CWE-457 Use of Uninitialized Variable weakness

Referenced by CWE · has member (1)

  • CWE-1340 CISQ Data Protection Measures view