Як зловити вірус у запароленому архіві, SavePearlHarbor
Ще одна копія хабора
Головне меню
Навігація за записами
Як зловити вірус у запароленому архіві
Прочитавши статтю rattlersnake А твій антивірус ловить запаролені архіви? я пройшов стадії від зневіри через сумнів до розчарування і назад до розуміння.

Перевірений файл info.exe був знайдений за хешем з VirusTotal і запакований архіватором WinRar у три архіви: zip, rar та rar версії 5.
На всі архіви було встановлено складний пароль для виключення його вибору антивірусом або використання стандартних паролів. На мій подив, антивірус Fortinet спрацював на архівах zip та rar, але не спрацював на rar5!

Намагаючись зрозуміти, що впливає на спрацювання антивірусу, я змінив один байт у файлі і знову запакував його в архіви з паролем. Після перевірки на мене чекав інший сюрприз - хоча детект вірусу в архіві зник (0/53), зник детект цим антивірусом і невпакованого файлу, хоча більшість інших антивірусів продовжували його бачити (35/52)!
І тут мені на думку прийшла чудова ідея:
-
Дивимося, які властивості файлу доступні в архіві – і бачимо контрольну суму CRC32:

Бінґо! Fortinet тепер вважає, що в архіві міститься вірус (1/52).

Перевіряємо про всяк випадок і exe файл, що вийшов - і бачимодивний результат – Fortinet продовжує знаходити у файлі вірус. Схоже, він детектує його виключно за CRC32!

Так, схоже, чудес не буває, і справжній детект вірусу в запароленому архіві неможливий.
З іншого боку, враховуючи, що Fortinet займається програмно-апаратними комплексами мережевої безпеки, і мета — не пропустити листа зі шкідливим вкладенням, такий підхід має право на життя.
Якщо ми знаємо CRC32 шкідливого файлу, буде не зайвим попередити користувача, коли файл знайдеться в архіві з паролем.