Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CWE-122 (堆缓冲区溢出) — Vulnerability Class 1863

1863 vulnerabilities classified as CWE-122 (堆缓冲区溢出). AI Chinese analysis included.

CWE-122 represents a critical memory safety weakness where an application writes data beyond the allocated boundaries of a heap-allocated buffer, typically created via functions like malloc. This vulnerability arises when developers fail to validate input lengths or perform insufficient bounds checking before copying data into dynamically allocated memory regions. Attackers exploit this flaw by crafting malicious inputs that exceed buffer limits, allowing them to overwrite adjacent heap metadata or control structures. Such overwrites can corrupt the heap manager’s internal state, leading to application crashes, data leakage, or arbitrary code execution by hijacking control flow. To prevent heap-based buffer overflows, developers must rigorously validate all input sizes against buffer capacities, utilize safe string handling libraries that enforce length limits, and employ modern memory-safe programming languages that automatically manage memory boundaries, thereby eliminating manual pointer arithmetic errors.

MITRE CWE Description
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
Common Consequences (3)
AvailabilityDoS: Crash, Exit, or Restart, DoS: Resource Consumption (CPU), DoS: Resource Consumption (Memory)
Buffer overflows generally lead to crashes. Other attacks leading to lack of availability are possible, including putting the program into an infinite loop.
Integrity, Confidentiality, Availability, Access ControlExecute Unauthorized Code or Commands, Bypass Protection Mechanism, Modify Memory
Buffer overflows often can be used to execute arbitrary code, which is usually outside the scope of a program's implicit security policy. Besides important user data, heap-based overflows can be used to overwrite function pointers that may be living in memory, pointing it to the attacker's code. Eve…
Integrity, Confidentiality, Availability, Access Control, OtherExecute Unauthorized Code or Commands, Bypass Protection Mechanism, Other
When the consequence is arbitrary code execution, this can often be used to subvert any other security service.
Mitigations (5)
Pre-design: Use a language or compiler that performs automatic bounds checking.
Architecture and DesignUse an abstraction library to abstract away risky APIs. Not a complete solution.
Operation, Build and CompilationUse 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…
Effectiveness: Defense in Depth
Operation, Build and CompilationRun 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…
Effectiveness: Defense in Depth
ImplementationImplement and perform bounds checking on input.
Examples (2)
While buffer overflow examples can be rather complex, it is possible to have very simple, yet still exploitable, heap-based buffer overflows:
#define BUFSIZE 256 int main(int argc, char **argv) { char *buf; buf = (char *)malloc(sizeof(char)*BUFSIZE); strcpy(buf, argv[1]); }
Bad · C
This example applies an encoding procedure to an input string and stores it into a buffer.
char * copy_input(char *user_supplied_string){ int i, dst_index; char *dst_buf = (char*)malloc(4*sizeof(char) * MAX_SIZE); if ( MAX_SIZE <= strlen(user_supplied_string) ){ die("user string too long, die evil hacker!"); } dst_index = 0; for ( i = 0; i < strlen(user_supplied_string); i++ ){ if( '&' == user_supplied_string[i] ){ dst_buf[dst_index++] = '&'; dst_buf[dst_index++] = 'a'; dst_buf[dst_index++] = 'm'; dst_buf[dst_index++] = 'p'; dst_buf[dst_index++] = ';'; } else if ('<' == user_supplied_string[i] ){ /* encode to &lt; */ } else dst_buf[dst_index++] = user_supplied_string[i]; } return ds
Bad · C
CVE IDTitleCVSSSeverityPublished
CVE-2025-27487 Remote Desktop Client Remote Code Execution Vulnerability — Remote Desktop client for Windows Desktop 8.0 High2025-04-08
CVE-2025-26674 Windows Media Remote Code Execution Vulnerability — Windows 10 Version 1809 7.8 High2025-04-08
CVE-2025-21222 Windows Telephony Service Remote Code Execution Vulnerability — Windows 10 Version 1507 8.8 High2025-04-08
CVE-2025-21221 Windows Telephony Service Remote Code Execution Vulnerability — Windows 10 Version 1507 8.8 High2025-04-08
CVE-2025-21205 Windows Telephony Service Remote Code Execution Vulnerability — Windows 10 Version 1507 8.8 High2025-04-08
CVE-2025-27752 Microsoft Excel Remote Code Execution Vulnerability — Microsoft 365 Apps for Enterprise 7.8 High2025-04-08
CVE-2025-27478 Windows Local Security Authority (LSA) Elevation of Privilege Vulnerability — Windows 10 Version 1507 7.0 High2025-04-08
CVE-2025-27477 Windows Telephony Service Remote Code Execution Vulnerability — Windows 10 Version 1507 8.8 High2025-04-08
CVE-2025-26668 Windows Routing and Remote Access Service (RRAS) Remote Code Execution Vulnerability — Windows 10 Version 1507 7.5 High2025-04-08
CVE-2025-26666 Windows Media Remote Code Execution Vulnerability — Windows 10 Version 1809 7.8 High2025-04-08
CVE-2025-29769 libvips has a potential heap-based buffer overflow when attempting to convert multiband TIFF input to HEIF output — libvips 5.5AIMediumAI2025-04-07
CVE-2025-3159 Open Asset Import Library Assimp ASE File ASEParser.cpp ParseLV4MeshBonesVertices heap-based overflow — Assimp 5.3 Medium2025-04-03
CVE-2025-3158 Open Asset Import Library Assimp LWO File LWOAnimation.cpp UpdateAnimRangeSetup heap-based overflow — Assimp 5.3 Medium2025-04-03
CVE-2025-2924 HDF5 H5HLcache.c H5HL__fl_deserialize heap-based overflow — HDF5 3.3 Low2025-03-28
CVE-2025-2923 HDF5 H5Fint.c H5F_addr_encode_len heap-based overflow — HDF5 3.3 Low2025-03-28
CVE-2025-31164 fig2dev heap-buffer overflow — fig2dev 6.6 Medium2025-03-28
CVE-2025-2915 HDF5 H5Faccum.c H5F__accum_free heap-based overflow — HDF5 3.3 Low2025-03-28
CVE-2025-2914 HDF5 H5FScache.c H5FS__sinfo_Srialize_Sct_cb heap-based overflow — HDF5 3.3 Low2025-03-28
CVE-2025-2912 HDF5 H5Omessage.c H5O_msg_flush heap-based overflow — HDF5 3.3 Low2025-03-28
CVE-2025-2849 UPX p_lx_elf.cpp un_DT_INIT heap-based overflow — UPX 3.3 Low2025-03-27
CVE-2025-30216 CryptoLib Has Heap Overflow in Crypto_TM_ProcessSecurity due to Unchecked Secondary Header Length — CryptoLib 9.4 Critical2025-03-25
CVE-2025-2531 Luxion KeyShot DAE File Parsing Heap-based Buffer Overflow Remote Code Execution Vulnerability — KeyShot 7.8 -2025-03-25
CVE-2025-2757 Open Asset Import Library Assimp MD5 File MD5Parser.cpp AI_MD5_PARSE_STRING_IN_QUOTATION heap-based overflow — Assimp 6.3 Medium2025-03-25
CVE-2025-2756 Open Asset Import Library Assimp AC3D File ACLoader.cpp ConvertObjectSection heap-based overflow — Assimp 6.3 Medium2025-03-25
CVE-2025-2754 Open Asset Import Library Assimp AC3D File ACLoader.cpp ConvertObjectSection heap-based overflow — Assimp 6.3 Medium2025-03-25
CVE-2025-2618 D-Link DAP-1620 Path api set_ws_action heap-based overflow — DAP-1620 9.8 Critical2025-03-22
CVE-2025-2592 Open Asset Import Library Assimp CSMLoader.cpp InternReadFile heap-based overflow — Assimp 6.3 Medium2025-03-21
CVE-2025-2584 WebAssembly wabt binary-reader-interp.cc GetReturnCallDropKeepCount heap-based overflow — wabt 5.0 Medium2025-03-21
CVE-2025-0755 MongoDB C Driver bson library may be susceptible to buffer overflow — libbson 8.4 High2025-03-18
CVE-2025-29912 CryptoLib Has Heap Buffer Overflow Due to Unsigned Integer Underflow in Crypto_TC_ProcessSecurity — CryptoLib 9.8 -2025-03-17

Vulnerabilities classified as CWE-122 (堆缓冲区溢出) represent 1863 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.