GHSA-3JFP-46X4-XGFJ
Vulnerability from github – Published: 2026-04-17 22:21 – Updated: 2026-04-17 22:21Impact
A path traversal vulnerability was discovered in YARD <= 0.9.41 when using yard server to serve documentation. This bug would allow unsanitized HTTP requests to access arbitrary files on the machine of a yard server host under certain conditions.
The original patch in GHSA-xfhh-rx56-rxcr was incorrectly applied.
Patches
Please upgrade to YARD v0.9.42 immediately if you are relying on yard server to host documentation in any untrusted environments without WEBrick and rely on --docroot.
Workarounds
For users who cannot upgrade, it is possible to perform path sanitization of HTTP requests at your webserver level. WEBrick, for example, can perform such sanitization by default (which you can use via yard server -s webrick), as can certain rules in your webserver configuration.
{
"affected": [
{
"package": {
"ecosystem": "RubyGems",
"name": "yard"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "0.9.42"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [],
"database_specific": {
"cwe_ids": [
"CWE-22"
],
"github_reviewed": true,
"github_reviewed_at": "2026-04-17T22:21:03Z",
"nvd_published_at": null,
"severity": "MODERATE"
},
"details": "### Impact\n\nA path traversal vulnerability was discovered in YARD \u003c= 0.9.41 when using yard server to serve documentation. This bug would allow unsanitized HTTP requests to access arbitrary files on the machine of a yard server host under certain conditions.\n\nThe original patch in [GHSA-xfhh-rx56-rxcr](https://github.com/lsegal/yard/security/advisories/GHSA-xfhh-rx56-rxcr) was incorrectly applied.\n\n### Patches\n\nPlease upgrade to YARD v0.9.42 immediately if you are relying on yard server to host documentation in any untrusted environments without WEBrick and rely on `--docroot`.\n\n### Workarounds\n\nFor users who cannot upgrade, it is possible to perform path sanitization of HTTP requests at your webserver level. WEBrick, for example, can perform such sanitization by default (which you can use via yard server -s webrick), as can certain rules in your webserver configuration.",
"id": "GHSA-3jfp-46x4-xgfj",
"modified": "2026-04-17T22:21:03Z",
"published": "2026-04-17T22:21:03Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/lsegal/yard/security/advisories/GHSA-3jfp-46x4-xgfj"
},
{
"type": "PACKAGE",
"url": "https://github.com/lsegal/yard"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "yard: Possible arbitrary path traversal and file access via yard server"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.