ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Cisco ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ Π½ΠΎΠ²ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΈΡ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ ClamAV 1.0.0. ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½Π° Ρ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ΡΠΎ ΠΊΡΠΌ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½Π°ΡΠ° Π½ΡΠΌΠ΅ΡΠ°ΡΠΈΡ Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΡΡΠ° βMajor.Minor.Patchβ (Π²ΠΌΠ΅ΡΡΠΎ 0.Version.Patch). ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π΅ ΡΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΠΎΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libclamav, ΠΊΠΎΠΈΡΠΎ Π½Π°ΡΡΡΠ°Π²Π°Ρ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ° Π½Π° ABI Π½ΠΈΠ²ΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ ΠΎΡ ΠΈΠΌΠ΅Π½Π° CLAMAV_PUBLIC, ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° cl_strerror ΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ ΠΎΡ ΠΈΠΌΠ΅Π½Π° Π·Π° Π΅Π·ΠΈΠΊΠ° Rust. ΠΡΠΎΠ΅ΠΊΡΡΡ ΠΏΡΠ΅ΠΌΠΈΠ½Π° Π² ΡΡΡΠ΅ΡΠ΅ Π½Π° Cisco ΠΏΡΠ΅Π· 2013 Π³. ΡΠ»Π΅Π΄ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡΠ° Sourcefire, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ° ClamAV ΠΈ Snort. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π· GPLv2.
ΠΠ΅ΡΡΠΈΡ 1.0.0 Π΅ ΠΊΠ»Π°ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π° ΠΊΠ°ΡΠΎ LTS (Long Term Support) ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Ρ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° Π² ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ClamAV 1.0.0 ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈ ΠΏΡΠ΅Π΄ΠΈΡΠ½Π°ΡΠ° LTS Π²Π΅ΡΡΠΈΡ ClamAV 0.103, Π·Π° ΠΊΠΎΡΡΠΎ ΡΠ΅ ΡΠ΅ ΠΏΡΡΠΊΠ°Ρ ΡΠΏΠ΄Π΅ΠΉΡΠΈ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΊΡΠΈΡΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π΄ΠΎ ΡΠ΅ΠΏΡΠ΅ΠΌΠ²ΡΠΈ 2023 Π³ΠΎΠ΄ΠΈΠ½Π°. ΡΠΏΠ΄Π΅ΠΉΡΠΈΡΠ΅ Π·Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΡΠ°ΡΡ ΠΎΡ LTS, ΡΠ΅ ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Ρ ΠΏΠΎΠ½Π΅ Π² ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° 4 ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ»Π΅Π΄ ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΡΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° Π±Π°Π·Π°ΡΠ° Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π·Π° Π½Π΅-LTS Π²Π΅ΡΡΠΈΠΈ ΡΡΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΠΎΠ½Π΅ ΠΎΡΠ΅ 4 ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ»Π΅Π΄ ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ.
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ClamAV 1.0:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΌΠΎ-ΡΠ΅ΡΠ΅ΡΠΈ XLS ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° OLE2, ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈ Ρ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΏΠ°ΡΠΎΠ»Π°.
- ΠΠΎΠ΄ΡΡ Π΅ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠ° all-match, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ Π²ΡΠΈΡΠΊΠΈ ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°, Ρ.Π΅. ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° ΡΠ»Π΅Π΄ ΠΏΡΡΠ²ΠΎΡΠΎ ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅. ΠΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ΄ Π΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ ΠΊΠ°ΡΠΎ ΠΏΠΎ-Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ ΠΈ ΠΏΡΠΎΡΡ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°. Π Π½ΠΎΠ²Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠΎ Π΅ ΡΡΡΡΠ°Π½Π΅Π½Π° ΠΏΠΎΡΠ΅Π΄ΠΈΡΠ° ΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»Π½ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ, ΠΏΡΠΎΡΠ²ΡΠ²Π°ΡΠΈ ΡΠ΅ ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π² ΡΠ΅ΠΆΠΈΠΌΠ° all-match. ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π΅ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ all-match.
- Π API Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ callback-Π²ΠΈΠΊ clcb_file_inspection() Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠΈ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈ ΠΎΡ Π°ΡΡ ΠΈΠ²ΠΈ.
- Π API Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ cl_cvdunpack() Π·Π° ΡΠ°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π½Π° Π°ΡΡ ΠΈΠ²ΠΈ Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π²ΡΠ² ΡΠΎΡΠΌΠ°Ρ CVD.
- Π‘ΠΊΡΠΈΠΏΡΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Docker ΠΎΠ±ΡΠ°Π·ΠΈ Ρ ClamAV ΡΠ° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅Π½ΠΈ Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ clamav-docker. Π Docker ΠΎΠ±ΡΠ°Π·Π° ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π·Π°Π³Π»Π°Π²Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° C Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° ΡΠ΅ΠΊΡΡΡΠΈΡ ΠΏΡΠΈ ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈ ΠΎΡ PDF Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ.
- ΠΠΎΠ²ΠΈΡΠ΅Π½ Π΅ Π»ΠΈΠΌΠΈΡΡΡ Π·Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΎΡΠ΄Π΅Π»ΡΠ½Π° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π½Π΅Π΄ΠΎΠ²Π΅ΡΠΈΡΠ΅Π»Π½ΠΈ Π²Ρ ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΈ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π½Π°Π΄Π²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠΎΠ·ΠΈ Π»ΠΈΠΌΠΈΡ.
- Π‘Π΅ΡΠΈΠΎΠ·Π½ΠΎ Π΅ ΡΡΠΊΠΎΡΠ΅Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π½Π° unit ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libclamav-Rust. ΠΠΎΠ΄ΡΠ»ΠΈΡΠ΅, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π½Π° Rust Π·Π° ClamAV, Π²Π΅ΡΠ΅ ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΠΎΠ±ΡΠ° Ρ ClamAV.
- ΠΠ±Π»Π΅ΠΊΡΠ΅Π½ΠΈ ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡΠ° ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ ΡΠΎΡΠΌΠ°Ρ ZIP, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅Π³Π½Π°Ρ ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΌΠ°Π»ΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈ, Π½ΠΎ Π½Π΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΈ JAR Π°ΡΡ ΠΈΠ²ΠΈ.
- ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π°ΡΠ° ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° LLVM. ΠΠΏΠΈΡΡΡ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Ρ ΡΠ²ΡΡΠ΄Π΅ ΡΡΠ°ΡΠ° ΠΈΠ»ΠΈ ΡΠ²ΡΡΠ΄Π΅ Π½ΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Π²Π΅ΡΠ΅ ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠ° Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΡΡ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ°.
- Π Π°Π·ΡΠ΅ΡΠ΅Π½Π° Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΡΠΏΠΈΡΡΠΊ RPATH (ΡΠΏΠΈΡΡΠΊ Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°Ρ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ), ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π΄ΡΡΠ³ΠΎ ΠΌΡΡΡΠΎ ΡΠ»Π΅Π΄ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π² ΡΡΠ΅Π΄Π° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
