Po ośmiu miesiącach prac opublikowano wydanie serwera pocztowego Exim 4.98, które zawiera zaktualizowane poprawki oraz nowe funkcje. Kod projektu napisano w języku C i jest udostępniany na licencji GPLv2+. Zgodnie z czerwcowym automatycznym badaniem około 400 tysięcy serwerów pocztowych, udział Exim wynosi 59,06% (rok temu 55,93%), Postfix ma 34,68% (37,40%), Sendmail – 3,42% (3,45%), MailEnable – 1,81% (1,86%), MDaemon – 0,37% (0,48%), Microsoft Exchange – 0,17% (0,25%).
Główne zmiany:
- Usunięto lukę (CVE-2024-39929) spowodowaną nieprawidłowym parsowaniem nazw plików w załącznikach pocztowych. Luka ta pozwala obejść filtry wykorzystujące zmienną $mime_filename i umożliwia przesyłanie plików wykonywalnych w załącznikach, mimo ich zablokowania w ustawieniach.
- W ACL stosowanym do danych, zmiennych komendą DATA, zezwolono na wykorzystanie warunku dkim_status, co pozwala ocenić wynik weryfikacji za pomocą mechanizmu DKIM (DomainKeys Identified Mail).
- Po włączeniu ustawienia dkim_verbose, które rejestruje dodatkowe informacje diagnostyczne dotyczące działania DKIM, zapewniono wyodrębnienie informacji o cyfrowych podpisach.
- W opcji dkim_timestamps, która zarządza dodaniem informacji o czasie do podpisu, zezwolono na wskazanie wartości „0” w celu dodania bieżącego czasu.
- W opcji recipients_max, która określa limit liczby odbiorców dla jednej wiadomości, zezwolono na użycie substytucji i szablonów.
- Podczas testowania wyrażeń za pomocą komendy „exim -be” wprowadzono możliwość ustawienia wartości zanieczyszczonych (wartości uzyskane z zewnątrz, na przykład ustawione przez nadawcę wiadomości).
- Dodano wsparcie dla przetwarzania i rejestrowania zdarzenia „dns:fail”, które występuje przy niepowodzeniu zapytania do list DNSBL.
- W blokach lookupu dsearch dodano wsparcie dla wyszukiwania po niepełnej ścieżce pliku („${lookup {foo/bar} dsearch,key=path {/etc}}”).
- Zawiera narzędzie mailtest do sprawdzania i diagnostyki połączeń SMTP.
- Zrealizowano wsparcie dla rozszerzenia SMTP WELLKNOWN, dzięki któremu serwer SMTP może przekazywać klientowi publiczne informacje, na przykład dane kontaktowe lub parametry weryfikacji przy odbiorze. certyfikatu TLS, wykorzystując protokół ACME.
- Dodano możliwość korzystania z SQLite3 do przechowywania wewnętrznych baz danych, oprócz DBD, NDB, GBDM i TDB. Aby skorzystać z SQLite3, przed kompilacją w Local/Makefile należy wskazać „USE_SQLITE = y” oraz „DBMLIB = -lsqlite3”.
Źródło: opennet.ru
