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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CWE-789 (未经控制的内存分配) — Vulnerability Class 241

241 vulnerabilities classified as CWE-789 (未经控制的内存分配). AI Chinese analysis included.

CWE-789 represents a critical memory management weakness where software allocates resources based on unvalidated, excessively large size values provided by external inputs. This flaw typically arises when developers fail to enforce upper bounds on integer parameters before invoking allocation functions, allowing attackers to supply maliciously crafted values that trigger massive memory consumption. Exploitation often leads to denial-of-service conditions through system exhaustion or resource starvation, potentially destabilizing the entire host environment. To mitigate this risk, developers must implement rigorous input validation strategies that strictly check size parameters against predefined, safe thresholds before any allocation occurs. Additionally, utilizing language-specific bounds checking mechanisms and static analysis tools can help identify potential overflows early in the development lifecycle, ensuring that memory requests remain within acceptable operational limits and preventing arbitrary resource depletion.

MITRE CWE Description
The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.
Common Consequences (1)
Availability DoS: Resource Consumption (Memory)
Not controlling memory allocation can result in a request for too much system memory, possibly leading to a crash of the application due to out-of-memory conditions, or the consumption of a large amount of memory on the system.
Mitigations (2)
Implementation, Architecture and Design Perform adequate input validation against any value that influences the amount of memory that is allocated. Define an appropriate strategy for handling requests that exceed the limit, and consider supporting a configuration option so that the administrator can extend the amount of memory to be used if necessary.
Operation Run your program using system-provided resource limits for memory. This might still cause the program to crash or exit, but the impact to the rest of the system will be minimized.
Examples (2)
Consider the following code, which accepts an untrusted size value and allocates a buffer to contain a string of the given size.
unsigned int size = GetUntrustedInt(); /* ignore integer overflow (CWE-190) for this example */ unsigned int totBytes = size * sizeof(char); char *string = (char *)malloc(totBytes); InitializeString(string);
Bad · C
Consider the following code, which accepts an untrusted size value and uses the size as an initial capacity for a HashMap.
unsigned int size = GetUntrustedInt(); HashMap list = new HashMap(size);
Bad · Java
CVE ID Title CVSS Severity Published
CVE-2026-15337 Potential denial-of-service vulnerability in check_for_language() — Django 5.3 Medium 2026-08-04
CVE-2026-12852 MLS wire decoder allocates attacker-declared opaque length before bounds check — BC-JAVA 8.7 High 2026-08-03
CVE-2026-14682 Possible OOM from unbounded up-front allocation on a definite-length read — BC-JAVA 8.7 High 2026-08-03
CVE-2026-58060 HSS public-key level count unbounded, enabling huge allocation on verify — BC-JAVA 8.7 High 2026-08-03
CVE-2026-59646 DTLS handshake reassembler allocates buffer from unchecked 24-bit length — BC-JAVA 8.7 High 2026-08-03
CVE-2026-59649 OpenPGP user-attribute subpacket length bounded only by JVM max memory — BC-JAVA 8.7 High 2026-08-03
CVE-2026-12185 BKS/UBER keystore allocates from untrusted lengths before integrity check — BC-JAVA 7.1 High 2026-08-03
CVE-2026-55768 GoAccess WebSocket Server: Signed 32 bit truncation of the 64 bit frame length causes a remote pre-authentication denial of service — goaccess 8.7 High 2026-07-30
CVE-2026-65315 Ollama Remote Denial of Service via Attacker-Controlled Allocation in GGUF Metadata Parser — Ollama 7.5 High 2026-07-21
CVE-2026-59844 Libssh: libssh: denial of service via oversized sftp read length — Red Hat Enterprise Linux 10 6.5 Medium 2026-07-21
CVE-2025-71395 SurrealDB before 2.2.2 Memory Exhaustion via string::replace — surrealdb 7.1 High 2026-07-18
CVE-2026-44453 h2o is vulnerable to musl libc stack overflow — h2o 7.5 High 2026-07-16
CVE-2026-58559 Huawei harmonyos 资源管理错误漏洞 — Harmony OS 6.5 Medium 2026-07-15
CVE-2026-40378 Windows Local Security Authority Subsystem Service (LSASS) Denial of Service Vulnerability — Windows 10 Version 1607 7.5 High 2026-07-14
CVE-2026-59204 Pillow JPEG2000 tiled decode retains a growing scratch buffer and can be used for denial of service — Pillow - - 2026-07-14
CVE-2026-55213 h2o: musl libc stack overflow (QPACK) — h2o 7.5 High 2026-07-10
CVE-2026-40006 Apache IoTDB: Unauthenticated heap-exhaustion DoS via unbounded allocation in IoTDB AirGap pipe receiver — Apache IoTDB - - 2026-07-10
CVE-2026-59938 pypdf: Possible large memory usage for wrong image dimensions — pypdf - - 2026-07-08
CVE-2026-15053 Tanium addressed a denial of service vulnerability in Tanium Server. — Tanium Server 7.5 High 2026-07-08
CVE-2026-55079 Coder's unbounded memory allocation in provisioner file upload allows authenticated denial of service — coder 4.9 Medium 2026-07-07
CVE-2026-55379 Pillow BdfFontFile`: `Image.new()` called without `_decompression_bomb_check()` — bomb protection bypass via font loading — Pillow 7.5 High 2026-07-06
CVE-2026-55380 Pillow GdImageFile decompression bomb protection bypass — Pillow 7.5 High 2026-07-06
CVE-2026-54060 Pillow: `FontFile.compile()`: `Image.new()` called without `_decompression_bomb_check()` — Pillow 7.5 High 2026-07-06
CVE-2026-54059 Pillow: PcfFontFile._load_bitmaps()`: `Image.frombytes()` called without `_decompression_bomb_check()` — bomb protection bypass via PCF font loading — Pillow 7.5 High 2026-07-06
CVE-2026-14684 HdrHistogram AbstractHistogram.java memory allocation — HdrHistogram 3.3 Low 2026-07-04
CVE-2026-14683 HdrHistogram AbstractHistogram.java memory allocation — HdrHistogram 3.3 Low 2026-07-04
CVE-2026-50734 Apache ActiveMQ Client, Apache ActiveMQ, Apache ActiveMQ All: Pre-authentication OpenWire memory-allocation DoS during wire format negotiation — Apache ActiveMQ Client - - 2026-06-30
CVE-2026-53916 Apache ActiveMQ, Apache ActiveMQ All, Apache ActiveMQ Stomp: Unbounded header buffer in STOMP NIO codec — Apache ActiveMQ - - 2026-06-30
CVE-2026-53917 Apache ActiveMQ, Apache ActiveMQ All, Apache ActiveMQ Client, Apache ActiveMQ Broker: Unbounded memory allocation in OpenWire property unmarshalling — Apache ActiveMQ - - 2026-06-30
CVE-2026-53428 Unbounded memory allocation in highlight_lines range expansion in mdex — mdex - - 2026-06-29

Vulnerabilities classified as CWE-789 (未经控制的内存分配) represent 241 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.