GHSA-2g98-f9jv-w8c5: robrichards/xmlseclibs XPath injection
7.5
CVSS Score
3.1
Basic Information
CVE ID
-
GHSA ID
EPSS Score
-
CWE
Published
5/20/2024
Updated
5/20/2024
KEV Status
No
Technology
PHP
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| robrichards/xmlseclibs | composer | >= 1.0.0, < 3.0.2 | 3.0.2 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from unfiltered user input in XPath expressions. The pre-patch code in XMLSecEnc.php directly interpolated $id (from URI substring) into an XPath query, while XMLSecurityDSig.php's processRefNode built an XPath condition using $identifier and looped $idKey without sanitization. The commit introduced XPath::filter() to sanitize these values, confirming these were injection points. The functions' direct use of external inputs (URI-derived $id and signature reference $identifier/$idKey) in query construction without prior validation matches XPath injection patterns.