Десятки вирусов этого типа хранятся у меня в отдельной папке для тестирования и изучения антивирусных программ, и за несколько лет ни одному из них не пришло в голову активизироваться самостоятельно, поэтому дискета с зараженным файлом не должна вызывать панику, следует оценить ситуацию и принять правильное решение – удалить потенциально опасный файл или попробовать вылечить его с помощью антивируса.
   • Первые антивирусные программы очень быстро находили вирус по его уникальной сигнатуре. Чтобы затруднить подобный поиск, создатели вредоносных программ стали шифровать тела вирусов. В результате появились вирусы, названные полиморфными.
   • В литературе часто упоминаются стелс-вирусы (stealth – невидимка), которые были распространены во времена MS-DOS. Они применяют множество средств, чтобы скрыть свое присутствие в системе. Определить наличие таких вирусов без соответствующего инструментария практически невозможно.
   Сегодня для маскировки своего присутствия в системе вирусы используют руткит-технологии (о них будет рассказано позже). Вирусы можно подразделить также по следующим критериям:
   • по методу заражения (вирусы-паразиты, компаньоны и др.);
   • типу операционной системы (Windows, Unix, Linux, MS-DOS, Java);
   • деструктивной возможности (от безвредных, просто мешающих работе, до крайне опасных);
   • языку, на котором написан вирус (ассемблер, язык сценариев и др.).
   Вирусы могут использовать различные упаковщики, позволяющие превратить известный код в практически неузнаваемый.
   Каждый вирус имеет собственное имя. Вы слышите его, когда узнаете об очередной эпидемии. Откуда берется имя? Обнаружив новый вирус, антивирусные компании дают ему имена в соответствии с классификациями, принятыми в каждой конкретной компании, причем классификация у каждой фирмы своя. Посмотрите сами: например, Worm.Win32.Nuf – это то же самое, что Net-Worm.Win32.Mytob.c. Часто название дается по некоторым внешним признакам:
   • по месту обнаружения вируса (Jerusalem);
   • содержащимся в теле вируса текстовым строкам (I Love You);
   • методу подачи пользователю (AnnaKournikova);
   • эффекту (Black Friday).
   Бывает так, что вирус несколько раз переименовывают. Например, это касается «иерусалимского вируса». Изначально его назвали по месту обнаружения – Israeli, затем решили, что это название слишком антисемитское, и заменили его на «1813» (по размеру вируса), при этом параллельно использовалось другое имя – IDF (Israeli Defence Forces), и только через некоторое время вирус назвали Jerusalem.
   Кстати
   Самым маленьким по размеру вирусом считается Repus (Win95.с) – всего 156 байт (существуют, однако, и более тяжеловесные модификации, вплоть до 256 байт). Для уменьшения размера этого вируса используются различные программные хитрости и уловки; вреда он не приносит, и все программы работают без проблем. При этом есть как резидентные, так и нерезидентные представители Repus (Win95.с). Помимо малого размера, Repus стал первым вирусом, использующим для своего размножения кэш-память Windows. Он ищет в кэш-блоках заголовки файлов, записывается в них и устанавливает для блоков атрибут dirty, который дает системе команду сохранить его на диск. Подобная методика позволяет даже нерезидентному варианту распространяться со скоростью резидентного вируса.
   Одним из самых интересных является вирус I-Worm.Hybris (Vecna), получивший в июле 2002 года четвертую категорию опасности. Он распространяется посредством электронной почты. В первую очередь этот вирус заражает системный файл wsock32.dll, получая доступ ко всему интернет-трафику, а затем рассылает себя по полученным таким образом почтовым адресам. Самое интересное, что этот вирус может самостоятельно обновляться через Интернет, скачивая с новостной конференции alt.comp.virus плагины, дающие ему новые возможности.
   Количество сигнатур в антивирусных базах многих производителей уже перевалило 400-тысячную отметку и постоянно растет.

