GHSA-xfhh-rx56-rxcr

Suggest an improvement
Source
https://github.com/advisories/GHSA-xfhh-rx56-rxcr
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2019/07/GHSA-xfhh-rx56-rxcr/GHSA-xfhh-rx56-rxcr.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-xfhh-rx56-rxcr
Aliases
Published
2019-07-02T15:28:38Z
Modified
2024-03-07T01:02:49.653476Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
Path Traversal vulnerability that affects yard
Details

Possible arbitrary path traversal and file access via yard server

Impact

A path traversal vulnerability was discovered in YARD <= 0.9.19 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.

Thanks to CuongMX from Viettel Cyber Security for discovering this vulnerability.

Patches

Please upgrade to YARD v0.9.20 immediately if you are relying on yard server to host documentation in any untrusted environments.

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.

Database specific
{
    "nvd_published_at": "2019-07-29T13:15:00Z",
    "cwe_ids": [
        "CWE-22"
    ],
    "severity": "HIGH",
    "github_reviewed": true,
    "github_reviewed_at": "2020-06-16T22:03:08Z"
}
References

Affected packages

RubyGems / yard

Package

Name
yard
Purl
pkg:gem/yard

Affected ranges

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

Affected versions

0.*

0.2.0
0.2.1
0.2.2
0.2.3
0.2.3.2
0.2.3.3
0.2.3.4
0.2.3.5
0.4.0
0.5.0
0.5.1p1
0.5.1
0.5.2
0.5.3
0.5.4
0.5.5
0.5.6
0.5.7
0.5.8
0.6.0
0.6.1
0.6.2
0.6.3
0.6.4
0.6.5
0.6.6
0.6.7
0.6.8
0.7.0
0.7.1
0.7.2
0.7.3
0.7.4
0.7.5
0.8.0
0.8.1
0.8.2
0.8.2.1
0.8.3
0.8.4
0.8.4.1
0.8.5
0.8.5.1
0.8.5.2
0.8.6
0.8.6.1
0.8.6.2
0.8.7
0.8.7.1
0.8.7.2
0.8.7.3
0.8.7.4
0.8.7.5
0.8.7.6
0.9.0
0.9.1
0.9.2
0.9.3
0.9.4
0.9.5
0.9.6
0.9.7
0.9.8
0.9.9
0.9.10
0.9.11
0.9.12
0.9.13
0.9.14
0.9.15
0.9.16
0.9.17
0.9.18
0.9.19