- •I. Введение
- •II. Работа с инструментами диагностики и лечения
- •Описание HiJackThis и работа с ней
- •Вступление
- •Предупреждение
- •Назначение
- •Начало работы
- •Раздел Misc Tools.
- •Описание avz и работа с ней
- •Ключевые компоненты avz
- •Главное окно программы
- •Меню «Файл»: avz как единый инструмент
- •1. Функции анализа и восстановления
- •2. Функции скриптового движка
- •3. Обновление баз
- •4. Функции карантина
- •5. Отложенное удаление файла
- •Меню «Сервис»: диспетчеры и менеджеры avz
- •1. Общие характеристики диспетчеров и менеджеров avz
- •2. Подсистемы поиска
- •3. Прочие инструменты
- •AvzGuard
- •Boot Cleaner
- •III. Основы диагностики
- •1. Подготовка
- •2. Протокол hjt
- •3. Протоколы avz
- •Чтение протоколов HiJackThis
- •Анализ лога
- •Чтение протоколов avz
- •1. Цветовая схема
- •2. Состав таблиц
- •1) Список процессов (данные Диспетчера процессов)
- •2) Модули пространства ядра (данные одноименного диспетчера)
- •3) Службы (данные Диспетчера служб и драйверов, часть 1)
- •4) Драйверы (данные Диспетчера служб и драйверов, часть 2)
- •5) Автозапуск (данные Менеджера автозапуска)
- •6) Модули расширения Internet Explorer (bho, панели…) (данные Менеджера расширений ie)
- •7) Модули расширения проводника (данные Менеджера расширений проводника)
- •8) Модули расширения системы печати (данные Менеджера расширений системы печати)
- •9) Задания планировщика задач Task Scheduler (данные Менеджера планировщика задач Task Scheduler)
- •10) Настройки spi/lsp (данные Менеджера Winsock spi)
- •11) Порты tcp/udp (данные диспетчера «Открытые порты tcp/udp»)
- •12) Downloaded Program Files (данные Менеджера Downloaded Program Files)
- •13) Апплеты панели управления (cpl) (данные Менеджера апплетов панели управления)
- •3. Общие сведения
- •4. Поиск RootKit и программ, перехватывающих функции api (в соавторстве с Олегом Зайцевым)
- •1.1 Поиск перехватчиков api, работающих в UserMode
- •1.2 Поиск перехватчиков api, работающих в KernelMode
- •1.2 Поиск перехватчиков api, работающих в KernelMode
- •1.3 Проверка idt и sysenter
- •1.4 Поиск маскировки процессов и драйверов
- •1.4 Поиск маскировки процессов и драйверов
- •1.4 Поиск маскировки процессов и драйверов
- •5. Проверка памяти
- •2. Проверка памяти
- •6. Сканирование дисков
- •3. Сканирование дисков
- •7. Проверка Winsock Layered Service Provider
- •4. Проверка Winsock Layered Service Provider (spi/lsp)
- •4. Проверка Winsock Layered Service Provider (spi/lsp)
- •8. Поиск перехватчиков событий клавиатуры/мыши/окон (Keylogger, троянские dll)
- •5. Поиск перехватчиков событий клавиатуры/мыши/окон (Keylogger, троянские dll)
- •9. Поиск открытых портов tcp/udp, используемых вредоносными программами
- •6. Поиск открытых портов tcp/udp, используемых вредоносными программами
- •10. Эвристическая проверка системы
- •7. Эвристичеcкая проверка системы
- •11. Поиск потенциальных уязвимостей
- •8. Поиск потенциальных уязвимостей
- •8. Поиск потенциальных уязвимостей
- •12. Мастер поиска и устранения проблем
- •9. Мастер поиска и устранения проблем
- •9. Мастер поиска и устранения проблем
- •Критерии вредоносности файла
- •Зоны особого внимания
- •Примечание
- •Дополнительная диагностика
- •Работа со списком заподозренных файлов
- •Извлечение файлов и их анализ
- •Если файл не удается поместить в карантин
- •1) Попытаться выполнить карантин в безопасном режиме.
- •3) Попробовать применить специализированный антируткит (например, IceSword, позволяющий копировать скрытые и защищенные файлы).
- •Vms@drweb.Com
- •Virus_malware@avira.Com
- •IV. Лечение
- •Лечение с помощью HiJackThis
- •Лечение с помощью avz
- •1. Удаление файлов
- •2. Восстановление системы и исправление ошибок
- •1. Настройки spi/lsp
- •1) Ручной.
- •2. Файл hosts
- •3. Эвристическая проверка системы
- •4. Мастер поиска и устранения проблем
- •Восстановление системы по жалобам пользователя
- •3. После лечения
- •Если вредоносное программное обеспечение восстанавливается после удаления
- •1) Убедитесь, что Восстановление системы Windows отключено.
- •Если лечение прошло успешно
- •Чего не следует делать уважающему себя и других антивирусному консультанту
- •3) Выполнять ненужные / бесполезные для обрабатываемого случая операции
- •6) Содействовать поиску и использованию вредоносного и / или взломанного программного обеспечения
- •V. Заключение
2) Модули пространства ядра (данные одноименного диспетчера)
Модули пространства ядра – те драйвера и библиотеки, которые на момент исследования загружены в адресное пространство ядра операционной системы. В этой таблице отображаются
- имя и адрес модуля
- базовый адрес
- размер модуля в памяти
- описание
- производитель (копирайт)
Образец строки из протокола:
Зачем эта таблица?
Важно отличать данные Модулей пространства ядра от информации Менеджера служб и драйверов. Последний отображает те драйверы, которые существуют в системе по данным API или зарегистрированы в системном реестре, в то время как первый – компоненты, загруженные в ядро на момент исследования. Известен ряд как легитимных, так и вредоносных драйверов, которые при стандартном исследовании системы отображаются только в диспетчере Модули пространства ядра. Такие драйвера могут удаляться при выключении системы и вновь создаваться при последующем запуске, что, в частности, может осложнять их уничтожение через Boot Cleaner.
Можно провести приблизительную аналогию, сравнив Модули пространства ядра со списком процессов, а таблицу Менеджера служб и драйверов – со списком элементов автозагрузки.
Драйверы как компоненты ядра операционной системы являются, без преувеличения, одними из наиболее потенциально опасных ее элементов. Располагаясь глубже обычных приложений, драйверы могут оставаться недосягаемыми для них и свободно выполнять те или иные действия. Не случайно некоторые системы проактивной защиты предупреждают пользователя о том, что приложение, сумевшее установить драйвер, получает практически неограниченную свободу действий, а контроль над ним может быть потерян в любой момент.
В Windows XP драйвера разделяются на два уровня, соотносимые с архитектурными спецификациями процессора, - нулевое кольцо (ring0, оно же KernelMode) и третье кольцо (ring3, оно же UserMode). Схематически отобразить возможности взаимодействия драйверов колец и обычных приложений в виде вертикальной иерархии допустимо следующим образом:
К примеру: приложение в большинстве случаев не может оказывать воздействие на KernelMode драйвер; драйвер нулевого кольца может выполнять любые действия с приложением, объектом третьего кольца; два драйвера KernelMode равноправны и могут делать друг с другом что угодно.
Поэтому использование драйвера нулевого кольца является фактически обязательным требованием к антивирусному пакету или брандмауэру – иначе он может оказаться беспомощен перед вредоносным драйвером, расположенным на этом уровне. Драйвер KernelMode не гарантирует, что система защиты сможет справиться с инфекцией, но по крайней мере дает некоторую уверенность, что вредоносное ПО в большинстве случаев не сможет полностью скрыться от антивируса или брандмауэра. В частности, исход противодействия двух приложений, вооруженных и защищенных драйверами нулевого кольца, зависит обычно от того, какое из них более агрессивно: каждое из них может выгрузить другое, и вопрос лишь в том, кто сделает это первым. В противодействии же malware, не имеющему драйверов или еще не успевшему установиться в систему, драйвер KernelMode в подавляющем большинстве случаев позволяет системе защиты одержать верх – заблокировать вредоносный объект и успешно уничтожить его из недосягаемого для противника нулевого кольца.