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
4,076 results · Feed
-
High 8.8
Microsoft Office Visio Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office Visio allows an unauthorized attacker to execute code over a network.
-
High 8.8
Microsoft Office Access Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office Access allows an unauthorized attacker to execute code over a network.
-
High 8.8
Microsoft Office Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft Office allows an unauthorized attacker to execute code over a network.
-
High 7.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Multiple Provider Router Elevation of Privilege Vulnerability
Double free in Windows Multiple Provider Router allows an authorized attacker to elevate privileges locally.
-
Medium 6.6
Windows Smart Card Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Smart Card allows an authorized attacker to elevate privileges with a physical attack.
-
High 8.1
Windows Message Queuing Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Message Queuing allows an unauthorized attacker to execute code over a network.
-
Medium 6.6
Windows Telephony Service Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Telephony Service allows an authorized attacker to elevate privileges with a physical attack.
-
Medium 6.5
Microsoft WDAC OLE DB provider for SQL Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft WDAC OLE DB provider for SQL allows an unauthorized attacker to execute code over a network.
-
High 8.8
Microsoft WDAC OLE DB provider for SQL Remote Code Execution Vulnerability
Heap-based buffer overflow in Microsoft WDAC OLE DB provider for SQL allows an unauthorized attacker to execute code over a network.
-
High 7.5
SQL Server Remote Code Execution Vulnerability
Heap-based buffer overflow in SQL Server allows an authorized attacker to execute code over a network.
-
High 8.1
Windows Message Queuing Queue Manager Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Message Queuing Queue Manager allows an unauthorized attacker to execute code over a network.
-
Medium 6.8
Windows CD-ROM Driver Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows CD-ROM Driver allows an unauthorized attacker to execute code with a physical attack.
-
High 7.8
Winlogon Elevation of Privilege Vulnerability
Heap-based buffer overflow in Winlogon allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Camera Frame Server Monitor Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Camera Frame Server Monitor allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Redirected Drive Buffering System Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Redirected Drive Buffering allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Management Instrumentation Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Management Instrumentation allows an unauthorized attacker to execute code locally.
-
High 7.2
Windows DHCP Server Remote Code Execution Vulnerability
Release of invalid pointer or reference in Windows DHCP Server allows an authorized attacker to execute code over a network.
-
High 7.5
Windows Deployment Services Remote Code Execution Vulnerability
Heap-based buffer overflow in Windows Deployment Services allows an authorized attacker to execute code over a network.
-
High 7.5
Windows NetBIOS Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows NetBIOS allows an unauthorized attacker to elevate privileges over a network.
-
High 7.0
Windows Setup and Deployment Elevation of Privilege Vulnerability
Double free in Windows Setup and Deployment allows an authorized attacker to elevate privileges locally.
-
High 7.0
Windows COM Elevation of Privilege Vulnerability
Release of invalid pointer or reference in Windows COM allows an authorized attacker to elevate privileges locally.
-
High 7.8
Desktop Window Manager Elevation of Privilege Vulnerability
Heap-based buffer overflow in Desktop Window Manager allows an authorized attacker to elevate privileges locally.
-
High 7.8
Windows Installer Elevation of Privilege Vulnerability
An elevation of privilege vulnerability exists in the Windows Installer when the Windows Installer fails to properly sanitize input leading to an insecure library loading behavior. A locally authenticated attacker could run arbitrary code with elevated system…
-
High 7.8
Windows Management Instrumentation Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Management Instrumentation allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Out-of-bounds read in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.
-
High 8.8
Windows Advanced Rasterization Platform Elevation of Privilege Vulnerability
Heap-based buffer overflow in Windows Advanced Rasterization Platform allows an authorized attacker to elevate privileges locally.