Any Joomla 3, 4 or 5 site. Use the password reset funktion in site/frontend.
If you add the space at the end, then you receive the Mail and you can reset the password as expected.
User not found. No E-mail is send or in step #2 you can't reset your password because User not found
Testet with Joomla 3.10.12, Joomla! 3.10.13-elts , Joomla! 4.4 and Joomla! 5.0
PHP 8.1
MySQL 5.7 (J3+J4) (mamp)
MariaDB 11.1.2 (J5)
It seems that the space is not removed and the input is passed on to the database. This results in a SQL query like
SELECT * FROM #__users WHERE LOWER(email
) = LOWER(" your@input.here")
If you add the space at the end you get
SELECT * FROM #__users WHERE LOWER(email
) = LOWER("your@input.here ")
The second query will find your user because MySQL ignores the space.
All e-mail addresses should be processed with the PHP command trim().
Why is this important: We have many users who copy/paste their email into forms. Another source of error could be browser autofill.
Labels |
Added:
No Code Attached Yet
|
Labels |
Added:
bug
|
Labels |
Added:
Information Required
|
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2024-02-26 14:02:50 |
Closed_By | ⇒ | Hackwar |
How did you bypassed the browser's email validation?