Вирусы могут использовать следующие алгоритмы работы:
стелс-алгоритмы;
самошифрование и полиморфизм;
нестандартные приемы.
Применение стелс-алгоритмов (от англ. stealth – «невидимка») позволяет вирусам полностью или частично скрыть себя в системе. Наиболее распространенным стелс-алгоритмом является перехват запросов OC на чтение-запись зараженных объектов. Стелс-вирусы при этом либо временно лечат их, либо «подставляют» вместо себя незараженные участки информации. В случае макровирусов наиболее популярный способ – запрет вызовов меню просмотра макросов. Один из первых файловых стелс-вирусов – вирус «Frodo», первый загрузочный стелс-вирус – «Brain».
Самошифрование и полиморфизм (от англ. polymorphism – «многообразие») используются практически всеми типами вирусов для того, чтобы максимально усложнить процедуру обнаружения вируса. Полиморфик-вирусы – это вирусы, не имеющие сигнатур, то есть не содержащие ни одного постоянного участка кода. В большинстве случаев два образца одного и того же полиморфик-вируса не будут иметь ни одного совпадения. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.
Различные нестандартные приемы часто используются в вирусах для того, чтобы как можно глубже спрятать себя в ядре OC (как это делает вирус «3APA3A»), защитить от обнаружения свою резидентную копию (вирусы «TPVO», «Trout2»), затруднить лечение от вируса (например, поместив свою копию в Flash-BIOS) и т. д.
Программы-шпионы
Почему из программных закладок уделено внимание только программам-шпионам? Дело в том, что логические бомбы – вещь достаточно сложная и дорогостоящая, и потому на уровне «домашних» компьютеров практически не встречаются. Можно привести такой пример использования логических бомб. В свое время (в начале 90-х годов прошлого века) для вооруженных сил Ирака были закуплены во Франции зенитно-ракетные комплексы. Как потом стало известно, их программное обеспечение содержало логические бомбы. Когда США начали боевые действия против Ирака (операция «Буря в пустыне»), логические бомбы были активизированы по сигналам с военных спутников. В результате практически вся система противовоздушной обороны Ирака оказалась выведенной из строя.
Но вернемся к более «мирным» программам-шпионам. На такие программы обычно возлагаются следующие функции:
сбор сведений о программном обеспечении, установленном на компьютере (в том числе тип и версия используемой операционной системы);
перехват клавиатурного ввода (в частности, отслеживание вводимых паролей, сетевых имен и т. д.);
поиск на жестком диске (дисках) персональных данных;
выявление адресов посещаемых веб-сайтов, адресов электронной почты и т. п.;
создание снимков экрана или окон конкретных активных приложений (некоторые «шпионы» способны также записывать целые видеоклипы о работе владельца компьютера).
Большинство программ-шпионов умеет передавать собранные сведения своему «хозяину», то есть лицу (или организации), заславшему «шпиона».
Наиболее простой и распространенный на сегодняшний день способ передачи «шпионом» собранных сведений – это пересылка их посредством Интернета (например, по электронной почте).
Кому могут принести пользу собранные сведения? В первую очередь на ум приходят пресловутые спецслужбы, контролирующие личную жизнь граждан. Но это, скорее, исключение. Значительно большую заинтересованность в сборе сведений о конфигурации компьютера «рядового» пользователя проявляют производители программного обеспечения и аппаратных компонентов вычислительной техники. Конкретные цели сбора сведений могут быть разными: это и борьба с пиратским использованием программ, и исследование потребительского рынка, и конкурентная борьба, а также другие смежные направления.
ПРИМЕЧАНИЕ
Иногда программы-шпионыиспользуются не для нападения, а для защиты – когда владелец компьютера устанавливает такую программу сам, чтобыона следила за работой на компьютере других лиц. Частный случай подобного применения «шпионов» – контроль за действия подчиненных со стороны руководства.
Теперь о том, каким образом программы-шпионы попадают на компьютер. Может применяться тот же способ, что и при заражении вирусами, то есть «шпион» может «прятаться» внутри файла данных или исполняемого файла. Однако это не самый популярный вариант, поскольку размер «шпиона» обычно значительно больше размера вируса, и спрятать его внутри файла-контейнера непросто.
Значительно чаще «шпион» входит в дистрибутив какой-либо безобидной (или даже полезной) программы, приобретаемой или скачиваемой из Интернета. В процессе установки такой программы на компьютер параллельно производится также установка «шпиона». Нередко «шпион» прописывается на компьютере по всем правилам: с регистрацией в системном реестре, с созданием собственной папки, собственных типов файлов данных и т. д. Благодаря этому «шпион» зачастую продолжает «жить и работать» даже после удаления той основной программы, в которой он был спрятан.
Таким образом, программа, обеспечивающая установку «шпиона» на компьютер, играет роль своеобразного троянского коня, в недрах которого прячется неприятный сюрприз.
ПРИМЕЧАНИЕ
Изначально именно программы, содержащие недекларированные возможности, получили прозвище «троянские кони», или, в сокращенном варианте, «троянцы» (ато и вовсе «трояны»). Однако со временем входившая в них шпионская начинка стала использоваться самостоятельно (или кочевала из одной программы-контейнера в другую). В результате наименование «троянец» стало применяться не к контейнеру, а собственно к вредоносной программе. Сейчас можно встретить программы-вирусы, которые называют троянцами, хотя они используют отнюдь не «троянскую» технологию распространения (например, TROJ_EVIL, распространяющийся как файловый вирус). Имя вируса, данное ему автором, далеко не всегда соответствует типу вируса. Например, если вирус называется Worm, это еще не значит, что перед вами действительно вирус-червь. Возможно, его создателю просто понравилось это словечко.
На сегодняшний день известно несколько достаточно популярных программ, содержащих в своем составе шпионские модули, в том числе CuteFTP, Go!Zilla, ReGet.
Известен также и перечень наиболее популярных «шпионов», услугами которых пользуются создатели программного обеспечения. Суперагентами сегодня считаются программы-шпионы Radiate, Cydoor и Web3000. Все они попадают на компьютер с довольно известными продуктами. Так, например, Radiate используют разработчики программ Gif Animator, Go!Zilla, GetRight и ReGet. Cydoor вы получаете в нагрузку к Audio CD MP3 Studio 2000, PC-to-Phone и ReGet. А Web3000 попадает на ваш компьютер вместе с NetCaptor, NetSonic и NetMonitor.
Антишпионские программы содержат в своих базах данных сведения о 200300 программах, относящихся к классу spyware.
Сегодня в связи с развитием сетевых технологий все большее распространение получает специфический вид программ-шпионов – так называемый бэкдор (транслитерация от англ. backdoor – «черный ход»).
Бэкдор – это программа, позволяющая удаленно управлять компьютером. Она может, например, изменить параметры рабочего стола, скорректировать права доступа пользователей компьютера, инсталлировать или, наоборот, удалить установленное программное обеспечение и т. п. Изначально подобная технология была разработана с целью облегчения жизни системных администраторов, но.
Каким образом бэкдор может попасть на компьютер пользователя? Так же, как и любая другая вредоносная программа.
При первом запуске бэкдор скрытно устанавливает себя в операционную систему и затем следит за действиями пользователя, не выдавая никаких сообщений. Более того, запущенный бэкдор может отсутствовать в перечне активных приложений. В результате владелец компьютера не знает о присутствии в системе программы удаленного администрирования, в то время как его компьютером может удаленно управлять злоумышленник.
В качестве примера относительно «свежего» бэкдора (появился в августе 2005 года) можно назвать Backdoor.Win32.Haxdoor.dw. После запуска он создает в системном каталоге Windows несколько файлов (avpx32.dll, avpx32.sys, avpx64.sys, p3.ini, qy.sys, qz.dll и qz.sys), а также изменяет системный реестр таким образом, чтобы обеспечить свой автоматически запуск при каждой последующей загрузке Windows. Будучи запущенным на выполнение, бэкдор открывает несколько портов зараженного компьютера и ожидает подключения машин-клиентов «хозяев» вредителя), которые затем могут отдавать ему команды на похищение паролей, системной информации, различных файлов и выполнение других несанкционированных действий. В частности, по команде «хозяина» бэкдор может просматривать список активных процессов, завершать некоторые из них и отсылать злоумышленнику найденную информацию.
Небольшое отступление, косвенно связанное со сказанным выше. Многие известные программы имеют в своем составе недекларированные возможности, часто называемые пасхальными яйцами. Чтобы активизировать такую скрытую функцию, следует знать специальный «ключик». Вот лишь один пример.
В «недрах» редактора электронных таблиц MS Excel 2000 спрятана трехмерная игра с условным названием «Автогонки» (кадр из нее приведен на рис. 1.3).
Рис. 1.3. «Шпионская» игра
Для запуска игры требуется выполнить следующие манипуляции.
1. Откройте MS Excel 2000, и в меню Файл выберите команду Создать ? Новая книга.
2. С помощью команды Файл ? Сохранить как Веб-страницу откройте диалоговую панель сохранения файла, поставьте в ней переключатель выделенное: Лист и флажок Добавить интерактивность; укажите маршрут сохраняемого файла.
3. Откройте созданный файл в браузере MS Internet Explorer (версия не ниже 5.0).
4. Во внедренном в HTML-страницу листе Excel найдите и выделите строку под номером 2000.
5. С помощью клавиши Tab сделайте активной ячейку этой строки в столбце WC (именно с помощью клавиши, не используя мышь).
6. Нажав и удерживая клавиши Ctrl+Alt+Shift, щелкните левой клавишей мыши на значке MS Office в левом верхнем углу внедренного окна Excel.
Приведенный пример наглядно демонстрирует непредсказуемость поведения всего того, что некоторые товарищи беспечно устанавливают на свои компьютеры.
Глава 2
Стратегия защиты и восстановления данных
У некоторых читателей может возникнуть вопрос: начинается уже вторая глава книги, а ни один рецепт по восстановлению данных еще не приведен. В чем дело?
Дело в том, что восстановление данных – это лишь одна из частей общей технологии защиты компьютерных данных. Как известно, любую болезнь проще предупредить, чем вылечить. Поэтому прежде, чем мы перейдем к «рецептам», рассмотрим основные профилактические средства, которые способны уберечь вас от потери данных.
Стратегия защиты данных должна быть направлена на противодействие наиболее вероятным случайным и умышленным угрозам. Реализация такой стратегии основана на трех «китах»:
обеспечении бесперебойного электропитания компьютера;