Cisco har presenterat en ny betydande version av den fria antiviruspaketet ClamAV 1.0.0. Den nya versionen Àr anmÀrkningsvÀrd för övergÄngen till det traditionella versionsnumreringssystemet "Major.Minor.Patch" (istÀllet för 0.Version.Patch). Den stora versionsskiftet beror ocksÄ pÄ Àndringar i libclamav-biblioteket som bryter med ABI-kompatibilitet pÄ grund av borttagandet av namnomrÄdet CLAMAV_PUBLIC, Àndringar av argumenttyper i funktionen cl_strerror och inkludering av namnkollisioner för Rust-sprÄket. Projektet övergick till Cisco 2013 efter förvÀrvet av Sourcefire, som utvecklar ClamAV och Snort. Projektkoden distribueras under GPLv2-licensen.
Version 1.0.0 klassificeras som en version med lÄngsiktig support (LTS), som kommer att stödjas i tre Är. Utgivningen av ClamAV 1.0.0 kommer att ersÀtta den tidigare LTS-versionen ClamAV 0.103, med uppdateringar för att ÄtgÀrda sÄrbarheter och kritiska problem som kommer att publiceras fram till september 2023. Uppdateringar för vanliga versioner som inte klassificeras som LTS publiceras i minst fyra mÄnader efter utgivningen av den första versionen av nÀsta version. Möjligheten att ladda ner signaturdatabasen för icke-LTS-versioner kommer ocksÄ att garanteras i minst ytterligare fyra mÄnader efter att nÀsta version har slÀppts.
NyckelförbÀttringar i ClamAV 1.0:
- Stöd för dekryptering av skrivskyddade XLS-filer baserade pÄ OLE2 som Àr lösenordsskyddade har lagts till.
- Koden har omskrivits för att implementera all-match-lÀget, dÀr alla trÀffar i en fil identifieras, dvs. skanningen fortsÀtter efter den första trÀffen. Den nya koden markeras som mer tillförlitlig och lÀttare att underhÄlla. Den nya implementationen har ocksÄ ÄtgÀrdat ett antal konceptuella brister som uppvisades vid signaturkontroll i all-match-lÀget. Tester har lagts till för att kontrollera korrektheten av all-match-beteende.
- Ett callback-anrop clcb_file_inspection() har lagts till API: et för att ansluta hanterare som utför inspektion av filinnehÄll, inklusive innehÄll som extraheras frÄn arkiv.
- En funktion cl_cvdunpack() har lagts till API: et för att packa upp signaturarkiv i CVD-format.
- Skript för att bygga Docker-images med ClamAV har flyttats till ett separat förrÄd clamav-docker. Headers för C-biblioteket ingÄr i Docker-imagen.
- Verifieringar har lagts till för att begrÀnsa rekursionsnivÄn vid extraktion av objekt frÄn PDF-dokument.
- GrÀnsen för mÀngden minne som tilldelas vid behandling av otillförlitliga indatan har ökat, och en varning skrivs ut om denna grÀns överskrids.
- Kompileringen av enhetstest för biblioteket libclamav-Rust har pÄtagligt snabbats upp. Moduler skrivna i Rust för ClamAV kompileras nu i en gemensam katalog med ClamAV.
- BegrÀnsningarna för att kontrollera överlappning av poster i ZIP-filer har mjukats upp, vilket eliminerar falska varningar vid behandling av nÄgot Àndrade men icke-skadliga JAR-arkiv.
- Vid kompilering har minimi- och maximalt stödda versioner av LLVM definierats. Försök att kompilera med en alltför gammal eller alltför ny version resulterar nu i ett felmeddelande med en varning om kompatibilitetsproblem.
- Egen kompilering med en specifik RPATH-lista (lista över kataloger dÀr delade bibliotek laddas frÄn) har tillÄtits, vilket gör det möjligt att flytta exekverbara filer till en annan plats efter kompilering i en utvecklingsmiljö.
KĂ€lla: opennet.ru
