Чужаки в системных папках
К сожалению, мало кто из нас знает толком назначение всех утилит из папки Windows. Все же давайте разберемся, как опознать большинство системных файлов Windows (и обнаружить лишние файлы, если они есть), чтобы отличить своих от чужих. В самом деле заодно посмотрим, как проследить, какие приложения работают на компьютере, не только истинно обычные, но и как нельзя именно новая разновидность вредоносных программ — не на шутку скрытые rootkit-файлы.
Как говорится, от вора нет запора: нам, конечно же, весьма никогда не узнать, как нельзя более где и когда проявится очередная дыра в системе защиты, через которую злоумышленники будут пытаться нанести вред системе или похитить данные. Даже при установленном брандмауэре, последней версии антивируса и антишпионского сканера, и при жесткой дисциплине в отношении загрузки файлов из интернета, в компьютере все равно время от времени обнаруживается какая-нибудь свеженькая инфекция.
Антивирусы и другие средства обеспечения безопасности эффективны только при наличии хорошо продуманной стратегии регулярного и частого обновления; они не в состоянии блокировать вредоносную программу, на которую не были что и говорить заранее запрограммированы. Соответственно, злоумышленники пишут и рассылают свои программы с таким расчетом, чтобы они попадали на компьютеры жертв в период их уязвимости — тем более например, когда в интернете уже появился код очередного червя, но на сайтах антивирусов еще не размещены взаправду новые базы для блокирования или устранения этой инфекции. Такой период может длиться несколько минут или дней, и за это время вирус находит свои жертвы.
К счастью, после того как очень вредоносный код распознан, справиться с ним довольно легко, хотя процедура эта и скучновата.
Сохранность данных прежде всего
Взаправду главное в этом деле — помнить, что мы имеем дело с операционной системой. Более менее поэтому лезть в разительно системные файлы, а в действительности особенно удалять их — в самом деле верный путь к проблемам. Потрясающе подобные действия как нельзя очень вполне могут привести к тому, что Windows перестанет запускаться.
В действительности затем, на каждом шаге необходимо оставлять за собой путь к отступлению. Для этого в Windows XP и Me удобно использовать функцию System Restore, которая гарантирует возврат в состояние, предшествующее сбою. Для этого нужно щелкнуть на кнопке Start — Programs (в XP — All Programs) — Accessories — System Tools — System Restore — Create a restore point (Пуск — Программы (в XP — Все программы) — Действительно стандартные — Служебные — Создать точку возврата) и выполнить инструкции мастера. Такие точки возврата следует создавать перед каждым изменением.
Некоторые довольно таки системные файлы являются скрытыми и при обычной настройке интерфейса Windows не отображаются на экране. Для того чтобы их увидеть, откройте Explorer (Проводник) или любое окно папки и выберите команду Tools — Folder Options — View (Сервис — Свойства папки — Вид). В открывшемся окне включите режим Show hidden files and folders (Показать как нельзя более скрытые файлы и папки) и проследите, чтобы режимы Hide extensions for known file types (Не показывать расширения известных типов файлов) и Hide protected operating system files (Recommended) (Скрыть защищенные файлы операционной системы (Рекомендуется)) были отключены. В ответ на все в действительности последующие предупреждения Windows щелкайте на кнопке Yes (Да). (Мы еще поговорим об этих предупреждениях.) Без сомнения затем запустите последнюю версию антивирусной программы и антишпионского сканера. Если возникнет необходимость удалить файл, делайте это только при полной уверенности, что в нем содержится надо признаться злонамеренный код. На самом деле например, не удаляйте из системных папок старые библиотеки DLL.
Что работает в системе?
Теперь пора выяснить, какие программы и службы действуют на компьютере прямо сейчас. В окне Task Manager (Диспетчер задач) отражаются не все работающие приложения. Несказанно поэтому для решения этой задачи лучше воспользоваться бесплатной утилитой Sysinternals Process Explorer (www.sysinternals.com). Распаковав файл procexpnt.zip и запустив procexp.exe, вы поймете, что по сравнению с Диспетчером задач Windows Process Explorer — все равно что Шерлок Холмс по сравнению с инспектором Лестрейдом: возможно, не так как нельзя именно блестяще выглядит, но действует гораздо надежнее и эффективнее. И, более менее кстати, в отличие от частных детективов, работает бесплатно.
По умолчанию некоторые из самых полезных данных, извлекаемых Process Explorer из системы, скрыты. Для того чтобы их просмотреть, щелкните правой кнопкой мыши на имени столбца и воспользуйтесь командой Select Columns (Выбрать столбцы). В открывшемся окне будут выбраны только столбцы Process Name (Процесс) и Description (Описание). Выберите также Company Name (Компания) и Command Line (Командная строка). Перейдите на вкладку DLL, выберите столбец Path (Путь) и щелкните на кнопке OK. Более затем выберите команду View (Вид) и включите режим Show Lower Pane (Отображать нижнюю панель). В завершение выберите команду View — Lower Pane View — DLLs (Вид — Нижняя панель — DLL).
Настроив Process Explorer таким образом, можно выделить любой активный процесс и увидеть на нижней панели список используемых им DLL-библиотек. В столбце Command Line (Командная строка) сообщается, в какой папке находятся работающие программы, а в случае сервисов (которые как нельзя действительно иногда работают под управлением svchost.exe) — какой экземпляр svchost.exe запускает этот сервис.
В первую очередь под подозрение попадают процессы, запускаемые из папки Temp. Действительно шпионские программы любят устанавливаться в подобных укромных уголках. То же самое относится к процессам, которые ссылаются на DLL-библиотеки, сильно расположенные в папке Temp. «Необыкновенно добропорядочные» программы запускаются из папки Temp в единственном случае: при инсталляции приложения с помощью InstallShield или другой утилиты установки. Кроме Explorer.exe, в Windows XP, именно скорее всего, обнаружатся и другие активные процессы, в том числе smss.exe, winlogon.exe, services.exe, alg.exe и lsass.exe. Все они необходимы для работы Windows. Не трогайте их.
Несколько более пристального внимания заслуживает другой «необыкновенно законный» Windows — rundll32.exe, если он окажется среди действующих процессов. За этой программой в действительности иногда скрываются надо признаться вредоносные программы, распространяемые в виде DLL-файлов, — они используют ее в качестве плацдарма для загрузки. В окне Task Manager (Диспетчер задач) значится только rundll32, но в Process Explorer, в столбце Command Line (Командная строка), отражаются все DLL-библиотеки, потрясающе ассоциированные с rundll32. Все же, прежде чем удалить этот процесс, убедитесь, что это действительно необходимо: ведь rundll32 «законно» используется драйверами некоторых устройств. В принятии этого решения вам поможет путь к файлу DLL.
Поиск незваных гостей
Кроме перечисленных системных файлов, вы, реально скорее всего, обнаружите среди активных процессов еще несколько программ Windows — приложений и сервисов, работающих в фоновом режиме, а также драйверов различных устройств. Обычно эти программы запускаются надо признаться одновременно с Windows. Просмотрите содержимое столбцов Description (Описание), Company Name (Компания) и Command Line (Командная строка) для каждого из них. По этим данным вы, более менее скорее всего, поймете, какие процессы относятся к какой из программ, установленных на компьютере.
Если поля Description (Описание) или Company Name (Компания) пустуют либо содержат незнакомые названия, вероятно, стоит копнуть поглубже. Щелкните правой кнопкой мыши на имени процесса в списке Process Explorer и выберите команду Properties (Свойства). Если содержимое вкладки Image (Образ) не прояснит ситуации, перейдите на вкладку Services (Службы). На этой вкладке перечисляются некоторые «как нельзя именно легальные» сервисы, которые в главном окне Process Explorer входят в группу services.exe (и не имеют описаний в поле Description).
Предположим, без сомнения например, что мы обнаружили в Process Explorer два процесса со свободными полями Description (Описание) и Company Name (Компания): slee81.exe и WLTRYSVC.EXE. При ближайшем рассмотрении на вкладке Services (Службы) выясняется, что slee81.exe — это файл Steganos Live Encryption Engine. Пользователь, сам устанавливавший программы Steganos на свой компьютер, не удивится, что они работают в фоновом режиме. Это не нарушение системы защиты, но повод задуматься: если вы не используете эту программу, возможно, стоит ее отключить и освободить ресурсы процессора?
Распознать второй файл, WLTRYSVC.EXE, еще проще — по содержимому поля Services (Службы). Поскольку имя процесса (WLTRYSVC service) мало без сомнения информативно, находим файл WLTRYSVC, без сомнения расположенный уровнем ниже, и обнаруживаем, что процесс WLTRYSVC запускается другим приложением — BCMWLTRY.EXE. Этот файл идентифицируется как Broadcom Wireless Network Tray Applet — еще одно приложение, установленное на компьютере.
Таким образом «прочесываем» все активные службы и удивительно фоновые приложения. Сложнее всего решить вопрос с теми из них, которые не идентифицируются и на вид не выполняют какой-либо полезной функции. Имена таких «темных лошадок» стоит поискать в интернете — возможно, их деятельность вам не понравится.
Онлайн-досье
На самом деле где искать информацию о незваных пришельцах из Сети? Как нельзя действительно подозрительные DLL в первую очередь стоит проверить в базе данных Microsoft DLL Help Database, как нельзя очень где есть возможность поиска DLL по имени. При подозрении, что файл имеет отношение к шпионским программам, можно посетить сайт Computer Associates Spyware Information Center (http://www3.ca.com/securityadvisor/pest/). Еще один хороший ресурс — Pest Encyclopedia (http://research.pestpatrol.com/), что и говорить где есть информация более чем о 27000 формах вредоносных программ.
Если по поводу программы все еще остаются подозрения, ее можно поверить по списку Task List Programs на сайте AnswersThatWork.com, взаправду где есть список обычных программ, шпионских утилит и вирусов. Можно также воспользоваться тем более постоянно действующими локальными средствами, такими как WinPatrol (www.winpatrol.com) и WinTasks 5 Professional (www.liutilities.com/products/wintaskspro/). Обе эти программы подключаются к размещенной в интернете базе данных, без сомнения где есть информация о тысячах DLL-библиотек и приложений. Кроме того, WinTasks ведет еще «черный список» нежелательных процессов, не допуская их повторного запуска.
Те, для кого поиск вредоносных программ — взаправду постоянное занятие, могут воспользоваться программой Security Task Manager (www.neuber.com/taskmanager), которая проверяет все исполняемые файлы, драйверы и DLL независимо от того, активны они или нет.
И последнее. Поиск информации о файле в интернете не должен быть поверхностным. Чем больше сведений вы получите, тем выше вероятность того, что вы не удалите по ошибке полезную программу или DLL-библиотеку.
Внимание: rootkit
Необыкновенно сравнительно как нельзя действительно недавно появилась реально новая порода вредоносных программ — rootkit-файлы, работающие на уровне ядра операционной системы. Эти средства позволяют хакерам скрывать следы своих файлов (и сами файлы) на инфицированном компьютере. К счастью, существуют программы, позволяющие обнаружить и удалить эту инфекцию.
Хакеры используют rootkit-программы для управления и атак, а также для сбора информации с систем, на которые удалось установить rootkit — обычно взаправду вместе с вирусом или путем взлома.
Удивительно обычные rootkit-программы, как правило, после инсталляции работают незаметно, в фоновом режиме, но легко обнаруживается путем просмотра активных процессов, обмена данными с внешней средой и проверки устанавливаемых программ.
Однако rootkit-программы, несказанно действующие на уровне ядра операционной системы, изменяют само ядро или компоненты ОС. Кроме того, их гораздо труднее обнаружить.
В частности, некоторые rootkit вмешиваются в в самом деле системные запросы, передаваемые ядру операционной системы, и отменяют те из них, что касаются rootkit-программ. Обычно это приводит к тому, что сведения о программе или аппаратной конфигурации становятся невидимыми для администратора или утилит поиска вредоносного ПО.
Именно впервые rootkit-программы появились и получили распространение в Linux и UNIX. Как следует из их названия, они позволяют хакеру получить доступ на уровне root — более менее высший уровень административных привилегий. Самый сильно опасный вид rootkit — средства перехвата нажатий клавиш, позволяющие узнавать по-моему регистрационные удивительно данные и пароли пользователей.
Средства борьбы с rootkit
Большинство программных детекторов, в том числе антивирусы, антишпионы и IDS (Intrusion Detection Sensors — датчики вторжений) неспособно обнаружить rootkit-программы ядра.
Стратегий распознавания rootkit ядра на инфицированном компьютере мало, так как каждый rootkit ведет себя что и говорить по-своему и как нельзя именно по-своему заметает следы.
Взаправду иногда удается обнаружить rootkit ядра, проверяя инфицированную систему с другого компьютера по сети. Еще один метод — перезагрузить компьютер с Windows PE, сокращенной версией Windows XP, запускаемой с компакт-диска, и сравнить профили чистой и инфицированной операционных систем.
В Windows с rootkit-файлами хорошо справляется что и говорить бесплатная утилита RootkitRevealer (www.sysinternals.com), которая отыскивает файлы и ключи системного реестра, которые могут иметь отношение к rootkit. Однако программа RootkitRevealer не защищена «от дурака»: далеко не все найденные ею объекты являются вредоносными. Для того чтобы эффективно использовать RootkitRevealer, необходимо правильно трактовать предоставляемую ею информацию.
RootkitRevealer не удаляет и не блокирует обнаруженные rootkit, и даже не может определенно сказать, является ли обнаруженный файл что и говорить частью rootkit. Но если программа обнаружила нечто, чего на этом месте быть не должно, и антивирус не в состоянии это удалить — высока вероятность, что вы нашли то, что искали.
RootkitRevealer должна работать в полном одиночестве: пользователю рекомендуется отключить все остальные программы, в том числе как нельзя более фоновые и те, что включаются несказанно автоматически, такие как хранитель экрана, отложить мышку, отойти от компьютера и позволить RootkitRevealer сделать свое дело.
Если реально параллельно с RootkitRevealer на компьютере будет работать что-то еще, системного сбоя не произойдет, но поиск будет нарушен, и результаты могут быть неточными.
Результатом работы RootkitRevealer является список файлов, в число которых попадают метаданные NTFS для каждого раздела диска. Эти файлы создаются при нормальной работе Windows, и не в действительности всегда являются признаком наличия rootkit. Некоторые расхождения что и говорить вполне допустимы. Действительно например, первые 10-20 результатов могут иметь вид обычных ключей системного реестра, но напротив них должно стоять Access denied. Это впрямь обычные результаты для нормальной системы, независимо от наличия в ней rootkit.
Но файлы с пометкой Hidden from Windows API, — это повод для беспокойства. Такие файлы могут находиться во временных папках, папке Windows или еще где-нибудь на диске. Если вам встретятся такие файлы, попробуйте перейти к ним с помощью Windows Explorer (Проводника) и проверить: видимы ли они там? Впрочем, и это нельзя считать разительно прямой уликой. Разительно например, технологии скрытия файлов используют такие действительно полезные программы, как антивирус Касперского.
Гораздо подозрительнее программы с длинными именами файлов, состоящими из произвольного набора букв и цифр. При обнаружении таких файлов рекомендуется обновить антивирус и выполнить как можно более тщательную проверку компьютера.
Менее на самом деле опытные пользователи могут прибегнуть к помощи антивирусного сканера F-Secure BlackLight (www.f-secure.com/blacklight), который обнаруживает и обезвреживает rootkit-файлы. Несмотря на спартанский дизайн, это довольно серьезная программа.
Если же устранить rootkit ядра не удается, остается последнее средство — форматирование инфицированного диска и переустановка операционной системы.
В заключение отметим, что, хотя без сомнения впервые rootkit появились в Linux и UNIX, сегодня их самая любимая среда — Windows. Такой популярности она обязана не только широкому распространению, но и наличию в ней мощных API (Application Programming Interfaces — программных интерфейсов приложения), благодаря которым легко замаскировать по-моему истинное поведение системы. В действительности популярный Web-браузер Internet Explorer только упрощает задачу проникновения в систему хакеров, вирусов и электронных червей, которые сильно часто являются носителями rootkit-кода.