CVE-2026-57268 GeoVision GeoWebPlayer Websocket Server out-of-bounds read vulnerability

High 8.3 Published Updated

An out-of-bounds read in GeoWebPlayer's websocket server allows attackers to potentially execute arbitrary code via crafted index values.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
None listed

What is CVE-2026-57268?

CVE-2026-57268 is a high-severity memory corruption vulnerability in GeoVision Inc. GeoWebPlayer, published on 2 Jul 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official 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]

}

}

Weakness: CWE-129

Which versions are affected by CVE-2026-57268?

How do I fix CVE-2026-57268?

No fix has been published for CVE-2026-57268 yet. Limit exposure of the affected software until one is available.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-57268 being exploited?

There is no known exploitation of CVE-2026-57268 in the wild and no public exploit code.

Sources

Also known as GHSA-fxf5-23x5-47m9.

Is CVE-2026-57268 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free