Description
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Parse Server uses the request header `x-forwarded-for` to determine the client IP address. If Parse Server doesn't run behind a proxy server, then a client can set this header and Parse Server will trust the value of the header. The incorrect client IP address will be used by various features in Parse Server. This allows to circumvent the security mechanism of the Parse Server option `masterKeyIps` by setting an allowed IP address as the `x-forwarded-for` header value. This issue has been patched in version 5.4.1. The mechanism to determine the client IP address has been rewritten. The correct IP address determination now requires to set the Parse Server option `trustProxy`.
Remediation
References
https://github.com/parse-community/parse-server/commit/e016d813e083ce6828f9abce245d15b681a224d8
https://github.com/parse-community/parse-server/security/advisories/GHSA-vm5r-c87r-pf6x
Related Vulnerabilities
CVE-2024-36401 Vulnerability in maven package org.geoserver:gs-wfs
CVE-2023-42794 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core
CVE-2020-12265 Vulnerability in maven package org.webjars:decompress
CVE-2022-37616 Vulnerability in npm package xmldom
CVE-2020-19698 Vulnerability in maven package org.webjars.npm:editor.md