CVE-2026-57268: CWE-129 Improper validation of array index in GeoVision Inc. GeoWebPlayer
GeoWebPlayer (also called "Web Plugin" in the GV-VMS documentation and "WS Player" for VMS-Cloud) is an addon that can be installed with various GeoVision software (GV-VMS, GV-Cloud, ...). It creates a websocket server that expands the capabilities of the various web-interfaces provided by the GeoVision software and may be necessary for them to function properly. The Websocket server can accept various commands coming from localhost. Many of the commands will take an `index` value that is then used to access various arrays to enter critical sections, perform various actions via function calls, etc. However the `index` value is usually not checked for valid range, and as such it can be used to access multiple arrays out-of-bound. ### saveVideo command index-out-of-bound When sending the `saveVideo` command, the `index` field is extracted from the websocket message [1]. Then without checking the range of the index, it is used to trigger a CriticalSection ([2]) and releases it [3]. The release function call ([3]) is executed using a function pointer which will be read out of bounds potentially leading to code execution: v6 = get_entry(a2, "index"); result = json_is_value_int(v6); if ( (_BYTE)result ) { v8 = get_entry(a2, "index"); index = json_value_to_int(&v8->value); // [1] result = CCriticalSection::EnterCritSection(&this->crit_sections[index]); //[2] if ( result ) { if ( this->array_of_IPCams[index] ) { if ( this->array_of_IPCams[index]->field_20 ) do_PostMessageA((CViewer *)this->array_of_IPCams[index], 0x111u, 0x139Fu, v11); } return (*(int (__thiscall **)(CCriticalSection *))(this->crit_sections[index].vtbl + 20))(&this->crit_sections[index]); //[3] } }
AI Analysis
Technical Summary
GeoWebPlayer's WebSocket server accepts commands from localhost that include an 'index' parameter used to access internal arrays without proper bounds checking. In the 'saveVideo' command, this unchecked index is used to enter and release critical sections via function pointers. The lack of validation allows out-of-bounds array access, potentially leading to execution of arbitrary code by invoking function pointers outside the intended array bounds. This vulnerability is identified as CWE-129 (Improper Validation of Array Index) and affects GeoWebPlayer version V1.1.1.0.
Potential Impact
Successful exploitation of this vulnerability can lead to arbitrary code execution with the privileges of the GeoWebPlayer process. This includes potential full compromise of the affected system, data corruption, or denial of service. The CVSS 3.1 base score is 8.3 (High), reflecting network attack vector, high impact on confidentiality, integrity, and availability, and requiring user interaction with high attack complexity.
Mitigation Recommendations
No official patch or remediation has been confirmed or published by the vendor at this time. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the localhost WebSocket server to trusted users only and monitor for suspicious activity related to GeoWebPlayer. Avoid executing untrusted commands or inputs that could exploit the index validation flaw.
CVE-2026-57268: CWE-129 Improper validation of array index in GeoVision Inc. GeoWebPlayer
Description
GeoWebPlayer (also called "Web Plugin" in the GV-VMS documentation and "WS Player" for VMS-Cloud) is an addon that can be installed with various GeoVision software (GV-VMS, GV-Cloud, ...). It creates a websocket server that expands the capabilities of the various web-interfaces provided by the GeoVision software and may be necessary for them to function properly. The Websocket server can accept various commands coming from localhost. Many of the commands will take an `index` value that is then used to access various arrays to enter critical sections, perform various actions via function calls, etc. However the `index` value is usually not checked for valid range, and as such it can be used to access multiple arrays out-of-bound. ### saveVideo command index-out-of-bound When sending the `saveVideo` command, the `index` field is extracted from the websocket message [1]. Then without checking the range of the index, it is used to trigger a CriticalSection ([2]) and releases it [3]. The release function call ([3]) is executed using a function pointer which will be read out of bounds potentially leading to code execution: v6 = get_entry(a2, "index"); result = json_is_value_int(v6); if ( (_BYTE)result ) { v8 = get_entry(a2, "index"); index = json_value_to_int(&v8->value); // [1] result = CCriticalSection::EnterCritSection(&this->crit_sections[index]); //[2] if ( result ) { if ( this->array_of_IPCams[index] ) { if ( this->array_of_IPCams[index]->field_20 ) do_PostMessageA((CViewer *)this->array_of_IPCams[index], 0x111u, 0x139Fu, v11); } return (*(int (__thiscall **)(CCriticalSection *))(this->crit_sections[index].vtbl + 20))(&this->crit_sections[index]); //[3] } }
CVSS v3.1
Score 8.3high
Affected software
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
GeoWebPlayer's WebSocket server accepts commands from localhost that include an 'index' parameter used to access internal arrays without proper bounds checking. In the 'saveVideo' command, this unchecked index is used to enter and release critical sections via function pointers. The lack of validation allows out-of-bounds array access, potentially leading to execution of arbitrary code by invoking function pointers outside the intended array bounds. This vulnerability is identified as CWE-129 (Improper Validation of Array Index) and affects GeoWebPlayer version V1.1.1.0.
Potential Impact
Successful exploitation of this vulnerability can lead to arbitrary code execution with the privileges of the GeoWebPlayer process. This includes potential full compromise of the affected system, data corruption, or denial of service. The CVSS 3.1 base score is 8.3 (High), reflecting network attack vector, high impact on confidentiality, integrity, and availability, and requiring user interaction with high attack complexity.
Mitigation Recommendations
No official patch or remediation has been confirmed or published by the vendor at this time. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the localhost WebSocket server to trusted users only and monitor for suspicious activity related to GeoWebPlayer. Avoid executing untrusted commands or inputs that could exploit the index validation flaw.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GV
- Date Reserved
- 2026-06-24T05:48:03.740Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a45d94027e9c7971906c8cd
Added to database: 07/02/2026, 03:21:36 UTC
Last enriched: 07/09/2026, 09:23:34 UTC
Last updated: 08/16/2026, 00:41:14 UTC
Views: 50
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.