-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Path traversal in /static
responder when running in debug mode
#270
Comments
This is best handled upstream, I opened pyrossh/rust-embed#159 Might as well keep this open until the code here is no longer vulnerable, though. |
Nice find! I'm both surprised and not surprised that they didn't think of this. It's exactly the kind of thing that one should worry about, but also, most user agents normalize |
I opened #271 with some thoughts for things we could do on our end. |
By the way, rust-embed fixed this, so you should put out a release that depends on 6.3.0, see the linked issue pyrossh/rust-embed#159 |
Since this is a security issue, reopening until we have a new release with the fix. |
Just published v0.1.2 and tested it locally, and this is fixed. On a vulnerable version, you can get the readme me when serving files out of the
On 0.1.2 this returns a 404. Thanks again, @5225225, for finding this. How did you think to look for it? |
I was mainly going through reddit posts on /r/rust looking for people who posted about web services then looked at the router expecting to find either a fun path traversal, or some lack of authentication / denial of service. I mainly fuzz crates (see: massive list of issues / PRs related to that) but thought i'd try my hand at reviewing a web project. |
Steps to reproduce:
cargo run -- --directory tmp --http-port 1234
curl --path-as-is https://localhost:1234/static/../../../../../../../../etc/passwd
/etc/passwd
The text was updated successfully, but these errors were encountered: