CVE-2024-27091 GeoNode stored XSS to full account takeover

Medium 6.1 Published Updated

Stored XSS in GeoNode allows attackers to steal CSRF tokens and change victim email addresses, leading to full account takeover.

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
Available

What is CVE-2024-27091?

CVE-2024-27091 is a medium-severity cross-site scripting vulnerability in geonode, published on 27 Mar 2024. 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

GeoNode is a geospatial content management system, a platform for the management and publication of geospatial data. An issue exists within GEONODE where the current rich text editor is vulnerable to Stored XSS. The applications cookies are set securely, but it is possible to retrieve a victims CSRF token and issue a request to change another user's email address to perform a full account takeover. Due to the script element not impacting the CORS policy, requests will succeed. This vulnerability is fixed in 4.2.3.

Weakness: CWE-79

Which versions are affected by CVE-2024-27091?

3 open source packages ship an affected version, including geonode. It affects 1 product.

PackageAffectedFixed in
geonode PyPIFrom 3.2.14.2.3
geonode PyPIFrom 3.2.14.2.3
geonode PyPIFrom 3.2.14.2.3

Products include Geosolutionsgroup Geonode.

How do I fix CVE-2024-27091?

Upgrade geonode to 4.2.3 or later.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2024-27091 being exploited?

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

Sources

Also known as GHSA-rwcv-whm8-fmxm, PYSEC-2024-320.

Is CVE-2024-27091 in your software?

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

Check your SBOMs for free