GHSA-qrqq-9c63-xfrg json
tower-http's improper validation of Windows paths could lead to directory traversal attack
published 4y ago modified 3y ago also RUSTSEC-2022-0043
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
`tower_http::services::fs::ServeDir` didn't correctly validate Windows paths, meaning paths like `/foo/bar/c:/windows/web/screen/img101.png` would be allowed and respond with the contents of `c:/windows/web/screen/img101.png`. Thus users could potentially read files anywhere on the filesystem.
This only impacts Windows. Linux and other unix likes are not impacted by this.
See [tower-http#204] for more details.
[tower-http#204]: https://github.com/tower-rs/tower-http/pull/204
Patch / fix
Is GHSA-qrqq-9c63-xfrg in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerAffected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | tower-http | >=0.2.0, <0.2.1 <0.1.3 >=0.0.0-0, <0.1.3 |
0.2.1 0.1.3 |
References
-
github.com
/tower-rs/tower-http/pull/204
web
-
github.com
/tower-rs/tower-http
package
-
rustsec.org
/advisories/RUSTSEC-2022-0043.html
web, advisory
-
crates.io
/crates/tower-http
package
Sources
- GitHub Advisory GHSA-qrqq-9c63-xfrg
- OSV RUSTSEC-2022-0043
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.