Содержание статьи
Интро
Каждому сисадмину приходится иногда обслуживать компьютеры знакомых или совершать надомные выезды. В этом деле ему помогает проверенный набор утилит. Наш обзор расскажет только о бесплатных, не требующих установки и ставших стандартом де-факто.
WARNING
Использование системных утилит требует понимания логики их работы и устройства самой ОС. Ознакомься со справкой прежде, чем вносить изменения в реестр и вмешиваться в работу активных процессов.
Autoruns
Эта программа стала визитной карточкой Марка Руссиновича и фирмы Winternals Software (более известной по имени сайта — Sysinternals.com), давно поглощенной Microsoft. Сейчас она по-прежнему развивается автором, но юридически принадлежит техническому отделу Microsoft. Текущая версия 13.3 написана в апреле 2015 года. С v.13.0 программа стала не просто удобнее, она получила ряд новых функций, в частности средства расширенной фильтрации, интеграцию с другими системными утилитами и онлайновыми сервисами.
Autoruns отображает самый полный и самый подробный список компонентов автозапуска независимо от их типа. Утилита показывает способы загрузки всех драйверов, программ (включая системные) и их модулей по разделам реестра. Она даже формирует список всех расширений проводника Windows, панели инструментов, автоматически запускаемых служб и многих других объектов, обычно ускользающих от подобных программ.
Цветовая маркировка помогает быстро определить в списке из сотен записей стандартные компоненты, которые имеют цифровую подпись Microsoft, подозрительные файлы и ошибочные строки, которые ссылаются на несуществующие файлы. Чтобы отключить возможность автозапуска любого компонента, достаточно снять флажок напротив него слева.
Xakep #197. Социальная инженерия
Часть компонентов автоматически загружается только при входе в систему под определенной учетной записью. В Autoruns можно выбрать записи, соответствующие каждому аккаунту, и просмотреть их отдельно.
Внимания заслуживает и режим командной строки. Он исключительно удобен для экспорта списка элементов автозапуска в текстовый файл, создания расширенных отчетов и выборочной антивирусной проверки всех подозрительных объектов. Полную справку можно прочесть на сайте, здесь же приведу пример типовой команды:
autorunsc -a blt -vrs -vt > C:\Autor.log
Здесь autorunsc
— модуль программы, запускаемый в режиме командной строки. Ключ -a
указывает, что после него перечислены объекты для проверки. В примере их три: b — boot execute (то есть все, что загружается после старта системы и до входа пользователя); l — logon, компоненты автозагрузки определенного пользователя и t — запланированные задания. Если вместо перечисления blt указать астериск (*
), то будут проверены все объекты автозапуска.
Ключи -vrs
и -vt
указывают режим работы с онлайновым сервисом VirusTotal. Первый набор задает отправку только тех файлов, у которых отсутствует цифровая подпись Microsoft и которые ранее не проверялись. Если хотя бы один антивирус из полусотни сочтет файл вредоносным, подробный отчет откроется в отдельной вкладке браузера. Второй набор ключей нужен для того, чтобы каждый раз не открывалась вкладка с пользовательским соглашением сервиса VirusTotal и не приходилось подтверждать согласие с ним.
Отчет Autorunsc обычно получается значительным по объему (десятки и сотни килобайт), поэтому читать его на экране неудобно, поэтому в примере вывод перенаправляется в лог-файл. Это обычный текстовый формат в кодировке UCS-2 Little Endian. Вот пример записи из него с одним ложноположительным срабатыванием:
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
Adobe ARM
"C:\Program Files (x86)\Common Files\Adobe\ARM\1.0\AdobeARM.exe"
Adobe Reader and Acrobat Manager
Adobe Systems Incorporated
1.801.10.4720
c:\program files (x86)\common files\adobe\arm\1.0\adobearm.exe
20.11.2014 21:03
VT detection: 1/56
VT permalink: (ссылка на отчет VirusTotal).
Скачать Autoruns можно на этой странице.
Process Explorer
Версия программы Autoruns с графическим интерфейсом может работать вместе с другой утилитой того же автора — Process Explorer (PE). Если сначала запустить PE, а затем Autoruns, то в меню последней появляются дополнительные пункты о просмотре свойств каждого активного процесса из меню автозапуска.
В настройках PE можно указать желаемый способ отображения всех активных процессов: простой перечень с сортировкой по имени или степени загрузки ЦП либо древовидный список с указанием зависимостей. Там же задается опция, которая позволяет проверять неизвестные файлы (определяются по хешу) в VirusTotal. Если ее включить, то через некоторое время справа появится результат проверки. Все объекты, на которые ругается хотя бы один антивирус, будут выделены красным.
При нажатии
По правому клику на любом процессе из списка PE появляется контекстное меню. Оно дублирует все функции встроенного диспетчера задач и добавляет несколько новых. В частности, можно одним кликом отправить соответствующий подозрительному процессу файл на анализ в VirusTotal, выполнить поиск его описания в интернете, сделать дамп или приостановить (suspend) выполнение. Поставленный на паузу процесс перестает реагировать на любые команды (включая внутренние), и его становится легче анализировать. После того как с ним разобрались, можно отправить через Process Explorer команду «возобновить» (resume). Разумеется, без острой необходимости так не стоит делать с системными процессами и утилитами, выполняющими низкоуровневые операции. Перепрошивка BIOS/UEFI, изменение разметки диска, выравнивание разделов и другие подобные операции лучше не прерывать.
Обычно в заголовке каждого окна указано название породившего его приложения, но бывает, что они остаются безымянными. Это особенно характерно для троянов, которые имитируют работу известных программ или маленьких диалоговых окон с кодами ошибок. В Process Explorer есть удобная функция «найти процесс по окну». Достаточно нажать эту кнопку на верхней панели и, удерживая левую клавишу мыши, перенести курсор в область странного окна. В таблице PE автоматически выделится соответствующий ему процесс.
Чтобы воспользоваться всеми функциями Process Explorer, потребуется запустить его с правами администратора и (в отдельных случаях) установить Debugging Tools for Windows. Их можно скачать отдельно либо загрузить в составе Windows Driver Kit. Последнюю версию Process Explorer можно скачать с сайта Microsoft.
Unlocker
Без сомнений, Марк Руссинович — настоящий гуру среди авторов системных утилит для Windows, но его программы создавались как универсальные инструменты. Иногда стоит воспользоваться более узкоспециализированными средствами. Такими, как творение французского программиста Седрика Коллома (Cedrick Collomb). Его крохотная утилита Unlocker умеет делать только одно: разблокировать занятый каким-либо процессом объект файловой системы, чтобы вернуть контроль над ним. Хоть последняя версия вышла в 2013 году, программа до сих пор выполняет свои функции лучше всех аналогов. Например, она позволяет выгружать из памяти динамические библиотеки, удалять файл index.dat, работать с запрещенными в Windows именами файлов и выполнять большинство действий без перезагрузки.
Unlocker определяет дескрипторы запущенных процессов, которые в данный момент блокируют работу с нужным файлом или каталогом. Такая блокировка требуется для исключения взаимных влияний приложений в многозадачной среде. При нормальном функционировании ОС и программ она исключает случайное удаление используемых файлов, но иногда бывают ошибки. В результате одной из них приложение может зависнуть либо остаться в памяти после закрытия окна. Тогда объект файловой системы может оставаться заблокированным и после того, как в этом исчезнет необходимость.
Сегодня список активных процессов у рядового пользователя начинается от полусотни, поэтому искать среди них зомби можно долго. Unlocker помогает сразу определить, какой процесс блокирует изменение или удаление выбранного файла или каталога. Даже если он не сможет это выяснить из-за ограничений Win32 API, то предложит принудительно выполнить желаемое действие: переименовать, переместить или удалить объект.
Иногда сразу несколько программ могут обращаться к одному каталогу, поэтому среди блокирующих его процессов определяются несколько дескрипторов. В Unlocker есть возможность отменить блокировку всех одной кнопкой.
Начиная с версии 1.9.0 поддерживаются 64-битные версии Windows. Утилита может быть интегрирована в контекстное меню проводника или запускаться в графическом режиме как переносимое приложение. Можно также установить Unlocker Assistant. Он будет висеть в трее и автоматически вызывать Unlocker всякий раз, когда пользователь пытается выполнить манипуляции с заблокированным файлом. Запуск с ключом -h
выведет справку о режиме командной строки. Утилита доступна на сорока языках, хотя особо переводить в ней нечего — все и так интуитивно понятно.
AVZ
Глядя на список возможностей утилиты AVZ, хочется назвать ее аналитической, а не антивирусной. У крохотной программы Олега Зайцева есть множество незаменимых функций, которые облегчают повседневные задачи админа и жизнь продвинутого пользователя. Она поможет выполнить исследование системы, восстановить сбившиеся настройки встроенных компонентов ОС до принятых по умолчанию, обнаружить любые изменения с момента прошлого аудита, найти потенциальные проблемы безопасности, удалить из SPI Winsock троянские компоненты и восстановить подключение к интернету, выявить странное поведение программ и обнаружить руткиты уровня ядра.
Известные зловреды лучше удалять с помощью других антивирусных сканеров. AVZ пригодится для борьбы с неизвестным злом, поиска дыр, через которые оно может просочиться, и устранения последствий заражения. В большинстве случаев AVZ позволяет обойтись без переустановки ОС даже после тяжелой вирусной атаки.
Использовать AVZ можно как портативное приложение, но полный набор функций утилиты раскроется лишь в том случае, если установить AVZPM — собственный драйвер режима ядра. Он контролирует все модули, драйверы и активные приложения, позволяя легко выявлять маскирующиеся процессы и любые технологии подмены их идентификаторов.
AVZGuard — еще один драйвер режима ядра, который можно активировать из меню AVZ. Он разграничивает доступ активных процессов, подавляя антиантивирусную активность на зараженном компьютере. Такой подход позволяет запустить из окна AVZ любое приложение (в том числе другой антивирус) в защищенном режиме.
Одной из хитрых технологий противодействия у вредоносных программ остается метод блокировки своих файлов и воссоздания удаляемых антивирусом элементов при следующей загрузке ОС. Вручную она частично обходится с помощью Unlocker, но у AVZ есть своя технология — Boot Cleaner. Это другой драйвер режима ядра, который расширяет возможности встроенной в Windows функции отложенного удаления при перезапуске. Он загружается раньше, протоколирует результаты работы и может удалять записи реестра, равно как и файлы.
Сам антивирусный сканер AVZ тоже имеет множество ноу-хау. Он способен проверять альтернативные потоки NTFS и ускорять проверку за счет исключения из нее файлов, опознанных как безопасные по каталогу Microsoft или собственной базе. Все угрозы можно искать по определенным типам — например, сразу исключить категорию HackTool. Есть отдельные модули для поиска клавиатурных перехватчиков, открытых троянскими конями портов и поведенческого анализа. AVZ позволяет копировать подозрительные и удаляемые файлы в отдельные папки для их последующего детального изучения.
Требование присылать отчеты AVZ и его модуля «Исследование системы» стали стандартной практикой на многих форумах вирусологов, куда обращаются за помощью в решении нетривиальных проблем.
Разумеется, аптечка опытного админа может насчитывать не один десяток программ, но для решения большей части задач хватит и этих четырех утилит. Остальные ты легко найдешь в подборках по указанным в начале ссылкам.