CWEweakness

CWE-822 Untrusted Pointer Dereference

Official page ↗
Abstraction
Base
Structure
Simple
Status
Incomplete
Languages
C, C++, Memory-Unsafe
CWE version
5.0

Description

The product obtains a value from an untrusted source, converts this value to a pointer, and dereferences the resulting pointer.

Common consequences

• Confidentiality: Read Memory — If the dereferencing operation is for a read, then the attack might allow reading of sensitive data, cause a crash, or set a variable to an unexpected value (since the value will be read from an unexpected memory location). • Availability: DoS: Crash, Exit, or Restart — If the untrusted pointer references a memory location that is not accessible to the product, or points to a location that is "malformed" or larger than expected by a read or write operation, the application may terminate unexpectedly. • Integrity, Confidentiality, Availability: Execute Unauthorized Code or Commands, Modify Memory — If the pointer is dereferenced for a write operation, the attack might allow modification of critical state variables, cause a crash, or execute code. If the untrusted pointer is used in a function call, then the attacker might be able to call arbitrary functions.

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.) • Automated Dynamic Analysis: Use tools that are integrated during compilation to insert runtime error-checking mechanisms related to memory safety errors, such as AddressSanitizer (ASan) for C/C++ [REF-1518].

Observed examples

• CVE-2007-5655: message-passing framework interprets values in packets as pointers, causing a crash. • CVE-2010-2299: labeled as a "type confusion" issue, also referred to as a "stale pointer." However, the bug ID says "contents are simply interpreted as a pointer... renderer ordinarily doesn't supply this pointer directly". The "handle" in the untrusted area is replaced in one function, but not another - thus also, effectively, exposure to wrong sphere (CWE-668). • CVE-2009-1719: Untrusted dereference using undocumented constructor. • CVE-2009-1250: An error code is incorrectly checked and interpreted as a pointer, leading to a crash. • CVE-2009-0311: An untrusted value is obtained from a packet and directly called as a function pointer, leading to code execution. • CVE-2010-1818: Undocumented attribute in multimedia software allows "unmarshaling" of an untrusted pointer. • CVE-2010-3189: ActiveX control for security software accepts a parameter that is assumed to be an initialized pointer. • CVE-2010-1253: Spreadsheet software treats certain record values that lead to "user-controlled pointer" (might be an untrusted offset, not an untrusted pointer).

Related

Attack pattern · CAPEC (1)

  • CAPEC-129 Pointer Manipulation attack pattern

Observed example · CVE (8)

  • CVE-2010-1818 The IPersistPropertyBag2::Read function in QTPlugin.ocx in Apple QuickTime 6.x, 7.x before 7.6.8, and other versions allows remote… vulnerability
  • CVE-2010-3189 The extSetOwner function in the UfProxyBrowserCtrl ActiveX control (UfPBCtrl.dll) in Trend Micro Internet Security Pro 2010 allows remote… vulnerability
  • CVE-2010-2299 The Clipboard::DispatchObject function in app/clipboard/clipboard.cc in Google Chrome before 5.0.375.70 does not properly handle… vulnerability
  • CVE-2010-1253 Microsoft Office Excel 2002 SP3, 2007 SP1, and SP2; Office 2004 for mac; Office 2008 for Mac; Open XML File Format Converter for Mac; and… vulnerability
  • CVE-2009-1719 The Aqua Look and Feel for Java implementation in Java 1.5 on Mac OS X 10.5 allows remote attackers to execute arbitrary code via a call to… vulnerability
  • CVE-2009-1250 The cache manager in the client in OpenAFS 1.0 through 1.4.8 and 1.5.0 through 1.5.58, and IBM AFS 3.6 before Patch 19, on Linux allows… vulnerability
  • CVE-2009-0311 The Backbone service (ftbackbone.exe) in EMC AutoStart before 5.3 SP2 allows remote attackers to execute arbitrary code via a packet with a… vulnerability
  • CVE-2007-5655 TIBCO SmartSockets RTserver 6.8.0 and earlier, RTworks before 4.0.4, and Enterprise Message Service (EMS) 4.0.0 through 4.4.1 allows remote… vulnerability

Can precede · CWE (2)

  • CWE-125 Out-of-bounds Read weakness
  • CWE-787 Out-of-bounds Write weakness

