4. Проверка архива и распаковка
Суть этапа
В 0.1.0 проверяем структуру архива и безопасно извлекаем содержимое в изоляции. Это начало одной задачи анализа; затем проверяем файлы антивирусом и статическими правилами. Антивирус не разрешает запуск сайта.
Как работает
- Исполнитель получает снимок из карантина и сверяет его хеш.
- В изоляции проверяет пути, ссылки, число файлов и допустимый объём распаковки.
- Извлекает файлы с контролем фактических лимитов и соответствия манифесту.
- В той же задаче передаёт дерево инструментам сканирования.
Не делаем отдельный полный антивирусный проход по нашему ZIP перед аналогичной проверкой извлечённых файлов. Вложенные архивы анализирует выбранный движок с лимитами глубины, размера и времени. Архивы с паролем, неподдерживаемые форматы и пропуски не считаются полностью проверенными. Стартовые лимиты (4 GiB распаковки, 256 MiB на файл, 200 000 записей, сжатие до 200:1) считаются по фактически записанным байтам и заданы решением G04. ClamAV.
Возможные результаты общей задачи анализа
| Статус | Значение |
|---|---|
| Угрозы обнаружены | Есть сигналы для дальнейшего исследования |
| Угрозы не обнаружены | Нет срабатываний в проверенном содержимом |
| Проверка неполная | Часть содержимого осталась непроверенной |
| Ошибка | Проверка не завершилась |
Malware сохраняем в карантине: задача сервиса может состоять именно в лечении. Не удаляем исходник автоматически. Повреждённый архив, выход пути за каталог, опасные ссылки или превышение лимита распаковки останавливают обычную обработку. OWASP: обработка файлов.
Результат этапа
Есть протокол проверки структуры и допустимая для статического анализа распакованная копия либо явная причина остановки. Исходный архив не изменён.