Bug Report #1280

Auth ORM driver should clear autologin tokens on logout for security

Added by Francis Avila almost 3 years ago. Updated over 2 years ago.

Status:Closed Start date:
Priority:Urgent Due date:
Assignee:Kiall Mac Innes % Done:

100%

Category:Modules:Auth
Target version:2.3.3
Resolution: Points:

Description

The ORM driver only clears the autologin cookie on logout, but does not delete existing auth tokens.

Thus it is perfectly possible for someone malicious to reissue the cookie and login again without supplying credentials.

There are two ways to go with this, though:

"Logout" could mean "I do not want people to be able to log in to this account without supplying credentials."

It could also mean "I do not want people to be able to log in to this account from this computer/browser", so that autologin will still work on other places the user may have logged in.

The attached patch does the first if $destroy is set, otherwise the second.

delete_authtokens_logout.diff - Patch to delete autologin tokens from database on logout (866 Bytes) Francis Avila, 04/21/2009 10:14 pm

Associated revisions

Revision 4332
Added by Kiall Mac Innes over 2 years ago

Merged r4331 from trunk - refs #1280

Revision 4335
Added by Kiall Mac Innes over 2 years ago

fixes #1280 - part 2

History

Updated by Kiall Mac Innes over 2 years ago

  • Status changed from New to Assigned
  • Assignee set to Kiall Mac Innes

The supplied patch seems to be "abusing" the $destory param IMO by using it for an additional purpose.

$destory is intended for destroying the session, not for logging out of all pcs...

IMO, we should always delete the specific token from the database, and have an additional param to logout all pcs.

Updated by Kiall Mac Innes over 2 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

Applied in changeset r4331.

Also available in: Atom PDF