Как вирусы заражают операционную систему Windows (или любую другую ОС)

Spacer
Поделитесь этим сайтом с друзьями!

Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь - поддержите материально автора. Это легко сделать закинув денежек на Yoomoney № 410011416229354.

Или на телефон +7(928)274-0281.

Даже небольшая сумма может помочь написанию новых статей :)

Или поделитесь ссылкой на эту статью со своими друзьями.

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

Введение

Для того чтобы вредоносная (malicious) программа могла сделать свое черное дело она должна быть запущена на выполнение. «Полезные» программы запускаются двумя путями – вручную самим пользователем, или автоматически, при запуске операционной системы.

А поскольку вредоносная программа, с технической точки зрения, является точно такой же программой, как и любая «полезная», то и запускается она таким же образом.

Компьютерная программа, запускаемая вручную, не работает до тех пор, пока пользователь ее не запустит.

Компьютерная программа, запускаемая автоматически, начинает работать с момента загрузки операционной системы.

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

От теории к практике

Далее будут кратко описаны способы при помощи, которых вредоносная программа может быть запущена на выполнение.

Все это будет рассмотрено применительно к операционным системам MS Windows и главным образом к одной из них – Windows XP как наиболее распространенной и наиболее уязвимой на сегодняшний день. Но концептуально вредоносное ПО точно также может быть запущено и на операционной системе GNU/Linux  или Apple Mac. Хотя там естественно будут различия технического характера.

Ручной запуск

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

Далее будут рассмотрены способы первичного запуска вредоносных программ (заражения).

Электронная почта

До недавнего времени это был самый популярный способ ручного запуска. Человеку приходит письмо с файлом, он открывает этот файл, а в нем вредоносная программа. Такие файлы могут маскироваться под различные документы, изображения, музыкальные файлы и т.д.

Однако вредоносная программа может быть не только в виде файла, приложенного к письму. Дело в том, что в последние годы большое распространение получили почтовые программы, которые позволяют писать и читать письма в формате HTML (как веб страницы). Одна из таких программ Outlook Express. Но дело в том, что в таком HTML письме может быть размещена программа-скрипт, которая будет выполнена при прочтении письма. То есть, получив такое письмо в котором есть вредоносный скрипт пользователь запускает его просто при открытии письма для прочтения.

Интернет-сайты

Сегодня это, пожалуй, самый распространенный способ при котором пользователь «своими руками» запускает вредоносные программы. Принцип тот же, что и в случае с HTML письмами. Страницы сайта содержат вредоносный скрипт, и при открытии этих страниц возможно заражение компьютера.

Причем тут не важно кому принадлежит сайт – известной компании или безвестному китайскому товарищу. Дело в том, что сейчас распространен взлом сайтов. Взломщик модифицирует страницы чужого сайта, внедряя в них свой вредоносный код, а владелец даже не подозревает о том, что его сайт используется для заражения компьютеров посетителей. То есть «серьезность» или «известность» владельца сайта в настоящее время не гарантия безопасности. Иными словами подхватить заразу можно на любом сайте.

Сменные носители информации

Еще один очень популярный способ. Чаще всего это флеш-карты и usb-диски, но теоретически это может быть любой сменный диск, например CD-ROM, сотовый телефон или цифровой фотоаппарат.

Дело в том, что ОС Windows предоставляет функцию автозапуска со сменных носителей. При наличии на носителе файла autorun.inf Windows читает его и если находит там команду на запуск программы запускает эту программу.

Как это работает? Вы вставляете зараженную флешку в свой компьютер, а Windows через функцию автозапуска выполняет вредоносную программу, которая там записана.

Зараженные файлы

Еще один распространенный способ это запуск зараженных программных файлов. То есть программ, в которых помимо какой-то функциональности есть еще и вредоносный код.

Наиболее распространенный вариант в этой категории это так называемые «кряки» (так же могут называться «таблетки», «лекарства», «кейгены» и т.д.) – программы, предназначенные для «взлома» коммерческих компьютерных программ.

Их основная функциональность заключается в том, чтобы тем или иным способом подавить защиту от нелегального использования, которая есть в большинстве  коммерческих программ. Помимо этой функциональности, часто такие «кряки» содержат еще и вредоносный код для заражения компьютера, на котором они запущены.

Человек запускает такую программу, для того чтобы обойти защиту коммерческой программы и заражает свой компьютер вредоносным кодом.

Вредоносный код может быть не только в программах «кряках», но и в документах такого формата, который допускает содержание скриптового кода. Пример такого рода файлов офисные форматы MS Word и MS Excel. Наиболее распространенный вариант это файлы рефератов, которые помимо текста реферата содержат вредоносный скриптовый код. Человек открывает такой файл, чтобы прочитать реферат и заражает свой компьютер.

Вредоносный код может быть также и файлах других форматов – например скринсэйверы.

Уязвимости программного кода

Еще один, очень популярный в последнее время, способ заражения компьютеров. Он основан на использовании обнаруженных в компонентах ОС и прикладных программ ошибок или недоработок.

Вредоносные программы, заражающие систему таким способом называются эксплойты, а наиболее распространенная ошибка, используемая эксплойтами называется «ошибка переполнения буфера». Заражение эксплойтами происходит двумя путями – либо через файлы данных различного формата (например, рисунки), в которых определенным образом внедрен вредоносный код, либо через специальным образом составленные пакеты, передаваемые по сети.

В любом из двух случаев заражение происходит одинаково – при обработке такого файла или сетевого пакета происходит выполнение внедренного кода, за счет того, что в программе, выполняющей такую обработку есть ошибка в алгоритме обработки данных.

