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

Goal: 1000 CNY · Raised: 1336 CNY

100%

CWE-129 (对数组索引的验证不恰当) — Vulnerability Class 215

215 vulnerabilities classified as CWE-129 (对数组索引的验证不恰当). AI Chinese analysis included.

CWE-129 represents an improper validation of array index weakness where software fails to verify that untrusted input falls within the valid bounds of an array. This vulnerability typically allows attackers to exploit the flaw by supplying malicious values that cause the application to read or write memory outside the intended array boundaries. Such out-of-bounds access can lead to critical security breaches, including data corruption, denial of service, or arbitrary code execution, depending on the memory layout and context. To prevent this issue, developers must implement rigorous input validation checks before using any external data as an array index. This involves ensuring that indices are strictly greater than or equal to zero and less than the array’s defined length. Additionally, utilizing safe programming languages with automatic bounds checking or employing static analysis tools can help identify and mitigate these risks during the development lifecycle.

MITRE CWE Description
The product uses untrusted input when calculating or using an array index, but the product does not validate or incorrectly validates the index to ensure the index references a valid position within the array.
Common Consequences (5)
Integrity, AvailabilityDoS: Crash, Exit, or Restart
Use of an index that is outside the bounds of an array will very likely result in the corruption of relevant memory and perhaps instructions, leading to a crash, if the values are outside of the valid memory area.
IntegrityModify Memory
If the memory corrupted is data, rather than instructions, the system will continue to function with improper values.
Confidentiality, IntegrityModify Memory, Read Memory
Use of an index that is outside the bounds of an array can also trigger out-of-bounds read or write operations, or operations on the wrong objects; i.e., "buffer overflows" are not always the result. This may result in the exposure or modification of sensitive data.
Integrity, Confidentiality, AvailabilityExecute Unauthorized Code or Commands
If the memory accessible by the attacker can be effectively controlled, it may be possible to execute arbitrary code, as with a standard buffer overflow and possibly without the use of large inputs if a precise index can be controlled.
Integrity, Availability, ConfidentialityDoS: Crash, Exit, or Restart, Execute Unauthorized Code or Commands, Read Memory, Modify Memory
A single fault could allow either an overflow (CWE-788) or underflow (CWE-786) of the array index. What happens next will depend on the type of operation being performed out of bounds, but can expose sensitive information, cause a system crash, or possibly lead to arbitrary code execution.
Mitigations (5)
Architecture and DesignUse an input validation framework such as Struts or the OWASP ESAPI Validation API. Note that using a framework does not automatically address all input validation problems; be mindful of weaknesses that could arise from misusing the framework itself (CWE-1173).
Architecture and DesignFor any security checks that are performed on the client side, ensure that these checks are duplicated on the server side, in order to avoid CWE-602. Attackers can bypass the client-side checks by modifying values after the checks have been performed, or by changing the client to remove the client-side checks entirely. Then, these modified values would be submitted to the server. Even though clien…
RequirementsUse a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. For example, Ada allows the programmer to constrain the values of a variable and languages such as Java and Ruby will allow the programmer to handle exceptions when an out-of-bounds index is accessed.
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
OperationUse a CPU and operating system that offers Data Execution Protection (using hardware NX or XD bits) or the equivalent techniques that simulate this feature in software, such as PaX [REF-60] [REF-61]. These techniques ensure that any instruction executed is exclusively at a memory address that is part of the code segment. For more information on these techniques see D3-PSEP (Process Segment Executi…
Effectiveness: Defense in Depth
Examples (2)
In the code snippet below, an untrusted integer value is used to reference an object in an array.
public String getValue(int index) { return array[index]; }
Bad · Java
The following example takes a user-supplied value to allocate an array of objects and then operates on the array.
private void buildList ( int untrustedListSize ){ if ( 0 > untrustedListSize ){ die("Negative value supplied for list size, die evil hacker!"); } Widget[] list = new Widget [ untrustedListSize ]; list[0] = new Widget(); }
Bad · Java
CVE IDTitleCVSSSeverityPublished
CVE-2026-73489 Russh: Post-auth remote panic via pty-req with more than 130 terminal-mode records — russh 4.3 Medium2026-08-13
CVE-2026-73564 frp: Unauthenticated Remote Denial of Service in the frp SSH Tunnel Gateway via Integer Overflow — frp 8.7 High2026-08-13
CVE-2026-53792 rsync < 3.5.0 Out-of-Bounds Read via Zero-Length Checksum Block — rsync 6.5 Medium2026-08-13
CVE-2026-70635 TimescaleDB 2.29.1 Out-of-Bounds Read DoS via Bulk Dictionary Decompression Negative Index — timescaledb 7.1 High2026-08-06
CVE-2026-70634 TimescaleDB 2.29.1 Out-of-Bounds Read Information Disclosure via Dictionary Compression Reverse Iterator — timescaledb 8.1 High2026-08-06
CVE-2026-45799 Wire: skipGroup() missing negative-length check allows 10-byte payload to crash any Wire-decoding service — wire 7.5 High2026-07-17
CVE-2026-63308 Helm Files.Lines Denial of Service via Empty Chart Files — helm 4.3 Medium2026-07-17
CVE-2026-46377 Dasel: Index-out-of-range panic in dasel selector lexer on trailing backslash in quoted string — dasel 6.2 Medium2026-07-16
CVE-2026-24238 NVIDIA TensorRT 输入验证错误漏洞 — TensorRT 7.8 High2026-07-14
CVE-2026-15685 Ollama downloadBlob Improper Validation of Array Index Denial-of-Service Vulnerability — Ollama--2026-07-13
CVE-2026-57251 Foxit PDF Editor/Reader Cloud Appearance Buffer Overflow Vulnerability — Foxit PDF Editor 7.8 High2026-07-08
CVE-2026-57272 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57271 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57270 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57269 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57268 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57267 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57266 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57265 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-57264 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-13132 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-13131 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability — GeoWebPlayer 8.3 High2026-07-02
CVE-2026-14193 DVP80ES300T - Improper Validation of Array Index Vulnerability — DVP80ES300T 7.5 High2026-07-01
CVE-2026-22879 David Gobbi vtk-dicom 输入验证错误漏洞 — vtk 8.1 High2026-06-25
CVE-2026-56770 libais 0.15 - Out-of-bounds Vector Access in VdmStream::AddLine via Invalid Sequential Message ID — libais 7.5 High2026-06-25
CVE-2026-56111 Marlin Firmware 2.1.2.7 Out-of-Bounds Write via M421 G-code Handler — Marlin 9.1 Critical2026-06-24
CVE-2026-32682 NGINX Gateway Fabric vulnerability — NGINX Gateway Fabric 6.5 Medium2026-06-17
CVE-2026-24181 NVIDIA DALI 输入验证错误漏洞 — DALI 7.3 High2026-06-09
CVE-2026-25276 Improper Validation of Array Index in Secure Processor — Snapdragon 8.8 High2026-06-01
CVE-2026-45104 MapServer: NULL pointer dereference in SLD `<ElseFilter>` rule parsing reachable via WMS `SLD_BODY` — MapServer 7.5 High2026-05-27

Vulnerabilities classified as CWE-129 (对数组索引的验证不恰当) represent 215 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.