Opened 3 years ago
Closed 3 years ago
#1487036 closed Bugs (fixed)
Race condition in login can cause credentials to be stored in browser history
| Reported by: | bca | Owned by: | |
|---|---|---|---|
| Priority: | 3 | Milestone: | 0.5-beta |
| Component: | User Interface | Version: | 0.4.1 |
| Severity: | major | Keywords: | |
| Cc: |
Description
If you type in your credentials on the login-page, press enter to log in and click the login button fast enough then you get an aborted request in your browser that sits in the history with your login credentials ready to use if you go back through the browser history. The aborted request circumvents the redirect roundcube does to clear away the credentials.
Change History (3)
comment:1 Changed 3 years ago by alec
- Milestone changed from later to 0.5-beta
comment:2 Changed 3 years ago by bca
Both...
That browsers store inputs of type=password is of course some of the problem, but depending on how much time roundcube uses from the POST to the browser gets the redirect back this is something that could happen a lot or never. First time I ran into it I did some testing with javascipt off and nothing happened when i pressed return (or at least so it seemd for a few seconds) so i clicked login. I gueess some of this can be prevented by ensuring the first POST returns the redirect as fast as possible, maybe doing the actual authentication later than in the first POST request, or maybe disabling the login-button once the form is submitted...
comment:3 Changed 3 years ago by alec
- Resolution set to fixed
- Status changed from new to closed
I think [effdb3c0] should fix this.

I don't understand this. Is this Roundcube or browser issue? What we can do? Doing this "double login" I've observed an issue (maybe different that yours). Messages list is empty after such login.