Weakness (CWE)
CWE-122: Heap-based Buffer Overflow
The product writes past the end of a buffer that was allocated on the heap.
How to prevent it (7 mitigations)
-
Pre-design: Use a language or compiler that performs automatic bounds checking.
-
Architecture and Design
Use an abstraction library to abstract away risky APIs. Not a complete solution.
-
Operation, Build and Compilation
Use automatic buffer overflow detection mechanisms that are offered by certain compilers or compiler extensions. Examples include: the Microsoft Visual Studio /GS flag, Fedora/Red Hat FORTIFY_SOURCE GCC flag, StackGuard, and ProPolice, which provide various mechanisms including canary-based detection and range/index checking.
D3-SFCV (Stack Frame Canary Validation) from D3FEND [REF-1334] discusses canary-based detection in detail.
-
Operation, Build and Compilation
Run or compile the software using features or extensions that randomly arrange the positions of a program's executable and libraries in memory. Because this makes the addresses unpredictable, it can prevent an attacker from reliably jumping to exploitable code.
Examples include Address Space Layout Randomization (ASLR) [REF-58] [REF-60] and Position-Independent Executables (PIE) [REF-64]. Imported modules may be similarly realigned if their default memory addresses conflict with other modules, in a process known as "rebasing" (for Windows) and "prelinking" (for Linux) [REF-1332] using randomly generated addresses. ASLR for libraries cannot be used in conjunction with prelink since it would require relocating the libraries at run-time, defeating the whole purpose of prelinking.
For more information on these techniques see D3-SAOR (Segment Address Offset Randomization) from D3FEND [REF-1335].
-
Implementation
Implement and perform bounds checking on input.
-
Implementation
Do not use dangerous functions such as gets. Look for their safe equivalent, which checks for the boundary.
-
Operation
Use OS-level preventative functionality. This is not a complete solution, but it provides some defense in depth.
Source: MITRE CWE-122
305 results · Clear filters · Feed
-
Critical 9.8
Windows Error Reporting Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Error Reporting allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Domain Name Service Remote Code Execution Vulnerability
Heap-based buffer overflow in DNS Server allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Text Shaping Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Text Shaping allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Network Policy Server (NPS) Remote Code Execution Vulnerability
Heap-based buffer overflow in Network Policy Server (NPS) allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows BitLocker Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows BitLocker allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows DHCP Server Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows DHCP Server allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft Office Outlook Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office Outlook allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft PostScript Printer Driver Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft PostScript Printer Driver allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft XML Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft XML allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Text Shaping Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Text Shaping allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft Windows Media Foundation Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Windows Media Foundation allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Error Reporting Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Error Reporting allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows System Information Console Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows System Information Console allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Media Player Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Media Player allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft Office Outlook Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office Outlook allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft Office Outlook Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office Outlook allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft PostScript Printer Driver Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft PostScript Printer Driver allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Volume Manager Extension Driver Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Volume Manager Extension Driver allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Routing and Remote Access Service (RRAS) Remote Code Execution Vulnerability
Remote Code Execution in Windows Routing and Remote Access Service (RRAS) allows attacker to gain an unauthorized access to victim's machine
-
Critical 9.8
Microsoft Windows Media Foundation Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Windows Media Foundation allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Remote Access Point-to-Point Protocol (PPP) EAP-TLS Remote Code Execution Vulnerability
Heap-based buffer overflow in Remote Access Point-to-Point Protocol (PPP) EAP-TLS allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Imaging Component Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Imaging Component allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Shell Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Shell allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Error Reporting Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Error Reporting allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Error Reporting Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Error Reporting allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Microsoft PowerShell Remote Code Execution Vulnerability
Integer underflow (wrap or wraparound) in Windows PowerShell allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows iSCSI Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows iSCSI allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows Rich Text Edit Control Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Rich Text Edit Control allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Windows libarchive Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Libarchive allows an unauthorized attacker to execute code over a network.
-
Critical 9.8
Apache DataSketches: datasketches-cpp: HLL CouponList Deserialization Buffer Overflow allows memory corruption via a crafted sketch
Heap buffer overflow in the HLL sketch deserialization of Apache DataSketches C++ (repo: datasketches-cpp). When deserializing a sketch in LIST mode, from either a byte buffer or a stream, the coupon count was read from the input and used as the number of ent…
-
Critical 9.8
IBM DataPower Gateway Buffer Overflow
IBM DataPower Gateway 10.5.0.0 through 10.5.0.22, 10.6.1 through 10.6.6, 10.6.0.0 through 10.6.0.10, and 11.0.0.0 through 11.0.0.2 is vulnerable to a heap-based buffer overflow, caused by improper bounds checking. An unauthenticated remote attacker could over…
-
Critical 9.8
Cisco NX-OS Software NX-API Remote Code Execution Vulnerability
A vulnerability in the NX-API feature of Cisco NX-OS Software could allow an unauthenticated, remote attacker to execute arbitrary code with root privileges or cause a denial of service (DoS) condition on an affected device. The vulnerability is due to …
-
Critical 9.2
Apache Thrift: C++ THttpTransport grows its line buffer without bound
Allocation of resources without limits or throttling, Integer overflow or wraparound, Heap-based buffer overflow vulnerability in Apache Thrift. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes t…
-
Critical 9.2
Apache Thrift: C++ `THeaderTransport::transform()` heap buffer overflow (write direction)
Heap-based buffer overflow vulnerability in Apache Thrift C++ THeaderTransport. When an application enables the ZLIB transform for the frames it sends, THeaderTransport::transform() copies the compressed frame into the write buffer without making sure it fits…
-
Critical 9.2
iperf3 3.20–3.21 (esnet/iperf) has a pre-auth heap buffer overflow in decrypt_rsa_message(): a 256-byte RSA buffer is B…
-
Critical 9.6
Buffer overflow in ANGLE in Google Chrome on on Android prior to 154.0.8037.92 allowed a remote attacker to potentially…
-
Critical 9.6
Buffer overflow in Video in Google Chrome prior to 154.0.8037.57 allowed a remote attacker to potentially execute arbit…
-
Critical 9.6
Buffer overflow in Tint in Google Chrome on on Android prior to 154.0.8037.57 allowed a remote attacker to potentially …
-
Critical 9.6
Buffer overflow in ANGLE in Google Chrome on on Android prior to 154.0.8037.57 allowed a remote attacker to execute arb…
-
Critical 9.6
Buffer overflow in WebGL in Google Chrome on on Android prior to 154.0.8037.57 allowed a remote attacker to potentially…