Компания Cisco представи ново съществени издание на свободния антивирусен пакет ClamAV 0.105.0 и публикува коригиращи версии ClamAV 0.104.3 и 0.103.6 с поправки на уязвимости и грешки. Припомняме, че проектът премина в ръцете на Cisco през 2013 година след покупката на компанията Sourcefire, развиваща ClamAV и Snort. Кодът на проекта се разпространява под лиценз GPLv2.
Ключови подобрения в ClamAV 0.105:
- В списъка на задължителните зависимости за компилиране е добавен компилатор за езика Rust. За компилиране е необходима поне версия Rust 1.56. Необходимите библиотеки-зависимости на езика Rust са включени в основния пакет ClamAV.
- Кодът за инкрементално обновление на архива на базата данни (CDIFF) е пренаписан на езика Rust. Новата реализация значително ускори прилагането на обновления, които премахват много сигнатури от базата. Това е първият модул, пренаписан на Rust.
- Увеличени са зададените по подразбиране стойности на лимитите:
- MaxScanSize: 100M > 400M
- MaxFileSize: 25M > 100M
- StreamMaxLength: 25M > 100M
- PCREMaxFileSize: 25M > 100M
- MaxEmbeddedPE: 10M > 40M
- MaxHTMLNormalize: 10M > 40M
- MaxScriptNormalize: 5M > 20M
- MaxHTMLNoTags: 2M > 8M
- Максималният размер на реда в конфигурационните файлове freshclam.conf и clamd.conf е увеличен от 512 на 1024 символа (при указване на токените за достъп параметърът DatabaseMirror може да надвишава 512 байта).
- За определяне на изображения, използвани за фишинг или при разпространение на злонамерен софтуер, е реализирана поддръжка на нов тип логически сигнатури, в които се използва метод на неясно хеширане (fuzzy hashing), позволяващ идентифицирането на подобни обекти с определена степен вероятност. За генериране на неясен хеш за изображение може да се използва командата „sigtool —fuzzy-img”.
- В ClamScan и ClamDScan е вградена функционалност за сканиране на паметта на процесите. Тази функционалност е пренесена от пакета ClamWin и е специфична за платформата Windows. В ClamScan и ClamDScan на платформата Windows са добавени опциите „—memory“, „—kill“ и „—unload“.
- Обновени са компоненти за изпълнение на байткод, базирани на LLVM. За увеличаване на производителността на сканирането в сравнение с предлагания по подразбиране интерпретатор на байткод е предложен режим на JIT-компилация. Поддръжката на по-стари версии на LLVM е прекратена, сега можете да използвате версии на LLVM от 8 до 12.
- В Clamd е добавена настройка GenerateMetadataJson, еквивалентна на опцията «—gen-json» в clamscan и водеща до запис в файл metadata.json на метаданни за хода на сканирането във формат JSON.
- Предоставена е възможност за компилиране с помощта на външната библиотека TomsFastMath (libtfm), която се включва чрез опциите «-D ENABLE_EXTERNAL_TOMSFASTMATH=ON», «-D TomsFastMath_INCLUDE_DIR=» и «-D TomsFastMath_LIBRARY=». Включената копия на библиотеката TomsFastMath е актуализирана до версия 0.13.1.
- В утилитата Freshclam е подобрено поведението при обработка на таймаута ReceiveTimeout, който сега прекъсва само зациклилите изтегляния и не прекъсва активните бавни изтегляния при предаване на данни по лоши канали.
- Добавена е поддръжка за компилиране на ClamdTop с помощта на библиотеката ncursesw в случаи, когато ncurses не е налична.
- Устранени уязвимости:
- CVE-2022-20803 — двойно освобождаване на паметта в парсера на OLE2 файлове.
- CVE-2022-20770 — безкрайно зацикляне в парсера на CHM файлове.
- CVE-2022-20796 — аварийно завършване поради разименуване на нулев указател в кода за проверка на кеша.
- CVE-2022-20771 — безкрайно зацикляне в парсера на TIFF файлове.
- CVE-2022-20785 — изтичане на памет в парсера на HTML и нормализатора Javascript.
- CVE-2022-20792 — препълване на буфера в модула за зареждане на базата на сигнатури.
Източник: opennet.ru
