Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
PR:L because exploitation requires prior allowed-submitter authorization; C:H reflects full OAuth credential exfiltration; no integrity or availability impact applies.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
3DescriptionCVE.org
Pathling is a set of tools that make it easier to use FHIR and clinical terminology within health data analytics. Prior to version 2.0.0 of Pathling Server, Pathling's bulk-submit operation allows an allowed submitter to supply an explicit oauthMetadataUrl parameter that is not validated against pathling.bulkSubmit.allowableSources. When present, the bulk-submit OAuth flow trusts metadata and the returned token_endpoint from the caller-chosen location, then builds outbound OAuth client authentication directly from the submitter's stored credentials. This is fixed in Pathling Server 2.0.0.
AnalysisAI
Credential exfiltration in Pathling Server prior to 2.0.0 allows an allowed submitter to hijack the bulk-submit OAuth flow by supplying an attacker-controlled oauthMetadataUrl parameter that is never validated against the server's configured pathling.bulkSubmit.allowableSources allowlist. Pathling blindly fetches OAuth metadata from the caller-supplied URL, trusts the returned token_endpoint, and transmits stored OAuth client credentials directly to the attacker's infrastructure. No public exploit has been identified at time of analysis, and the vulnerability is not listed in CISA KEV, but the credential theft impact is severe for any healthcare organization running FHIR bulk data pipelines on this platform.
Technical ContextAI
Pathling is a health data analytics platform built around the HL7 FHIR standard, providing bulk clinical data ingestion via a bulk-submit API operation. This operation implements an OAuth 2.0 client credentials flow to authenticate outbound requests. A key design parameter, oauthMetadataUrl, tells Pathling where to fetch the OAuth authorization server's metadata document - including the token_endpoint to which client credentials are sent. The vulnerability, classified as CWE-522 (Insufficiently Protected Credentials), arises because this URL is caller-supplied at request time and is not cross-checked against the pathling.bulkSubmit.allowableSources allowlist that governs other bulk-submit inputs. The result is that Pathling's credential store becomes an open relay: any party who can invoke the bulk-submit endpoint can point it at an arbitrary OAuth metadata server and receive the platform's stored client credentials. Exact CPE strings were not provided in available intelligence, but the scope is the Pathling Server component across all releases before 2.0.0.
RemediationAI
Upgrade to Pathling Server 2.0.0, which is the vendor-confirmed fix that enforces validation of the oauthMetadataUrl parameter against the pathling.bulkSubmit.allowableSources allowlist; see https://github.com/aehrc/pathling/security/advisories/GHSA-245h-c573-9vr5. If immediate upgrade is not feasible, disable the bulk-submit feature entirely to eliminate the attack surface - this is the most effective compensating control, with the trade-off of halting bulk data ingestion workflows. Where disabling is not operationally viable, restrict submitter access to the absolute minimum trusted set of identities and enforce audit logging on all bulk-submit invocations to detect anomalous oauthMetadataUrl values. Implement network-level egress filtering to prevent Pathling from making outbound HTTP requests to unexpected external domains, which would block the attacker's metadata fetch. As a precautionary measure, rotate all OAuth client credentials used in bulk-submit pipelines if unvalidated oauthMetadataUrl values may have been accepted in prior requests.
Same weakness CWE-522 – Insufficiently Protected Credentials
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-54641