Главная > безопасность, Теория > Безопасность: Удаление вредоносных программ.

Безопасность: Удаление вредоносных программ.

Здравствуй, читатель. Думаю, что каждый из вас сталкивался с проблемой вирусной эпидемии, факт которой вы ощущаете, но ваш антивирус настойчиво убеждает вас, что все в порядке! Ваше недоумение от такой безответственности этого защитника непроизвольно изменяет мимику вашего лица, и так и хочется посмотреть в глаза создателям и вируса, и бездарного защитного ПО. Но не стоит отчаиваться! Все, как говорится, в ваших руках. Я расскажу вам основную стратегию самостоятельного "излечения" от вирусов, троянов и иных форм вредоносного кода.

Как известно, основной промысел вирусописателей - это троянские программы или просто трояны. Их потенциальный КПД достаточно велик и прямопропорционален их функционалу, эффективность и простота реализации однозначна и доступна любому пытливому вирмейкеру (вирусописатель, создатель вирусов). Остальные направления вирусописания достаточно требовательны к знаниям, опыту и практике вирмейкера, поэтому частота появления вирусов, руткитов и других высокоинтеллектуальных вредоносных последовательностей байт достаточно невысока. А вероятность того, что вы можете подхватить именно их довольно низкая, если вы будете соблюдать основные правила информационной безопасности, которые описаны в статье "Основы информационной безопасности".

Так вот. Так как основную угрозу представляют именно троянские программы, то необходимо понимать принцип функционирования этого "гада". Для любой вредоносной программы важно, при каких событиях и каким образом они получат управление, то есть будут запущены или получат команду на выполнение вредоносной функции. Для трояна таковым событием является автозапуск. А точнее, для трояна важно, чтобы он запускался автоматически без участия пользователя. Так как большенство пользователь до сих пор эксплуатируют операционные системы семейства Windows 9x, поэтому не будем исключать возможности автозапуска для этого семейства, а так же семейства Windows NT. Так вот такими местами для автозагрузки являются:

  • командные файлы (Autoexec.bat, Winstart.bat).

Данные файлы наверняка до боли всем знакомы. Однако возможно не все знакомы с файлом Winstart.bat. Этот файл является недокументированным и используется системой аналогично файлу Autoexec.bat. Эксплуатируются в операционных системах Windows 9x, за исключением Windows Me. Их месторасположение - системный каталог (Windows).

  • конфигурационные файлы SYSTEM.INI и WIN.INI.

С помощью SYSTEM.INI в Windows 9x можно запустить только графическую оболочку - EXPLORER.EXE. Это можно увидеть в разделе [BOOT] параметр "shell". Однако файл (а точнее параметр) можно отредактировать так, чтобы запускалась какая-нибудь ваша программа, которая, в свою очередь, уже запускала графическую оболочку. WIN.INI используется в Windows 9x как аналог папки "Автозагрузка", где в разделе [windows] могут содержаться специальные параметры "load" и "run", в которых прописываются программы, предназначенные для автозагрузки.

Замечание:
Использование этих двух файлов уже давно многими подзабыто и поэтому на сегодняшний день они довольно актуальны для планов злоумышленника. Им стоит уделять особое внимание. Кроме того, мелкософт, преследуя цель сохранения совместимости, оставила их в составе системных файлов ОС Windows вплоть до Windows Vista и естественно сохранила возможность обработки этих файлов.

  • подразделы реестра для автозагрузки приложений(Run, RunOnce, RunOnceEx, RunSevices, RunServicesOnce).

Распологаются они в следующих разделах:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
HKEY_USERS\.DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\

Замечание:
Если в системе Windows 9x зарегистрирован толко один пользователь, то разделы HKEY_USERS\.DEFAULT и HKEY_CURRENT_USER будут идентичны. Однако в Windows NT/XP они будут различаться.

При загрузке операционной системы первым обрабатывается раздел реестра HKEY_LOCAL_MACHINE. При этом отметим, что подразделы RunServices и RunServicesOnce, в отличии от Run и RunOnce обрабатываются еще до того, как пользователь войдет в систему. А подразделы с названиями *Once после обработки очищаются. Поэтому стоит обратить пристальное внимание на эти подразделы. Замечу, что, так сказать "по умолчанию", Windows XP подразделы RunServices и RunServicesOnce в реестре не создает.
Подраздел RunOnceEx отличается от Run и RunOnce тем, что параметры в этом подразделе напрямую не запускаются. Для этого для каждого приложения в этом разделе создается дополнительный подраздел, в котором указываются параметры и соответствующие пути (система обрабатывает этот раздел в алфавитном порядке).

