CVE-2019-18954 Pomelo allows external control of critical state data

Medium 5.3 Published Updated

Attackers can corrupt internal state and execute arbitrary code by overwriting critical attributes via malicious user input in Pomelo game servers.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2019-18954?

CVE-2019-18954 is a medium-severity vulnerability in n/a, published on 13 Nov 2019. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Pomelo v2.2.5 allows external control of critical state data. A malicious user input can corrupt arbitrary methods and attributes in template/game-server/app/servers/connector/handler/entryHandler.js because certain internal attributes can be overwritten via a conflicting name. Hence, a malicious attacker can manipulate internal attributes by adding additional attributes to user input.

Weakness: CWE-668

Which versions are affected by CVE-2019-18954?

2 open source packages ship an affected version, including pomelo. It affects 1 product.

PackageAffectedFixed in
pomelo npmAll versions2.2.7
pomelo npmAll versions2.2.7

Products include Netease Pomelo.

How do I fix CVE-2019-18954?

Upgrade pomelo to 2.2.7 or later.

Is CVE-2019-18954 being exploited?

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

Sources

Also known as GHSA-4x6v-rwh4-55jw.

Is CVE-2019-18954 in your software?

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

Check your SBOMs for free