Opened 3 years ago

Last modified 8 months ago

#11813 new defect (bug)

Post password stored as plaintext

Reported by: ericmann Owned by: ryan
Priority: normal Milestone: Future Release
Component: Security Version: 2.9.1
Severity: normal Keywords: post-password
Cc: ericmann

Description

When a user specifies a password for a protected post it's stored as plaintext in the database. Considering the rate at which people recycle personal passwords, does this open a user's site to potential security risks?

While not necessarily our responsibility, this would raise issues if they use the same password for a login and for their protected posts.

Change History (7)

  • Milestone changed from Unassigned to Future Release

I see no harm in doing at least a simple md5() on the password. (It shouldn't be the same hashing function used for user passwords)

As suggested for private posts in #11695, it might be nice to move password stuff into a "canonical" plugin. Currently it's pretty hacky.

Or better, I should link to #11697

comment:4 follow-up: ↓ 5   nacin8 months ago

Perhaps we can block post passwords if when hashed it is the same as their user password...

comment:5 in reply to: ↑ 4   ericmann8 months ago

Replying to nacin:

Perhaps we can block post passwords if when hashed it is the same as their user password...

That would be an excellent short-term solution that would increase security (protect users from themselves, really). But I'm still somewhat uncomfortable storing anything that resembles a password in plaintext.

comment:6 follow-up: ↓ 7   nacin8 months ago

It's something that is designed to be shared, so storing it hashed is pretty much a no-go. People will need to refer to it, change it, etc. There is a reason why we store it in a type=text field, rather than type=password. That alone should probably scare most people away from entering a full password.

Perhaps calling it something other than a "password" would also help, but that ship has sailed.

comment:7 in reply to: ↑ 6   ericmann8 months ago

Replying to nacin:

It's something that is designed to be shared, so storing it hashed is pretty much a no-go.

Good point.

Perhaps calling it something other than a "password" would also help, but that ship has sailed.

Perhaps we could rename it in a future release? It won't be the first time we've renamed a feature. (Admin bar => toolbar)

Note: See TracTickets for help on using tickets.