После обработки HKEY_LOCAL_MACHINE начинает обрабатываться раздел HKEY_USERS\.DEFAULT, а далее после регистрации пользователя в системе система приступает к обработке раздела HKEY_CURRENT_USER. В этих разделах все подобно тому, что было описано об HKEY_LOCAL_MACHINE.

В операционных системах Windows Me/2000/XP появились новые разделы для автозагрузки программ:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run

Замечание:
Вся особенность в том, что параметры приложений, прописанные в этих разделах, должны иметь имена в виде порядковых номеров, начиная с единицы.

В операционных системах семейства Windows NT способы автозапуска программ в целом идентичны способам автозапуска в системах Windows 9x. Однако имеется ряд разделов в реестре, специфичных только для Windows NT:
HKEY_CURRENT_USER\Software\Microsoft \Windows NT\CurrentVersion\Windows\Run
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows NT\CurrentVersion\Windows\Run

Также в разделах
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
и
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows NT\CurrentVersion\Windows
могут присутствовать параметры "Load" и "Run", в которые при установке Windows NT поверх Windows 9x переносится соответствующий список программ автозапуска из аналогичных параметров файла WIN.INI. Стоит внимательно просмотреть эти разделы.

Кроме того, в разделе
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Windows NT\CurrentVersion\Winlogon

тоже имеется достаточно любопытные параметры, отвечающие за автозапуск различных приложений при входе пользователя в систему:
"Userinit" — определяет список программ, запускаемых процессом WinLogon в контексте пользователя при его регистрации в системе. По умолчанию это "USERINIT.EXE, NDDEAGNT.EXE" для Windows NT и "USERINIT.EXE" - для Windows 2000/XP.
"Shell" — задаёт оболочку (вернее — список программ, формирующих пользовательский интерфейс) Windows (по умолчанию — "TASKMAN, PROGMAN, WOWEXEC" для Windows NT и "EXPLORER.EXE" для Windows 2000, XP).
"System" — определяет список программ, запускаемых процессом WinLogon в контексте системы во время её инициализации. По умолчанию — "LSASS.EXE, SPOOLSS.EXE" для Windows NT, и пустая строка либо "LSASS.EXE" для Windows 2000/XP.
"VmApplet" — определяет список программ или программу, запускаемую процессом WinLogon для оперативной настройки параметров виртуальной памяти — по умолчанию его значение «rundll32 shell32, Control_RunDLL "sysdm.cpl"».

Особое внимание уделите разделу
HKEY_LOCAL_MACHINE\Software\Microsoft \WindowsNT\CurrentVersion\AppInit_DLLs,
где указываются DLL-файлы, которые должны будут запускаться при загрузке ОС, не отображаясь при этом в диспетчере задач. Но их можно найти в контексте процессов, используя возможность FAR, о котором речь пойдет чуть позже.

Помимо этого предусмотрена возможность автоматического запуска сторонних программ вместе с запуском командного процессора CMD.EXE — эти программы задаются в специальных разделах реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft \Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft \Command Processor\AutoRun

  • папка "Автозагрузка" в меню пуск.

После того, как пользователь был зарегистрирован в системе, система приступает к запуску программ, ярлыки к которым помещены в папку "Автозагрузка" меню Пуск. Замечу, что для текущего пользователя расположение этой папки на диске может быть изменено вручную в разделе реестра
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
в параметре "Startup". По умолчанию ярлыки автозапуска текущего пользователя располагаются в папке "WINDOWS\Главное меню\Программы\Автозагрузка" для Windows 9x  либо "Documents and Settings\'имя пользователя'\Главное меню\Программы\Автозагрузка" для Windows XP.
Кроме этой папки система обрабатывает папку для группы "All Users". В Windows XP это папка "Documents and Settings\All Users\Главное меню\Программы\Автозагрузка", а в Windows 9x — "WINDOWS\All Users\Главное меню\Программы\Автозагрузка". Путь к этой папке тоже может быть изменен в
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders в параметре "Common Startup".

