GHSA-f7xc-5852-fj99

Suggest an improvement
Source
https://github.com/advisories/GHSA-f7xc-5852-fj99
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/03/GHSA-f7xc-5852-fj99/GHSA-f7xc-5852-fj99.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-f7xc-5852-fj99
Aliases
Published
2026-03-25T22:00:43Z
Modified
2026-03-30T14:03:29Z
Severity
  • 6.3 (Medium) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N CVSS Calculator
Summary
Saloon has a Fixture Name Path Traversal Vulnerability
Details

Impact

Users with MockResponse fixtures that use path traversal.

Patches

Upgrade to Saloon v4+

Upgrade guide: https://docs.saloon.dev/upgrade/upgrading-from-v3-to-v4

Description

Fixture names were used to build file paths under the configured fixture directory without validation. A name containing path segments (e.g. ../traversal or ../../etc/passwd) resulted in a path outside that directory. When the application read a fixture (e.g. for mocking) or wrote one (e.g. when recording responses), it could read or write files anywhere the process had access. If the fixture name was derived from user or attacker-controlled input (e.g. request parameters or config), this constituted a path traversal vulnerability and could lead to disclosure of sensitive files or overwriting of critical files. The fix adds validation in the fixture layer (rejecting names with /, , .., or null bytes, and restricting to a safe character set) and defence-in-depth in the storage layer (ensuring the resolved path remains under the base directory before any read or write).

Credits

Saloon thanks @HuajiHD for finding the issue and recommending solutions and @JonPurvis for applying the fix.

Database specific
{
    "cwe_ids":  [
        "CWE-125",
        "CWE-22",
        "CWE-787"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-03-25T22:00:43Z",
    "nvd_published_at":  "2026-03-26T01:16:27Z",
    "severity":  "MODERATE"
}
References

Affected packages

Packagist / saloonphp/saloon

Package

Name
saloonphp/saloon
Purl
pkg:composer/saloonphp/saloon

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
4.0.0

Affected versions

v0.*
v0.0.2
v0.0.3
v0.0.4
v0.1.0
v0.2.0
v0.3.0
v0.3.1
v0.4.0
v0.4.1
v0.5.0
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.6.5
v0.6.6
v0.7.0
v0.7.1
v0.7.2
v0.8.0
v0.8.1
v0.8.2
v0.8.3
v0.9.0
v0.9.1
v0.9.2
v0.10.0
v0.11.0
v1.*
v1.0
v1.0.1
v1.1.0
v1.2.0
v1.3.0
v1.3.1
v1.3.2
v1.3.3
v1.4.0
v1.4.1
v1.4.2
v1.4.3
v1.4.4
v1.5
v1.5.1
v1.5.2
v1.5.3
v1.6.0
v1.6.1
v1.6.2
v1.7.0
v1.7.1
v2.*
v2.0.0-beta1
v2.0.0-beta2
v2.0.0-beta3
v2.0.0-beta4
v2.0.0-beta5
v2.0.0-beta6
v2.0.0-beta7
v2.0.0
v2.0.1
v2.0.2
v2.1.0
v2.2.0
v2.3.0
v2.4.0
v2.5.0
v2.6.0
v2.6.1
v2.6.2
v2.6.3
v2.6.4
v2.6.5
v2.6.6
v2.7.0
v2.8.0
v2.8.1
v2.9.0
v2.9.1
v2.9.2
v2.10.0
v2.11.0
v2.12.0
v2.12.1
v3.*
v3.0.0-beta.1
v3.0.0-beta.2
v3.0.0-beta.3
v3.0.0-beta.4
v3.0.0-beta.5
v3.0.0-beta.6
v3.0.0-beta.7
v3.0.0
v3.0.1
v3.0.2
v3.0.3
v3.0.4
v3.0.5
v3.0.6
v3.1.0
v3.2.0
v3.3.0
v3.3.1
v3.3.2
v3.4.0
v3.4.1
v3.4.2
v3.5.0
v3.6.0
v3.6.1
v3.6.2
v3.6.3
v3.6.4
v3.7.0
v3.8.0
v3.8.1
v3.9.0
v3.9.1
v3.10.0
v3.10.1
v3.11.0
v3.11.1
v3.11.2
v3.12.0
v3.13.0
v3.13.1
v3.14.0
v3.14.1
v3.14.2
v3.14.3
v3.15.0

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/03/GHSA-f7xc-5852-fj99/GHSA-f7xc-5852-fj99.json"