fix make scrambled password segmentation fault bug when password longer than 26 characters#91
Conversation
…er than 26 characters
|
Thanks for your PR. I'm creating a test to cover this issue and will then merge the patch. |
|
Further to this - I'm wondering whether we should actually keep this code; the 323 method was proven insecure a long, long time ago. What use it is nowadays? |
Well, you're right. This algorithm insecure so mysql drop it long time ago. |
|
Thanks for the reply. I guess it's time to encourage them to move on to something that's actually secure then. I'll add a new flag to the meson configuration to enable deprecated algorithms and make this (and other insecure ones) deprecated and disabled by default. |
|
Maybe we can trigger a notice into syslog mentioning this algo is insecure, nudging people to migrate to a more modern alternative? Sort as a first step towards deprecation. |
Comment
Hello,
I found a segmentation fault bug when use long long password(longer than 26 characters. like 32) in make_scrambled_password function.
During create password by sha1, temporary variable h0 will set zero for clear.
But, for now, set zero to h0 until length of password .
h0 variable is just 20 bytes, but password can set 255 characters.
So if password is too long, I thing it will cleanup data even outside of the h0 variable range.
In this PR, make set zero h0 just for size of h0 for not occur segmentation fault.