На вопрос «Какой антивирус вы используете на своей виндовой машине?» многие безопасники (в том числе и сотрудники нашей редакции) отвечают просто: никакой. Когда эпидемии в сотни тысяч зараженных компьютеров разгораются, невзирая на все самые передовые технологии систем защиты, а антивирусы в наших тестах показывают сомнительные результаты, об отказе от антивируса вполне стоит подумать.
План статьи будет таков: как локализовать заразу, если она все-таки проникла на твою машину, как победить руткиты и как восстановить систему после заражения, если все зашло слишком далеко. В конце статьи мы дадим несколько банальных, но по-прежнему актуальных советов о том, как избежать заражения (с другой стороны, как можно называть банальными советы, соблюдение которых снизило бы количество зараженных машин Сети в десятки раз?).
Мы вовсе не настаиваем на сносе твоего любимого Internet security, но прочитать статью «На малварь без антивируса» и советы из этого материала очень рекомендуем.
Итак, если у тебя есть подозрение на то, что машина инфицирована, в первую очередь ты должен выполнить несколько действий:
Все эти действия связаны с необходимостью изолировать нашего пациента от внешнего мира. Отключать хост нужно обязательно и от доступа во внешний мир через интернет и локалку, поскольку малварь практически со стопроцентной вероятностью будет пытаться себя распространить на весь доступный ей сегмент. К тому же если зловред является частью ботнет-сети или содержит компоненты RAT, то он может бездействовать до того момента, как поступит управляющая команда с C&C-сервера из внешней сети. Также это страхует нас и от утечки локальных данных во внешний мир, к примеру через DNS-туннелированные или подобные хакерские фичи. Следуя этой же логике, рекомендуют как можно скорее вытащить все подключенные к пациенту девайсы: к примеру, если это вирус-шифровальщик, то он может просто не успеть добраться до данных на внешних HDD и USB-флешках.
Хардкорным читателям советуем прочесть наш цикл статей про реверсинг малвари. Малварь в руках хакера, вооруженного статьями из этого цикла, пожалеет о том, что появилась из-под пера вирмейкера. ????
Ты можешь еще услышать совет сразу выключить зараженный компьютер. Здесь неоднозначно. С одной стороны, это может приостановить разрушительные действия зловреда. Но есть и риск того, что после выключения в следующий раз ОС больше вообще не загрузится, а данные на винтах потрутся. Поэтому действовать нужно по обстоятельствам, многое зависит от того, какая именно малварь была запущена и какие цели она преследует. Ниже при рассмотрении кейсов мы расскажем и о первой, и о второй ситуации.
Ну и конечно, для успешной борьбы с малварью и восстановления системы у тебя должны быть привилегии административной учетной записи, так как многие действия (манипуляции с системными файлами, остановка и перезапуск сетевых служб, восстановление реестра, изменение конфигурации загрузчика и тому подобное) потребуют от нас всей полноты прав на систему. ????
Неверные и неосмысленные действия могут привести к нарушению нормальной работы ОС, ПО или к потере данных. Ни автор, ни редакция не несут ответственности за ущерб, причиненный неправильным использованием материалов данной статьи. Выполняй только те действия, суть и значение которых ты осознаешь.
Любая малварь, чтобы выполнять свои действия, должна быть запущена в оперативной памяти. И неважно, как именно бинарный код был загружен в RAM — из exe-файла, вложенного в письмо, скрипта из инфицированной HTML-странички или был собран только из сетевых пакетов, как нашумевший в начале 2000-х годов бестелесный червь Slammer, поразивший тысячи серверов за несколько десятков минут. Поэтому ключевой задачей на первом этапе становится поиск и идентификация процесса зловреда в памяти. И стандартный менеджер задач Windows тут нам не помощник. Почему? Да потому, что даже начинающий кодер на Delphi может использовать функции, позволяющие скрывать из области видимости штатного Task Manager’а запущенный процесс. Я еще молчу о том, что зловред может содержать руткит, который будет скрывать его действия в системе.
Итак, к нам на помощь придут утилиты — самостоятельные и комплексные менеджеры задач. Первая тулза, которую мы рассмотрим, — это Process Monitor, бесплатная утилитка из набора SysInternals Suite. По сути, она объединяет в себе сразу две другие утилиты — FileMon (мониторинг файловой системы) и RegMon (мониторинг реестра). Тулза предоставляет мощный инструмент для мониторинга файловой системы, системного реестра, а также всех процессов в оперативной памяти в реальном времени.
На панели есть несколько интересных кнопок, позволяющих выполнять фильтрацию процессов и действий системы по нужным нам критериям:
Вторая, более навороченная тулза — это Process Explorer. Предназначена для мониторинга процессов в системе. Позволяет не только отследить процесс, но и уточнить, какие файлы и папки им используются. Фишка программы в том, что тут же в рабочем окне можно выделить процесс и по щелчку мыши проверить его на VirusTotal.
System Explorer, одна из излюбленных антивирусными исследователями тулз, обеспечивает мониторинг всех процессов в системе, отображает детальную загрузку памяти и файла подкачки, работу процессора, драйверов, открытых соединений в сети и многое другое.
В утилиту встроена база данных — можно проверить наличие вредоносного кода в конкретном файле и отправить на сервер отчет VirusTotal.
Тулза позволяет закрыть любой процесс и группу связанных процессов, которые тормозят работу системы или программы, просмотреть историю действий для любой программы. Поддерживается работа с плагинами. Интерфейс разделен на вкладки, каждая из которых посвящана конкретным задачам. System Explorer позволяет управлять объектами автозапуска, просматривать и оперативно деинсталлировать установленные приложения, управлять службами Windows и многое другое.
Тулза четвертая — это AnVir Task Manager, полноценный менеджер задач, который позволяет контролировать все, что запущено на компьютере, а также предоставляет удобные инструменты для настройки компьютера. Тулза позволяет управлять автозагрузкой, запущенными процессами, сервисами и драйверами и заменяет диспетчер.
В самом простом случае имя процесса совпадает с именем исходного exe-файла, который был запущен. Поэтому и самый простой способ найти малварь — это просмотреть весь список запущенных процессов и обратить внимание на те, которые вызывают подозрения. Но есть и более сложные ситуации, когда вирмейкеры используют системные имена, к примеру системных служб Svchost.exe, или, хуже того, не создают новый процесс, а инжектируют код зловреда в легитимный! Если такой процесс завершит часть функций, ОС может стать недоступна или вовсе возникнет RPC-ошибка, приводящая к перезагрузке. Такую фичу использовал небезызвестный червь Blaster. На глаз тут вредоносный процесс, конечно же, не определишь, нужны инструменты посерьезнее.
На выручку нам придет утилита AVZ, разработанная Олегом Зайцевым. Это не антивирус, но программа содержит в себе набор сигнатур наиболее известных червей, бэкдоров и руткитов.
Поэтому тулза может сканировать оперативную память и детектировать скомпрометированные процессы. Помимо этого, она имеет ряд крутых фич: собственный драйвер для обнаружения руткитов (kernel-mode), кейлоггеров и троянских DLL, прямой доступ к диску для работы с заблокированными файлами на томах NTFS, в том числе помещения их в карантин, анализатор открытых портов TCP/UDP с целью обнаружения RAT, анализатор Winsock SPI/LSP корректности сетевых настроек, анализатор мусорных настроек Internet Explorer, а также модуль проверки целостности системного реестра, BHO, расширений IE и проводника (Explorer) и анализатор всех доступных видов автозапуска.
Реальную проблему в борьбе с малварью представляют поиск и обезвреживание руткитов, поскольку они используют особые системные фичи, например перехват и модификация системных функций, подмена запросов и работа в режиме ядра с максимальными привилегиями, что помогает им обойти многие защитные механизмы.
Ручной поиск тут почти безуспешен, и без специальных утилит нам не обойтись. По некоторым методам работы антируткиты близки к антивирусным движкам, так как могут испробовать сигнатурный и эвристический метод детектирования, но все же не являются антивирусным ПО в привычном понимании. Рассмотрим несколько наиболее известных и широко используемых в практике инструментов.
Одна из функций малвари — обеспечить себе повторный запуск после выключения или перезагрузки машины. Наиболее часто используемый метод — это прописать исполняемый файл зловреда в автозапуск. Варианты здесь различны: это может быть и подмена пути в ярлыке, уже лежащем в автозапуске по пути %USERPROFILE%AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
, и назначение автоматически выполняемого задания в Планировщике Windows, и создание ключей на автозапуск в системном реестре:
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce]
— программы, которые запускаются только один раз, когда пользователь входит в систему;[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun]
— программы, которые запускаются при входе текущего пользователя в систему;[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce]
— программы, которые запускаются только единожды при входе текущего пользователя в систему.Что у нас есть из тулз для этого случая? Первое — это программа Autoruns, которая позволяет управлять автозагрузкой в Windows. С ее помощью можно увидеть все программы, службы, драйверы и командные файлы, которые будут запускаться вместе с системой, а при необходимости — отключить их.
Скажем пару слов об интерфейсе и вкладках:
Реестр Windows, начиная с самых первых версий ОС, остается критически важным компонентом системы, по сути представляя собой базу данных для хранения различных параметров и настроек рабочего окружения, установленного ПО и самой Windows. Логично, что нарушение работы реестра или его повреждение грозит неработоспособным состоянием ОС. Сам реестр, который открывается штатной утилитой regedit, физически представлен несколькими файлами, хранящимися по пути %SystemRoot%System32config
. Это файлы с именами SYSTEM, SOFTWARE, SECURITY, SAM, DEFAULT без расширений и доступные только для системных процессов NT AUTHORITYSYSTEM, LocalSystem. Но если реестр открывать через штатный редактор, то эти файлы предстанут в виде большого иерархического дерева.
Первое, что приходит на ум, — это, конечно же, сделать бэкапы этих файлов и при необходимости просто заменить битые на резервные копии. Но из-под загруженной ОС простым копированием выполнить это не удастся, а экспорт данных с использованием regedit может получиться неполноценным. Поэтому рассмотрим инструменты, которые помогут нам в этом деле.
«Из коробки» Windows, к сожалению, не имеет отдельного инструмента, позволяющего делать резервные копии реестра. Все, что может дать система, — это функциональность морально устаревшей NTBackUp родом из эпохи Windows XP / 2003 Server или в новых ОС Windows 7, 8, 10 ее реинкарнацию в виде «программы архивирования и восстановления Windows», предлагающей создать целиком образ системы (всей системы — не реестра!). Поэтому рассмотрим лишь небольшой пример действий в консоли восстановления, позволяющих восстановить реестр вручную. По сути это операции замены битых файлов на инфицированной системе оригинальными файлами реестра из заранее сделанной резервной копии.
Загрузившись в Live CD режиме с установочного диска или с локально установленной консоли восстановления (для XP/2003), необходимо выполнить следующие команды, описанные самой Microsoft:
// Создаем резервные копии реестра системы md tmp copy c:windowssystem32configsystem c:windowstmpsystem.bak copy c:windowssystem32configsoftware c:windowstmpsoftware.bak copy c:windowssystem32configsam c:windowstmpsam.bak copy c:windowssystem32configsecurity c:windowstmpsecurity.bak copy c:windowssystem32configdefault c:windowstmpdefault.bak // Удаляем битые файлы из системной директории ОС delete c:windowssystem32configsystem delete c:windowssystem32configsoftware delete c:windowssystem32configsam delete c:windowssystem32configsecurity delete c:windowssystem32configdefault // Копируем работоспособные файлы реестра из теневой копии copy c:windowsrepairsystem c:windowssystem32configsystem copy c:windowsrepairsoftware c:windowssystem32configsoftware copy c:windowsrepairsam c:windowssystem32configsam copy c:windowsrepairsecurity c:windowssystem32configsecurity copy c:windowsrepairdefault c:windowssystem32configdefault
Все, перезагружаем машину и смотрим на результат!
Cтатьи из последних выпусков журнала можно покупать отдельно только через два месяца после публикации. Чтобы читать эту статью, необходимо купить подписку.
Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке
1 год4890 р. Экономия 1400 рублей! |
1 месяц540 р. 25-30 статей в месяц |
Уже подписан?
Читайте также
Последние новости