Наиболее яркие примеры заражения компьютеров через сеть, с использованием уязвимостей ОС:

  • Эпидемия произошедшая летом 2003, когда использовалась уязвимость в механизме Windows RPC.
  • Эпидемия в мае 2017, когда использовалась уязвимость в механизме Windows SMB.

В обоих случаях заражались компьютеры, просто подключенные к Интернет напрямую, без шлюза.

 

После заражения

Итак, компьютер заражен. Вредоносная программа, попавшая на ваш компьютер, может работать двумя способами:

  1. Выполнять какие-то функции однократно, заканчивая свою работу после этого.
  2. Работать постоянно, все время пока работает компьютер.

При этом неважно как вредоносная программа запускается – вручную или автоматически.

Наиболее распространен такой вариант заражения компьютера, когда вредоносная программа запускается автоматически, при старте операционной системы и работает постоянно до момента выгрузки операционной системы.

Естественно, что автоматический запуск вредоносной программы возможен только на уже зараженном компьютере.

Автоматический запуск

Ниже перечислены пути, которые может использовать вредоносная программа, для того чтобы обеспечить себе автоматический запуск.

Ярлык в меню автозапуска

«\Documents and Settings\user\Главное меню\Программы\Автозагрузка» - в этой папке можно разместить ярлык на программу или даже саму программу, которая будет запущена при старте ОС Windows. Это стандартный, предлагаемый разработчиками, путь для автоматического запуска программ. Такая папка есть не только в профайле текущего пользователя, но и в общем профайле «All Users».

Системные файлы

Подмена, или заражение системных файлов Windows, которые запускаются при загрузке ОС Windows. Например, svchost.exe, explorer.exe.

Ключи реестра «Run»

Это самый распространенный способ. Ключи реестра «Run» это стандартный, предлагаемый разработчиками ОС Windows, путь для автоматического запуска программ. Таких ключа, в реестре Windows, четыре:

«HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run»

«HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run»

«HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run»

«HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\Run»

Ключ реестра «Cpls»

«HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls»

Этот ключ реестра предназначен для автоматического запуска программ-апплетов. Как правило, такие апплеты реализуют графический пользовательский интерфейс для доступа к настройкам других программ.

Ключ реестра «Locations»

« HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Scripting Host\Locations»

Этот ключ реестра предназначен для автоматического запуска программ, которые обрабатывают стандартные скрипты Windows.

Ключ реестра «Image File Execution Options»

«HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options»

Если в этом разделе добавить ключ с именем исполнительного файла, например «explorer.exe» и затем добавить параметр «debugger» с указанием на malicious программу то она будет запущена при запуске explorer Пример:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\explorer.exe
"Debugger"="c:\windows\ malicious.exe"

Ключ реестра «Winlogon»

Ключ «HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ Winlogon» дает две возможности для автозапуска вредоносных программ – это параметры «Shell» и «Userinit».

Ключ реестра «Windows»

Ключ «HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows» дает две возможности для автозапуска вредоносных программ – это параметры «load» и «run».

Запуск по расписанию

ОС Windows, штатно предоставляет еще один путь для автоматического запуска программ – через службу планировщика заданий. Файлы заданий размещаются в папке «\windows\tasks»

Запуск через групповые политики

Еще один штатный способ запуска программы – использование сценариев групповой политики, которые выполняются при старте системы или при ее остановке. Скрипты сценариев размещаются в папках «\WINDOWS\system32\GroupPolicy\User\Scripts» и «\WINDOWS\system32\GroupPolicy\Machine\Scripts», а управление прописывается в файлах scripts.ini.

Службы

В последнее время распространенный способ запуска вредоносных программ это использование механизма служб. То есть «вирус» запускается в качестве системной службы. Службы, зарегистрированные в ОС Windows, перечислены в разделах реестра «HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services» и «HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services».

Что делать после заражения

Зная способы автозапуска программ можно вылечить зараженный компьютер, даже не имея специальных антивирусных программ. Но для действительно эффективного лечения необходимо загружать зараженный компьютер с другой операционной системы. Это может быть другой экземпляр Windows, установленный на том же компьютере или, что гораздо лучше, запуск какой-либо операционной системы с лазерного или флеш диска.

Дело в том, что сейчас очень распространены вредоносные программы, которые разными способами препятствуют действиям по обнаружению и удалению программ. А, следовательно, лечение «изнутри» зараженной операционной системы может не дать никакого результата.

В упрощенном виде методология лечения выглядит таким образом:

1. Загрузка заведомо чистой операционной системы с лазерного или флеш диска. Это может быть Windows PE (Windows Preinstallation Environment) или ОС GNU/Linux (например, с Ubuntu Live CD). Windows PE предпочтительнее тем, что без дополнительных «телодвижений» можно будет загрузить кусты реестра с зараженной ОС, поскольку regedit входит состав Windows PE. А для того, чтобы работать с реестром Windows из Linux нужно будет сначала установить пакет Wine.

2. Из «чистой» ОС проверяются все места, на зараженной ОС, откуда возможен автозапуск программ. Все подозрительные программы удаляются.

3. Если есть какой-либо антивирусный сканер, то можно также проверить файлы, размещенные в системных папках, для Windows это папки «Documents and Settings», «Program Files», «Windows».

Иван Сухов, 2010, 2017 г.

Поделитесь этим сайтом с друзьями!

  Copyright digital.workshop 1999 - 2021.  
Это произведение доступно по лицензии Creative Commons Attribution-NoDerivs 3.0.
Developed by digital.workshop