Details
-
Improvement
-
Resolution: Fixed
-
Major
-
None
-
Unknown
-
Description
XWiki stores user passwords using a single iteration of SHA-512 with a unique random salt. SHA512 is not
suitable for storing passwords. Instead Argon2id, scrypt, bcrypt, or PBKDF2 should be used.
Risk
Cracking salted SHA512 hashes on modern GPUs has become a viable attack scenario. If the password hashes are
ever leaked an attacker could brute-force them given enough time and resources.
Proof
- The default hash algorithm is SHA512, which is only hashed once.
- https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/objects/classes/PasswordClass.java#L60
- https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/objects/classes/PasswordClass.java#L297
Attachments
Issue Links
- is related to
-
XWIKI-14406 Database password is not escaped in the generated hibernate.cfg.xml in debian installer
-
- Closed
-
-
XWIKI-22257 Hash the superadmin password
-
- Closed
-
-
XWIKI-23827 Store password properties in dedicated table
-
- Closed
-