Commit graph

12 commits

Author SHA1 Message Date
Dane Everitt
659c33f0e8
Fixes a bug that allows a user to bypass 2FA authentication requirements
This bug was reported to us by a user (@Ferry#1704) on Discord on
Monday, November 7th, 2016.

It was disclosed that it was possible to bypass the 2FA checkpoint by
clicking outside of the modal which would prompt the modal to close,
but not submit the form. The user could then press the login button
which would trigger an error. Due to this error being triggered the
authentication attempt was not cancelled. On the next page load the
application recognized the user as logged in and continued on to the
panel.

At no time was it possible to login without using the correct email
address and password.

As a result of this bug we have re-factored the Authentication code for
logins to address the persistent session. Previously accounts were
manually logged back out on 2FA failure. However, as this bug
demonstrated, causing a fatal error in the code would prevent the
logout code from firing, thus preserving their session state.

This commit modifies the code to use a non-persistent login to handle
2FA checking. In order for the session to be saved the application must
complete all portions of the login without any errors, at which point
the user is persistently authenticated using Auth::login().

This resolves the ability to cause an exception and bypass 2FA
verification.
2016-11-07 15:55:57 -05:00
Dane Everitt
3df694b618 Update theme support 2016-02-05 23:27:43 -05:00
DDynamic
192498e51a Internal Themes 2016-02-04 18:19:31 -06:00
Dane Everitt
94f5bf0862 fixes error display on login form; closes #46 2016-01-25 19:21:26 -05:00
Dane Everitt
c81bc37865 Why this was a problem is beyond me.
For some reason blade got really upset on a development machine because
of these comments. Doing individual lines fixes it.
2016-01-23 21:30:03 -05:00
Dane Everitt
026df6a36f Relicense project under MIT
Permission obtained from @DDynamic. Contributions from other users were
removed since we did not obtain permission from them for the re-license.

From this point forward all contributors must have a signed Contributor
License Agreement on file.
2016-01-20 15:56:40 -05:00
Dane Everitt
ac8d31d6d6 Fix login form width 2016-01-10 16:17:27 -05:00
Dane Everitt
1a55532f95 Template adjustments 2016-01-04 16:48:22 -05:00
BlameDylan
e927505788 Fix TOTP AJAX 2015-12-13 19:06:42 -06:00
Dane Everitt
288ee1a258 Improved TOTp handling in login.
Cleaned up the code a bit, also checks TOTP before attemping to verify
user.

This addresses the potential for an attacker to try at a password
and/or confirm that the password is correct unless they have a valid
TOTP code for the request. A failed TOTP response will trigger a
throttle count on the login as well.
2015-12-10 21:58:17 -05:00
BlameDylan
4585753d04 Implement Two-factor authentication 2015-12-10 19:40:59 -06:00
Dane Everitt
1489f7a694 Initial Commit of Files
PufferPanel v0.9 (Laravel) is now Pterodactyl 1.0
2015-12-06 13:58:49 -05:00