http://www.vmyths.com/hoax.cfm) и сайт охотников за мистификациями Hoaxbusters (http://hoaxbusters.ciac.org/).
   Все ведущие антивирусные компании имеют собственные страницы, посвященные мистификациям. И информацию можно найти на сайте Вирусной энциклопедии (http://www.viruslist.com/), Symantec (http://www.symantec.com/avcenter/index.html) и McAfee (http://vil.mcafee.com/hoax.asp).
   И, конечно же, не забывайте о Google – на то он и поисковик, чтобы все знать!

1.5. Что за зверь – троянский конь?

   Практически ни один разговор о компьютерных вирусах не обходится без термина «троянская программа», или «троянец». Чем это приложение отличается от вируса, каково его назначение и чем оно опасно? К этой категории относятся программы, выполняющие несанкционированные действия без ведома пользователя. По характеру действия троянец напоминает вирус: он может красть персональную информацию (прежде всего файлы паролей и почтовые базы), перехватывать данные, введенные с клавиатуры, реже – уничтожать важную информацию или нарушать работоспособность компьютера. Троянская программа может применяться для использования ресурсов компьютера, на котором она запущена, в неблаговидных или преступных целях: рассылки вирусов и спама, проведения DDOS-атак (Distributed Denial of Service – распределенных атак, направленных на нарушение работы сетевых сервисов).
   Это могут делать и вирусы. Отличие заключается в том, что часто внешне троянец выглядит как вполне нормальная программа, выполняющая полезные функции. Однако у нее есть и «вторая жизнь», о которой пользователь не догадывается, так как часть функций приложения скрыты. Троянская программа отличается от вируса неспособностью к самораспространению: она не может сама копироваться на другие компьютеры, ничего не уничтожает и не изменяет в компьютере пользователя (кроме функций, которые нужны для ее запуска). Троян может прокрасться к ничего не подозревающему пользователю под видом ускорителя Интернета, очистителя дискового пространства, видеокодека, плагина к проигрывателю Winamp или исполняемого файла, имеющего двойное расширение.
   Примечание
   Хотя, в отличие от вируса, троянец не способен к саморазмножению, от этого он не становится менее опасным.
   В последнем случае может прийти письмо с просьбой посмотреть фотографию и прикрепленным файлом вроде superfoto.bmp.exe (как вариант, после BMP может быть большое количество пробелов, чтобы пользователь ничего не заподозрил). В итоге получатель сам устанавливает вредоносную программу. Отсюда произошло название таких приложений: вспомните, как ахейцы захватили Трою. Город был хорошо укреплен, ахейцы долго не могли его взять и обманули защитников. Для жителей Трои конь был символом мира, и ахейцы, якобы для примирения, построили деревянную статую коня, внутрь которой посадили своих лучших воинов. Ничего не подозревающие троянцы затащили подарок в город, а ночью ахейцы вылезли из статуи, обезвредили стражу и открыли ворота, впустив основные силы.
   Размножению троянской программы может способствовать сам пользователь, копируя его друзьям и коллегам. Возможен вариант, когда программа попадает на компьютер пользователя как червь, а далее работает как троян, обеспечивая создателю возможность дистанционного управления зараженным компьютером. Чаще всего такие программы все-таки относят к червям.
   Запустившись, троянец располагается в памяти компьютера и отслеживает запрограммированные действия: крадет пароли для доступа в Интернет, обращается к сайтам, накручивая чьи-то счетчики (за что пользователь платит лишним трафиком), звонит на платные, часто дорогие, телефонные номера, следит за действиями и привычками хозяина компьютера и читает его электронную почту.
   Современные троянцы, как правило, уже не тащат все подряд. Они целенаправленно занимаются сбором конкретной информации. Например, «банковские» шпионы крадут номера кредитных карточек и других банковских данных. В связи с ростом популярности интернет-игр появился интерес к краже игровых предметов или персонажей, цена которых порой доходит до нескольких тысяч долларов, поэтому кража учетных записей для мошенников не менее привлекательна, чем кража банковских атрибутов.
   Отдельно следует упомянуть Trojan-Downloader и Trojan-Dropper, которые используются для установки на компьютеры троянских, рекламных (adware) или порнографических (pornware) программ. Кроме того, троянцы часто используются для создания троянских прокси-серверов или даже целых зомбисетей для рассылки спама или вирусов.
   Как определить, что в системе поселилась троянская программа? Во-первых, согласитесь, странно, когда только что установленный плагин к Winamp не обнаруживается в списке. Во-вторых, при инсталляции трояна может быть выведено сообщение, причем как об успешном окончании установки (вроде Internet Exsplorer already patched), так и, наоборот, говорящее о том, что утилита не установлена, потому что системная библиотека несовместима с версией программы либо архив поврежден. Возможно, будут также выведены рекомендации по устранению ошибки. После долгих мучений пользователь вряд ли получит ожидаемый результат, скорее всего, оставит все попытки и будет пребывать в уверенности, что это полезная программа, которая просто не запустилась по непонятным причинам. Троянец тем временем пропишется в автозапуске. Например, в Windows необходимо быть внимательным к следующим веткам реестра:
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runservices
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunservicesOnce
   Возможно помещение ярлыка трояна в папку Автозагрузка (это встречается очень редко, так как присутствие вредоносной программы в этой папке легко обнаружить) или запись в файлы autoexec.bat, win.ini, system.ini. Часто разработчики принимают меры, чтобы трояна не было видно в окне Диспетчер задач, выводимом нажатием сочетания клавиш Ctrl+Alt+Delete. Наиболее сложные троянские программы умеют самостоятельно обновляться через Интернет, прятаться от антивирусов и расшифровывать файлы паролей. Управлять троянцем можно несколькими способами – от прямого подключения к компьютеру до проверки определенного сетевого ресурса, на который хозяин посылает e-mail, ICQ и IRC-команды.
   Часто троянец состоит из двух частей: клиентской, установленной у хозяина, и серверной, работающей на машине жертвы. Такие программы также называют backdoor (потайной ход). Запустив программу-клиент, злоумышленник проверяет, находится ли сервер в Сети: если отклик получен, то удаленным компьютером можно управлять как своим.
   Учитывая неумение троянских программ распространяться самостоятельно, простым и эффективным правилом, позволяющим избежать заражения, является загрузка файлов только из надежных источников. Несмотря на то что, в отличие от вирусных эпидемий, о троянских эпидемиях пока еще никто не слышал, да и вряд ли услышит, учитывая неспособность этих программ к самостоятельному размножению, они не менее (а, возможно, даже более) опасны, чем вирусы. Ведь часто такие программы создаются для персонального использования, и поэтому сегодняшние антивирусы не могут знать обо всех них. Это означает, что пользователь может долгое время работать на зараженной машине, не подозревая об этом. Чтобы найти троянское приложение, требуются специальные утилиты и наблюдение за сетевой активностью компьютера с помощью штатных средств операционной системы и установленного брандмауэра, о чем будет подробнее рассказано в главе 4.

1.6. Новаторские подходы хакеров – руткиты (rootkits)

   Если троянцы, о которых говорилось выше, можно обнаружить с помощью системных утилит, то представители этого класса вычисляются только с помощью специальных утилит.
   Руткиты представляют собой более продвинутый вариант троянских коней. Некоторые антивирусные компании не разделяют руткиты и троянцы, относя их к одной категории зловредных программ. Однако троян прячется на компьютере, обычно маскируясь под известную программу (например, Spymaster выдавает себя за приложение MSN Messenger), а руткиты используют для маскировки более продвинутые методы, внедряясь глубоко в систему.
   Изначально словом «руткит» обозначался набор инструментов, позволяющий злоумышленнику возвращаться во взломанную систему таким образом, чтобы системный администратор не мог его видеть, а система – регистрировать. Долгое время руткиты были привилегией Unix-систем, но, как известно, хорошие идеи просто так не пропадают, и в конце ХХ века стали массово появляться руткиты, предназначенные для Microsoft Windows. О руткитах заговорили, только когда на их использовании в своих продуктах была поймана фирма Sony. Сегодня эксперты предсказывают бум этой технологии, и в ближайшие два-три года ожидается массовый рост количества руткитов – вплоть до 700 % в год. Самое печальное, что их будут использовать не только злоумышленники: руткиты станут массово применяться в коммерческих продуктах, в первую очередь для защиты от пиратства. Например, недавно было объявлено, что компания Microsoft создала руткит, обнаружить который невозможно. Не исключено, что это изобретение встретится в новых версиях Windows.
   Обычному пользователю от этого не легче. Технология руткитов потенциально может быть использована для создания нового поколения программ-шпионов и червей, обнаружить которые после их проникновения в компьютер будет почти невозможно.
   Практически все современные версии руткитов могут прятать от пользователя файлы, папки и параметры реестра, скрывать работающие программы, системные службы, драйверы и сетевые соединения. В основе функционирования руткитов лежит модификация данных и кода программы в памяти операционной системы. В зависимости от того, с какой областью памяти работают руткиты, их можно подразделить на следующие виды:
   • системы, работающие на уровне ядра (Kernel Level, или KLT);
   • системы, функционирующие на пользовательском уровне (User Level).
   Первый известный руткит для системы Windows, NT Rootkit, был написан в 1999 году экспертом в области безопасности Грегом Хоглундом в виде драйвера уровня ядра. Он скрывал все файлы и процессы, в имени которых встречалось сочетание _root, перехватывал информацию, набираемую на клавиатуре, и использовал другие способы маскировки.
   Самым известным на сегодня руткитом является Hacker Defender. Эта программа работает в режиме пользователя и маскируется за счет перехвата некоторых API. Hacker Defender может обрабатывать сетевой трафик до того, как он будет передан приложению, то есть любая программа, работающая в сети, может быть использована для взаимодействия со взломщиком. Руткит умеет скрывать файлы и процессы, записи в реестре и открытые порты и может неправильно показывать количество свободного места на диске. Он прописывается в автозагрузку, оставляя для себя черный вход, и прослушивает все открытые и разрешенные брандмауэром порты на предмет 256-битного ключа, который укажет, какой порт использовать для управления. Hacker Defender перехватывает функции запуска новых процессов, что позволяет ему заражать все программы, запускаемые пользователем. Он полиморфен: для шифрования исполняемых файлов руткита обычно используется утилита Morphine.
   Примечание
   Все современные версии руткитов могут прятать от пользователя файлы, папки и параметры реестра, скрывать программы, системные службы, драйверы и сетевые соединения.
   Одним из наиболее опасных руткитов является FU, выполненный частично как приложение, а частично как драйвер. Он не занимается перехватами, а манипулирует объектами ядра системы, поэтому найти такого вредителя очень сложно.
   Если вы обнаружили руткит, это еще не значит, что вы сможете избавиться от него. Для защиты от уничтожения пользователем или антивирусом в руткитах применяется несколько технологий, которые уже встречаются и в зловредных программах других типов. Например, запускаются два процесса, контролирующих друг друга. Если один из них прекращает работу, второй восстанавливает его. Применяется также похожий метод, использующий потоки: удаленный файл, параметр реестра или уничтоженный процесс через некоторое время восстанавливаются.