]> granicus.if.org Git - postgresql/commit
Fix detection of passwords hashed with MD5
authorMichael Paquier <michael@paquier.xyz>
Wed, 24 Apr 2019 00:05:30 +0000 (09:05 +0900)
committerMichael Paquier <michael@paquier.xyz>
Wed, 24 Apr 2019 00:05:30 +0000 (09:05 +0900)
commit20dbc84bd002c5ef2b5439ac29b6a5b24b0a3d69
treee374af3ac066d6d19f2801af960ac4bf17217d7f
parent74589026f79f68a0109200d4c7fa227f82e65c08
Fix detection of passwords hashed with MD5

This commit fixes an issue related to the way password verifiers hashed
with MD5 are detected, leading to possibly detect that plain passwords
are legit MD5 hashes.  A MD5-hashed entry was checked based on if its
header uses "md5" and if the string length matches what is expected.
Unfortunately the code never checked if the hash only used hexadecimal
characters after the three-character prefix.

Fix 9.6 down to 9.4, where this code is present.  This area of the code
has changed in 10 and upwards with the introduction of SCRAM, which led
to a different fix committed as of ccae190.

Reported-by: Tom Lane
Author: Michael Paquier
Reviewed-by: Jonathan Katz
Discussion: https://postgr.es/m/016deb6b-1f0a-8e9f-1833-a8675b170aa9@postgresql.org
Backpatch-through: 9.4
src/include/libpq/md5.h