Child of · CWE (1)

  • CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer weakness

Referenced by CAPEC · weakness (1)

  • CAPEC-129 Pointer Manipulation attack pattern

Referenced by CVE · weakness (303)

  • CVE-2026-88781 Untrusted Pointer Dereference in ASUS certain motherboards firmware allows a kernel-level privileges user can supply an arbitrary memory… vulnerability
  • CVE-2026-19676 The user-mode verifier for the peci_transfer() system call, z_vrfy_peci_transfer() in drivers/peci/peci_handlers.c, checked only the device… vulnerability
  • CVE-2026-110322 The PEAK-System PCAN type 0x4030 processing path fails to validate a selected/returned object pointer before dereferencing fixed fields… vulnerability
  • CVE-2026-19595 The user-mode syscall verifier z_vrfy_rtio_cqe_get_mempool_buffer() in subsys/rtio/rtio_syscalls.c validated its two output parameters,… vulnerability
  • CVE-2026-108435 Untrusted pointer dereference in Microsoft Office Word allows an unauthorized attacker to disclose information over a network. vulnerability
  • CVE-2026-100205 Untrusted pointer dereference in SysInternals allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-102186 Untrusted pointer dereference in Windows Network File System allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-102188 Untrusted pointer dereference in Windows Storage Port Driver allows an unauthorized attacker to elevate privileges with a physical attack. vulnerability
  • CVE-2026-103578 Untrusted pointer dereference in Windows Kernel allows an unauthorized attacker to elevate privileges with a physical attack. vulnerability
  • CVE-2026-105723 Untrusted pointer dereference in Windows Distributed File System (DFS) allows an unauthorized attacker to elevate privileges over a network. vulnerability
  • CVE-2026-105729 Untrusted pointer dereference in SysInternals allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-69850 Untrusted pointer dereference in Windows Certificates allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-69902 Untrusted pointer dereference in Windows NTFS allows an authorized attacker to execute code locally. vulnerability
  • CVE-2026-70068 Heap-based buffer overflow in Windows Client-Side Caching (CSC) Service allows an unauthorized attacker to elevate privileges over a… vulnerability
  • CVE-2026-70104 Untrusted pointer dereference in Windows Win32 Kernel Subsystem allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-70111 Untrusted pointer dereference in Windows Kernel allows an unauthorized attacker to elevate privileges over a network. vulnerability
  • CVE-2026-70167 Access of resource using incompatible type ('type confusion') in DNS Server allows an authorized attacker to execute code over a network. vulnerability
  • CVE-2026-70170 Untrusted pointer dereference in Windows Kernel allows an authorized attacker to deny service over a network. vulnerability
  • CVE-2026-70172 Untrusted pointer dereference in Windows NTFS allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-70270 Untrusted pointer dereference in Windows Container Isolation FS Filter Driver allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-70275 Untrusted pointer dereference in Windows CD-ROM Driver allows an unauthorized attacker to execute code over a network. vulnerability
  • CVE-2026-70300 Untrusted pointer dereference in Microsoft Office Word allows an unauthorized attacker to execute code over a network. vulnerability
  • CVE-2026-83587 Untrusted pointer dereference in Windows Core Messaging allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-83826 Untrusted pointer dereference in Windows Error Reporting allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-83848 Untrusted pointer dereference in Windows COM+ Event System Service allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-85903 Untrusted pointer dereference in DNS Server allows an unauthorized attacker to execute code over a network. vulnerability
  • CVE-2026-85909 Out-of-bounds read in Windows Universal Disk Format File System Driver (UDFS) allows an authorized attacker to disclose information locally. vulnerability
  • CVE-2026-88098 Untrusted pointer dereference in Windows Security Support Provider Interface allows an authorized attacker to elevate privileges locally. vulnerability
  • CVE-2026-88112 Untrusted pointer dereference in DNS Server allows an unauthorized attacker to execute code over a network. vulnerability
  • CVE-2026-88114 Untrusted pointer dereference in DNS Server allows an unauthorized attacker to execute code over a network. vulnerability
Show all 303 ›

Referenced by CWE · can precede (1)

  • CWE-781 Improper Address Validation in IOCTL with METHOD_NEITHER I/O Control Code weakness

Referenced by CWE · has member (1)