Re: undocumented changed behavior of 2.4.3 (possible bug report)
Patrick Cernko via dovecot <[email protected]> Wed, 20 May 2026 16:36:15 +0200
| Newsgroups | gmane.mail.imap.dovecot |
|---|---|
| Organization | Information Services & Technology, Joint Administration, Max Planck Institute for Informatics & Max Planck Institute for Software Systems |
| Message-ID | <[email protected]> |
Hi List, Hi Aki, On 2026-04-21 13:46:49, Aki Tuomi via dovecot wrote: > For one, it's documented: > > https://doc.dovecot.org/2.4.3/core/config/auth/databases/ldap.html#ldap_base > > this is to avoid LDAP injection attack on authentication, CVE-2026-27860 > > But you're right, it should've been in the 2.4.x page. > > The matches change we have to check, matching was changed due to certain patterns causing assert crashes. > > Aki > >> On 21/04/2026 14:37 EEST Patrick Cernko via dovecot <[email protected]> wrote: >> >> >> 2. The behavior of sieve matches using ":matches" has changed: >> >> Example email (only the relevant header): >> List-Id: Dovecot Mailing List <dovecot.dovecot.org> >> >> Example Sieve script: >> if header :matches "List-Id" "*<dovecot*.dovecot.org>" { >> fileinto "dovecot"; >> } >> >> In 2.4.2 (and earlier) the example email matched the condition and got stored in the >> dovecot folder, while in 2.4.3 the condition does NOT match. As a workaround I added >> a '*' at the end of the match ("*<dovecot*.dovecot.org>*") to get my mails stored >> correctly again. >> >> Is this changed behavior for Sieve intentional or a bug? In case of a bug, could you >> please provide a fix? >> >> In case of intentional behavior: >> * Could you please explain the intention? Why was it necessary? >> * What would be the correct fix for the sieve example to match a List-Id header that >> ENDS WITH ".dovecot.org>"? >> * I assume, that other users on my servers will run into similar problems once I >> upgrade their servers. Is it possible to detect such problematic matches in Sieve >> scripts? E.g. "all matches without a trailing '*' are affected", ... >> This would give me a chance, to inform my users or even fix their scripts in advance. >> for the record: The mentioned changed behavior of sieve matches has been reverted in 2.4.4, as mentioned in the changelogs: > - lib-sieve: matches - Fix trailing literal match when it fills value exactly. > v2.4.3 regression. At least my specific case now works as before 2.4.3 again. Thank you for the fix! -- Patrick Cernko <[email protected]> +49 681 9325 5815 Joint Scientific IT and Technical Service Max-Planck-Institute für Informatik & Softwaresysteme _______________________________________________ dovecot mailing list -- [email protected] To unsubscribe send an email to [email protected]