Cisco udostępniło darmowy pakiet antywirusowy ClamAV 1.0.0

Firma Cisco wprowadziła dużą nową wersję bezpłatnego pakietu antywirusowego ClamAV 1.0.0. Nowa gałąź wyróżnia się przejściem do tradycyjnej numeracji wydań „Major.Minor.Patch” (zamiast 0.Version.Patch). Znacząca zmiana wersji wynika również ze zmian w bibliotece libclamav, które łamią kompatybilność z ABI poprzez usunięcie przestrzeni nazw CLAMAV_PUBLIC, zmianę typu argumentów w funkcji cl_strerror oraz włączenie symboli języka Rust do przestrzeni nazw. Projekt przeszedł w ręce Cisco w 2013 roku po zakupie firmy Sourcefire, która rozwija ClamAV i Snort. Kod projektu jest rozpowszechniany na licencji GPLv2.

Gałąź 1.0.0 jest sklasyfikowana jako wsparcie długoterminowe (LTS) i jest utrzymywana przez trzy lata. Wydanie ClamAV 1.0.0 zastąpi poprzednią gałąź LTS ClamAV 0.103, dla której aktualizacje z poprawkami dla luk i krytycznych problemów będą wydawane do września 2023 roku. Aktualizacje dla zwykłych oddziałów innych niż LTS są publikowane co najmniej 4 miesiące po pierwszym wydaniu następnego oddziału. Możliwość pobrania bazy sygnatur dla oddziałów non-LTS przewidziana jest również przez co najmniej kolejne 4 miesiące po wydaniu kolejnego oddziału.

Kluczowe ulepszenia w ClamAV 1.0:

  • Dodano obsługę odszyfrowywania plików XLS opartych na OLE2, tylko do odczytu, zaszyfrowanych domyślnym hasłem.
  • Kod został przepisany z zaimplementowaniem trybu all-match, w którym określane są wszystkie dopasowania w pliku, tj. skanowanie jest kontynuowane po pierwszym dopasowaniu. Nowy kod jest oznaczony jako bardziej niezawodny i łatwiejszy w utrzymaniu. Nowa implementacja eliminuje również szereg błędów koncepcyjnych, które pojawiają się podczas sprawdzania podpisów w trybie all-match. Dodano testy sprawdzające poprawność zachowania w całym meczu.
  • Do interfejsu API dodano wywołanie zwrotne clcb_file_inspection() w celu połączenia procedur obsługi sprawdzających zawartość plików, w tym wyodrębnionych z archiwów.
  • Funkcja cl_cvdunpack() została dodana do API do rozpakowywania archiwów sygnatur w formacie CVD.
  • Skrypty do budowania obrazów dokerów za pomocą ClamAV zostały przeniesione do osobnego repozytorium clamav-docker. Obraz dokera zawiera pliki nagłówkowe dla biblioteki C.
  • Dodano kontrole ograniczające poziom rekurencji podczas wyodrębniania obiektów z dokumentów PDF.
  • Zwiększono limit ilości pamięci przydzielanej podczas przetwarzania niezaufanych danych wejściowych, a po przekroczeniu tego limitu generowane jest ostrzeżenie.
  • Znacząco przyspieszono montaż testów jednostkowych dla biblioteki libclamav-Rust. Moduły ClamAV napisane w Rust są teraz budowane w katalogu współdzielonym z ClamAV.
  • Złagodzone zostały ograniczenia podczas sprawdzania nakładających się rekordów w plikach ZIP, co pozwoliło pozbyć się fałszywych ostrzeżeń podczas przetwarzania nieco zmodyfikowanych, ale nie złośliwych archiwów JAR.
  • Kompilacja definiuje minimalną i maksymalną obsługiwaną wersję LLVM. Próba skompilowania ze zbyt starą lub zbyt nową wersją spowoduje teraz wyświetlenie ostrzeżenia o błędzie dotyczącego problemów ze zgodnością.
  • Dozwolone jest budowanie z własną listą RPATH (lista katalogów, z których ładowane są biblioteki współdzielone), co umożliwia przeniesienie plików wykonywalnych w inne miejsce po zbudowaniu w środowisku deweloperskim.

Źródło: opennet.ru

Dodaj komentarz