Skip to content
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

Security issues with hyper versions < 0.14.10 #262

Open
1c3t3a opened this issue Nov 10, 2021 · 3 comments
Open

Security issues with hyper versions < 0.14.10 #262

1c3t3a opened this issue Nov 10, 2021 · 3 comments

Comments

@1c3t3a
Copy link

1c3t3a commented Nov 10, 2021

Hi there! I am using the websocket crate in one of my projects and I got a hint that I am depending on hyper version 0.10.6, which is vulnerable to RUSTSEC-2021-0079 and RUSTSEC-2021-0078. As it turns out the dependency was introduced through this library. I've looked into this and a potential fix would be to bump the hyper version to >=0.14.10, but this would introduce quite a few changes to this library as hyper changed it's whole header API (and more).

@vi
Copy link
Member

vi commented Nov 10, 2021

It is hard to upgrade rust-websocket from hyper 0.10 to 0.12 (and I assume to further versions as well). Hyper got significant API redesign after 0.10.

Does tungstenite (or its async versions) suit your needs? If no, what rust-websocket features not present in tungstenite do you need? If yes, you should probably use tungstenite instead, as rust-websocket is almost unmaintained.


As for RUSTSEC-2021-0079 and RUSTSEC-2021-0078 specifically, I'm not sure those specific headers apply to Websockets. rust-websocket-only usage of Hyper 0.10 may or may not be vulnerable - needs additional research.

@1c3t3a
Copy link
Author

1c3t3a commented Nov 11, 2021

I See... Yeah we're thinking about switching to tokio-tungstenite (as explained in the other issue). But it would be nice to know if this introduces a risk for the users of rust-socketio. Where would I need to look it up in code if I want to find out?

@seanpianka
Copy link

In my case, I need websocket because headless_chrome is written using it. I assume the list of breaking changes between Hyper 0.10 and 0.15 is quite long though. I'll look into how much effort it'd be to port headless_chrome to tungstenite.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants