Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delay network errors to prevent port scanning #338

Open
annevk opened this issue Jul 21, 2016 · 3 comments
Open

Delay network errors to prevent port scanning #338

annevk opened this issue Jul 21, 2016 · 3 comments
Labels
security/privacy There are security or privacy implications

Comments

@annevk
Copy link
Member

annevk commented Jul 21, 2016

See https://www.ietf.org/proceedings/96/slides/slides-96-saag-1.pdf for details.

I'm not entirely sure what the best way to do this is. Perhaps just include a recommendation somewhere that all network errors are delayed to make port scanning harder.

(Note that although the slides mention WebSocket, it's likely to be more generally applicable.)

Reportedly Firefox already throttles network errors.

@annevk annevk added the security/privacy There are security or privacy implications label Jul 22, 2016
@mcmanus
Copy link

mcmanus commented Jul 22, 2016

as I mentioned at the mic - there are positive use cases involving errors that need to be included in the analysis here.. failover, etc.

happy-eyeballs looks a lot like port scanning.

and its not enough to delay errors.. you need to make errors and success operate in a fixed time as some errors are faster than success (TCP RST) and some are slower (unbound ports that don't generate ICMP) and the definition of how long success takes covers the range of about 1ms to 2000ms.

not an easy problem - perhaps not worthwhile?

@annevk
Copy link
Member Author

annevk commented Jul 22, 2016

@mcmanus @mnot mentioned Firefox already has mitigations, is that not the case? I think at the very least we should acknowledge the existence of this problem in the security section and maybe also mention https://en.wikipedia.org/wiki/Happy_Eyeballs and such as to why it's a non-trivial problem.

@mcmanus
Copy link

mcmanus commented Jul 22, 2016

The linked presentation specifically talks about websockets and the rate limits built into that spec - and then talks about workers being able to bypass the rate limit - Firefox doesn't allow that (because the limit is global).

But that's a small detail - the issue, to the extent this is an issue at all, is much broader that websockets.

I'm not convinced this is a huge exposure, but its certainly worth a little text explaining what same-origin protects you against and what it doesn't.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
security/privacy There are security or privacy implications
Development

No branches or pull requests

2 participants