Замечание:
Эти папки обрабатываются, даже если в системе зарегистрирован только один пользователь, а параметры "Startup" и "Common Startup" могут находиться и в других разделах реестра, поэтому стоит произвести поиск в реестре таких параметров и поглядеть что там.

  • использование информационного файла Autorun.inf.

Данный способ за уши притягивается к теме автозагрузки, так как является информационным файлом для explorer'а(проводника) и применим только в том случае если данный файл будет лежать в корне диска(жесткого, флешки и т.д.) и соответсвующим содержимым. На сегодняшний день этот способ стал очень популярным, судя по тому как выросла тенденция распространения троянов через флешки. Так как он достаточно прост и практически все пользователи используют explorer.
Заражение таким способом происходит, когда к компьютеру подключается съемное устройство, в корне которого лежит файл autorun.inf и вредоносная программа, на которую ссылается *.inf, и пользователь открывает его из "проводника" двойным щелчком мыши либо из появивляющегося окошка "выбрать дейсвия ОС Windows". Признаки заражения таким способом можно определить так:
1) если в корне лежит autorun.inf c подобным содержимым
[autorun]
shellexecute= xxx.exe/xxx.com

2) Наличие папки RECYCLER
3) при щелчке правой кнопки мыши на диске в появившемся контекстном меню наличие жирной строчки open(0) (может и не быть, то есть просто произошла подмена функции "открыть").
При наличае хоть одного из этих признаков можно быть уверенным в заражении. При этом, если вирусу удалось запуститься (вы зашли на диск), то вирус необходимо удалить из процессов. Однако они могут быть запущены в контексте системных процессов. В таком случае прийдется ковырять реестр в разделах
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Windows NT\CurrentVersion\Winlogon
и
HKEY_LOCAL_MACHINE\Software\Microsoft \WindowsNT\CurrentVersion\AppInit_DLLs,
которые были описаны выше.

И только после того, как враждебный процесс был завершен, можно смело зачистить в корне диска все левые файлы(они бросаются в глаза). Но чтобы их увидеть необходимо настроить показ скрытых/системных файлов и папок. Это можно сделать в проводнике: меню сервис->свойство паки, там перейти на вкладку вид и в самом низу убрать галочку "скрывать системные файлы" и выбрать "показывать скрытые папки и файлы". Но прошаренные вирусы это дело просекли и контролируют эти галочки, постоянно их снимая. Так что вам прийдется пользоваться сторонними программами, к примеру TotalComander или FAR, либо командным интерпритатором с помощью команды "dir 'буква диска':\ /A". Правда TotalComander тоже нужно настроить, чтобы он показывал скрытые/системные файлы и папки: меню конфигурация -> настройки -> содержимое панелей и поставить галочку "показывать скрытые/системные файлы и папки".

Замечание:
Файловый менеджер очень удобен в этом вопросе. Он показывает абсолютно все файлы и папки и имеет замечательную функцию показывать список процессов с возможностью просмотреть список модулей, запущенных в его контексте. Причем также показывает достоточно подробную информацию о процессе.
Для этого запускаем FAR, жмем F11, выбираем в списке выбираем "список процессов" и получаем список процесов, выбираем интересующий нас процесс и, чтобы узнать подробную инфу, жмем F3.

Совет:
Отключайте в операционной системе возможность автозапуска. Это делается следующим образом:
"Пуск -> Выполнить -> gpedit.msc -> Политика "локальный компьютер" -> Конфигурация компьютера -> Административные шаблоны -> Система -> Отключить автозапуск".

Ну, в принципе, я рассмотрел все основные вопросы, связаные с поиском и удалением вируса руками. Возможно материал где-то неполный, где-то может я ошибаюсь, но весь материал основан на личном опыте и инфы найденной в интернете. По мере появления новой информации статья будет обновляется. Если есть какие вопросы или замечания, отписываем их в комментарии. Буду очень признателен, если вы поможете написать более полную и подробную статью.
Спасибо за внимание.

Пожалуйста, оцените полезность и качество данной статьи. Одна звезда - плохо, 5 - хорошо.
1/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.2/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.3/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.4/5.5/5. (3 голосов, средний: 5,00 из 5)
Загрузка...
  1. Пока что нет комментариев.
  1. Пока что нет уведомлений.