---
id: CVE-2023-42439
aliases:
  - GHSA-pxg5-h34r-7q8p
  - PYSEC-2023-176
title: GeoNode vulnerable to SSRF Bypass to return internal host data
summary: GeoNode vulnerable to SSRF Bypass to return internal host data
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'
vendor: geonode
product: geonode
ecosystem: pip
affected:
  - 'geonode >= 3.2.0, < 4.1.3.post1'
patched:
  - geonode 4.1.3.post1
published: '2023-09-20'
updated: '2026-09-10'
sourceUpdated: '2026-09-10T03:50:03.297287849Z'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/GHSA-pxg5-h34r-7q8p'
references:
  - url: 'https://github.com/GeoNode/geonode/security/advisories/GHSA-pxg5-h34r-7q8p'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2023-42439'
  - url: >-
      https://github.com/GeoNode/geonode/commit/79ac6e70419c2e0261548bed91c159b54ff35b8d
  - url: 'https://github.com/GeoNode/geonode'
  - url: 'https://github.com/GeoNode/geonode/releases/tag/4.1.3'
  - url: >-
      https://github.com/pypa/advisory-database/tree/main/vulns/geonode/PYSEC-2023-176.yaml
tags:
  - osv
  - pip
epss: 0.00962
epssPercentile: 0.60095
ingestedAt: '2026-09-12T03:13:01.719Z'
---

## Overview

A SSRF vulnerability exists, bypassing existing controls on the software. This can allow a user to request internal services for a full read SSRF, returning any data from the internal network.

the application is using a whitelist, but the whitelist can be bypassed with @ and encoded value of @ (%40) GET /proxy/?url=http://development.demo.geonode.org%40geoserver:8080/geoserver/web 
This will trick the application that the first host is a whitelisted address, but the browser will use @ or %40 as a credential to the host geoserver on port 8080, this will return the data to that host on the response.

![image](https://user-images.githubusercontent.com/35967437/264379628-8cecbc56-be6c-49dc-abe8-0baf8b8695cc.png)



## Affected packages

- `geonode >= 3.2.0, < 4.1.3.post1`

## Remediation

Upgrade to a patched release:

- `geonode 4.1.3.post1`
