Koha-clms/opac
Fridolin Somers 57a9bf3ef2 Bug 26904: OPAC password recovery allows regexp in email
When using OPAC password recovery form, opac/opac-password-recovery.pl :
if one provides correct login and an email, there is a check that this email is one of patron's.

This check uses RegExp with case insensitive :
  if ( $email && !( any { /^$email$/i } @emails ) )

This is a security issue since one can simply enter '.*'.
Severity is normal because the login must be a correct.

I propose to use simple string compare with lowercase to be case insensitive.

Test plan :
1) Don't apply patch
2) Enable system preference 'OpacResetPassword'
3) Go to 'OPAC > Log in to your account > Forgot your password?'
4) Enter an existing userid or cardnumber and '.*' in 'Email'
5) The password recovery is created ! (check table 'borrower_password_recovery')
6) Apply patch
7) Enter an existing userid or cardnumber and '.*' in 'Email'
8) You get the message 'No account was found with the provided information.'
9) Enter an existing userid or cardnumber and in 'Email' the corresponding email but with different case
10) The password recovery is created (check table 'borrower_password_recovery')

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 904e926ba0)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2020-11-23 23:07:46 +00:00
..
clubs Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
errors Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
external/overdrive
…
rss
…
sci Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
sco Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
svc Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
ilsdi.pl Bug 24537: Tidy code 2020-04-06 11:01:03 +01:00
maintenance.pl
…
oai.pl
…
opac-ISBDdetail.pl Bug 18936: (follow-up) Fix tests, replace old get_onshelfholds_policy method 2020-02-04 09:56:25 +00:00
opac-MARCdetail.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-account-pay-paypal-return.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-account-pay-return.pl Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
opac-account-pay.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-account.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-addbybiblionumber.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-alert-subscribe.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-article-request-cancel.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-authorities-home.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-authoritiesdetail.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-basket.pl Bug 5087: (QA follow-up) Rename the attribute to fit later API usage 2020-07-30 17:01:53 +00:00
opac-blocked.pl
…
opac-browse.pl Bug 24545: Fix newly added files 2020-02-24 13:31:27 +00:00
opac-browser.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-changelanguage.pl Bug 21299: (QA follow-up) Rename module and subroutine 2018-11-07 21:52:17 +00:00
opac-course-details.pl
…
opac-course-reserves.pl
…
opac-detail.pl Bug 26133: Remove GetMarc* calls in detail.pl 2020-08-13 18:06:29 +00:00
opac-discharge.pl Bug 23723: using exit inside eval to stop sending output to browser doesn't work under plack 2019-10-07 12:21:30 +01:00
opac-downloadcart.pl Bug 5087: Add server-side check 2020-07-30 17:02:57 +00:00
opac-downloadshelf.pl Bug 5087: Add server-side check 2020-07-30 17:02:57 +00:00
opac-export.pl Bug 22075: Fix encoding problem with RIS export in OPAC 2019-04-11 11:47:17 +00:00
opac-ics.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-idref.pl
…
opac-illrequests.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-image.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-imageviewer.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-issue-note.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-library.pl Bug 13388: Add library pages to the OPAC 2020-05-04 09:11:03 +01:00
opac-main.pl Bug 26464: Code correction in opac-main when news_id passed 2020-10-16 15:03:14 +00:00
opac-memberentry.pl Bug 25769: Patron self modification triggers change request for date of birth to null 2020-07-10 15:22:32 +00:00
opac-messaging.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-modrequest-suspend.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-modrequest.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-mymessages.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-news-rss.pl
…
opac-overdrive-search.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-passwd.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-password-recovery.pl Bug 26904: OPAC password recovery allows regexp in email 2020-11-23 23:07:46 +00:00
opac-patron-consent.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-patron-image.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-privacy.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-ratings-ajax.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-ratings.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-readingrecord.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-recordedbooks-search.pl Bug 17602: Fix few minor QA issues 2018-10-01 13:56:56 +00:00
opac-registration-verify.pl Bug 23253: Fix OpacNavRight for self reg by email 2019-08-15 09:19:28 +01:00
opac-renew.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-reportproblem.pl Bug 4461: Use inbound_email_address to know if we display the dropdown list 2020-04-06 11:19:44 +01:00
opac-request-article.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-reserve.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-restrictedpage.pl Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
opac-retrieve-file.pl
…
opac-review.pl Bug 25340: Pass biblio object to OPAC comments template 2020-05-04 08:53:37 +01:00
opac-routing-lists.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-search-history.pl Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
opac-search.pl Bug 26070: Remove GoogleIndicTransliteration system preference 2020-08-06 20:39:07 +00:00
opac-sendbasket.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-sendshelf.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-serial-issues.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-shareshelf.pl Bug 22542: Force back button to display personal data 2019-05-02 13:43:48 +00:00
opac-shelves.pl Bug 25982: OPAC shelves RSS link output is xml 2020-08-06 20:14:08 +00:00
opac-showmarc.pl Bug 25009: Avoid leakages in opac-showmarc.pl 2020-04-27 10:44:10 +01:00
opac-showreviews.pl Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
opac-suggestions.pl Bug 24663: Remove authnotrequired if set to 0 2020-08-31 20:03:22 +00:00
opac-tags.pl Bug 23276: Do not display tag if pref TagsEnabled is off 2020-06-17 22:35:51 +00:00
opac-tags_subject.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-topissues.pl Bug 19991: use Modern::Perl in OPAC perl scripts 2018-08-30 13:40:32 +00:00
opac-user.pl Bug 26388: Do not show 'Renew all' or 'Renew selected' if no renewable items 2020-09-14 22:19:34 +00:00
tracklinks.pl Bug 23836: exit after output_error 2019-11-27 11:30:19 +00:00
unapi Bug 24052: Rename XSLT_Handler 2020-03-24 10:42:23 +00:00