Cisco on julkaissut uuden merkittävän version avoimen lähdekoodin virustorjuntaohjelmistostaan, ClamAV 1.0.0. Uusi haara on merkittävä siirtymisellään perinteiseen "Major.Minor.Patch"-julkaisunumerointiin (0.Version.Patch sijaan). Tämä merkittävä versiomuutos sisältää myös libclamav-kirjaston muutoksia, jotka rikkovat ABI-yhteensopivuuden poistamalla CLAMAV_PUBLIC-nimiavaruuden, muuttamalla cl_strerror-funktion argumenttityyppiä ja lisäämällä Rust-symboleja nimiavaruuteen. Cisco osti projektin vuonna 2013 ostettuaan Sourcefiren, ClamAV:n ja Snortin kehittäjän. Projektin koodi jaetaan GPLv2-lisenssillä.
1.0.0-haara on luokiteltu pitkäaikaisen tuen (LTS) haaraksi, ja tukea tarjotaan kolmen vuoden ajan. ClamAV 1.0.0 -julkaisu korvaa aiemman LTS-haaran, ClamAV 0.103:n, johon julkaistaan haavoittuvuuksia ja kriittisiä ongelmia korjaavia päivityksiä syyskuuhun 2023 asti. Tavallisten haarojen, joita ei ole luokiteltu LTS-haaroiksi, päivitykset julkaistaan vähintään neljä kuukautta seuraavan haaran ensimmäisen julkaisun jälkeen. Muiden kuin LTS-haarojen allekirjoitustietokantojen lataukset tarjotaan myös vähintään neljä kuukautta seuraavan haaran julkaisun jälkeen.
Tärkeimmät parannukset ClamAV 1.0:ssä:
- Lisätty tuki vain luku -tilassa olevien, oletussalasanalla salattujen OLE2-pohjaisten XLS-tiedostojen salauksen purkamiseen.
- Koodi kirjoitettiin uudelleen toteuttamaan all-match-tila, joka tunnistaa kaikki tiedoston osumat, mikä tarkoittaa, että skannaus jatkuu ensimmäisen osuman jälkeen. Uutta koodia pidetään luotettavampana ja helpompana ylläpitää. Uusi toteutus korjaa myös useita käsitteellisiä puutteita, jotka ilmenivät allekirjoituspohjaisen todennuksen aikana all-match-tilassa. Testejä on lisätty all-match-toiminnan oikeellisuuden varmistamiseksi.
- clcb_file_inspection()-takaisinkutsu on lisätty API:in tiedostojen, mukaan lukien arkistoista purettujen tiedostojen, sisällön tarkastavien käsittelijöiden yhdistämistä varten.
- cl_cvdunpack()-funktio on lisätty API:in CVD-muodossa olevien allekirjoitusarkistojen purkamista varten.
- Docker-levykuvien rakentamiseen ClamAV:lla käytettävät skriptit on siirretty erilliseen repositorioon nimeltä clamav-docker. C-kirjaston otsikot sisältyvät Docker-levykuviin.
- Lisätty tarkistuksia rekursion tason rajoittamiseksi PDF-dokumenteista objekteja poimittaessa.
- Epäluotettavien syöttötietojen käsittelyssä käytettävän muistin koon rajoitusta on nostettu, ja varoitus on näytetty, kun tämä raja ylitetään.
- libclamav-Rust-kirjaston yksikkötestien koonteja on nopeutettu merkittävästi. ClamAV:n Rust-moduulit rakennetaan nyt samaan hakemistoon kuin ClamAV.
- Olemme lieventäneet rajoituksia ZIP-tiedostojen päällekkäisten merkintöjen tarkistamisessa, mikä eliminoi vääriä positiivisia tuloksia käsiteltäessä hieman muokattuja, mutta ei-haitallisia JAR-arkistoja.
- Tuettujen LLVM-versioiden vähimmäis- ja enimmäismäärät määritellään nyt koontivaiheessa. Liian vanhalla tai liian uudella versiolla kääntäminen johtaa nyt yhteensopivuusongelmia koskevaan virheilmoitukseen.
- Oman RPATH-protokollan (hakemistoluettelo, josta jaetut kirjastot ladataan) avulla rakentaminen mahdollistaa suoritettavien tiedostojen siirtämisen eri sijaintiin kehitysympäristössä rakentamisen jälkeen.
Lähde: opennet.ru
