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

Читать, слущать книги онлайн бесплатно!

Электронная Литература.

Бесплатная онлайн библиотека.

Читать: Защита вашего компьютера - Сергей Акимович Яремчук на бесплатной онлайн библиотеке Э-Лит


Помоги проекту - поделись книгой:

Следует, однако, отметить, что часто истерика возникала действительно из-за того, что кто-то находил вирус. Например, в 2001 году один из пользователей обнаружил, что файл sulfnbk.exe, лежащий в системной области, заражен вирусом – имеет подозрительное название и странный значок. Когда страсти утихли, выяснилось, что данный файл – это системная утилита, отвечающая за создание резервных копий файлов с длинными именами (название – от System Utility for Long FileName Backup – системная утилита для резервного копирования с сохранением длинных имен файлов), и у конкретного пользователя она действительно была заражена вирусом. Подобная история повторилась через год. Начавшись среди испаноговорящих пользователей Интернета в начале апреля 2002 года, мистификация быстро распространилась на англоговорящих к середине апреля. Под подозрение попал файл jdbgmgr.exe, принадлежавший пакету Visual J++ 1.1. И опять – сомнительный значок, непонятное название и действительно зараженный файл. Однако в данном случае, если пользователь не работал с пакетом Visual J++, работоспособность системы при удалении этого файла не нарушалась.

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

В 2002 году появился новый вирус – Perrun (W32/Perrun-A, PE_PERRUN.A, Win32.Perrun, W32/Perrun, W32/Perrun.A), который неизвестные часто присылали на сайты антивирусных компаний, очевидно, как предупреждение: мол, мы и так можем. Этот вирус мог заражать графические файлы и текстовые файлы с расширением TXT. Новость подхватили информационные агентства, и народ, естественно, начал волноваться. При ближайшем рассмотрении оказалось, что для заражения файла и его последующего распространения необходима программа-кодировщик, которая фактически является вирусом и без которой данный вирус можно считать разве что шуткой.

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

• включать что-либо в электрические розетки;

• использовать батарейки (поскольку вирус пробрался на заводы по производству батареек и заразил все положительные клеммы готовой продукции);

• передавать друг другу файлы любыми способами;

• читать на компьютере текст, причем совершенно любой, даже сообщение самого Морриса;

• использовать последовательные порты, модемы, телефонные линии, процессоры, системную память, сетевое оборудование, принтеры, мониторы и клавиатуры;

• пользоваться электроприборами, газовыми плитами, водопроводом, огнем и колесным транспортом.

Хорошо, что многие сразу понимали, что это просто шутка.

Как видите, мистификации появляются от недостаточной компьютерной грамотности при огромном желании показать свои знания. Преклонение перед неизвестным часто порождает множество мифов. Чего стоят рассказы о том, что кактус способен защитить от компьютерного (а почему не мониторного?) излучения. Эта шутка появилась в каком-то журнале в номере за 1 апреля. Автор статьи подробно описал размер иголок кактуса, расстояние между ними, высоту и рекомендуемый вид колючего растения, а также наилучшее место для его расположения. Конечно, кактус на мониторе способен разве что улучшить настроение, но никак не остановить излучение.

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

Как отличить мистификацию от реального вируса?

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

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

• Если вы никогда не оставляли свои данные на специализированных сайтах и не регистрировали свою версию антивируса или подобной программы, то к любому письму, полученному от антивирусной лаборатории компании Microsoft или даже лично Била Гейтса, следует относиться с подозрением. С чего это они вдруг написали вам?

• Если письмо содержит подробную техническую информацию, отнеситесь к нему скептически. В описании Good Times говорилось, что процессор будет выведен из строя бесконечным циклом n-й сложности… Если вас просят удалить или запустить какой-то файл, без сомнений удаляйте письмо.

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

В Интернете есть несколько ресурсов, посвященных мистификациям. Самые популярные из них – сайт Роба Розенбергера (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, выполненный частично как приложение, а частично как драйвер. Он не занимается перехватами, а манипулирует объектами ядра системы, поэтому найти такого вредителя очень сложно.

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

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

Любопытный способ защиты использует червь Feebs. Для борьбы с антивирусами, антируткитами и другими утилитами, пытающимися уничтожить его, он выставляет приманку – замаскированный процесс, не видимый на вкладке Процессы в окне Диспетчера задач. Любое приложение, которое попытается обратиться к этому процессу, уничтожается. Программа может устанавливаться как дополнительный модуль к браузеру Internet Explorer, изменяющий его функциональность. Стандартные средства контроля автозапуска типа msconfig не видят эти параметры, а применение дополнительных утилит для изучения системы требует от пользователя определенной квалификации, поэтому единственный действительно надежный способ уничтожить такую программу – отформатировать жесткий диск и заново установить операционную систему.

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

1.7. Уязвимости программ и хакерские технологии

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

Можно выделить три причины проникновения вирусов:

• ошибки при разработке программного обеспечения;

• ошибки в настройках;

• воздействие на пользователя (социальный инжиниринг).

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

Переполнение буфера

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

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

В материале «Википедии» (http://ru.wikipedia.org) дано следующее определение данной уязвимости: «Переполнение буфера – это явление, возникающее, когда компьютерная программа записывает данные за пределами выделенного в памяти буфера».

В «Новом словаре хакера» Эрика С. Рэймонда сказано, что «переполнение буфера – это то, что с неизбежностью происходит при попытке засунуть в буфер больше, чем тот может переварить».

Представьте следующую ситуацию. Функция изменения пароля может воспринять пароль длиной не более 256 символов. Чаще всего никто не пользуется паролями длиннее 8–10 символов, поэтому разработчики не предусмотрели проверку строки ввода данных. При попытке ввести более 256 символов, если за данными находился адрес возврата функции, он будет перезаписан и в лучшем случае выполнение программы завершится с ошибкой. Хакеру, обнаружившему такой уязвимый участок, остается подставить в качестве адреса возврата правильный адрес, что переведет управление в любую точку программы на его выбор. В результате может быть выполнен любой произвольный код, который хакер поместил в указанную область памяти, с привилегиями, с которыми выполняется текущая программа.

Подобные ошибки в программном обеспечении находят чуть ли не ежедневно, но не всегда и не сразу устраняют. Для примера можно просмотреть статистику на специализированных сайтах. Согласно данным Secunia (http://secunia.com) в Microsoft Windows XP Professional не устранено 30 из 201 уязвимостей, обнаруженных с 2003 по начало 2008 года, хотя имеющих статус highly critical (предельно опасный), которые позволяют удаленно выполнить код (то есть фактически получить доступ к системе), в этом списке уже нет. В среднем обнаруживается три-четыре уязвимости в месяц.

В Internet Explorer 7 не устранено 7 из 21 найденной уязвимости, и некоторые из них имеют статус highly critical. В среднем в месяц обнаруживается одна-две уязвимости. Если учесть все уязвимости, при которых можно удаленно выполнить код в системе, можно сделать вывод, что с этим браузером вообще опасно выходить в Интернет. Internet Explorer позволяет выполнение кода при обработке HTML Help ActiveX, файлов HTA, SWF, ZIP, BMP и JPEG, архивов FTP, Cookies, тега IFRAME и всплывающих окон, то есть для проникновения в систему троянца достаточно зайти на сайт и просмотреть/сохранить рисунки или архив ZIP.

Внимание!

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

В операционной системе Windows код Internet Explorer используют и многие другие приложения (почтовый клиент Outlook Express, Проигрыватель Windows Media и др.), отчего увеличивается вероятность поражения. Например, существует JPEG-эксплоит, который использует ошибку в системной библиотеке, возникающую при обработке графических JPEG-файлов. Эта ошибка позволяет заразить компьютер через любую программу – Outlook Еxpress или любой другой почтовый клиент, показывающий JPEG-картинки.

Следует также обратить внимание на возможность вывода в адресной строке Internet Explorer адреса, не соответствующего адресу загруженного сайта (такой вид атаки называется URL-спуфинг), и отображение всплывающих окон, которые, как думает пользователь, принадлежат просматриваемой в браузере странице, а также модификация заголовка окна или информации в строке состояния.

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

Давайте посмотрим, что на сегодня можно сказать о самом известном из бесплатных браузеров – Mozilla Firefox 2. В нем обнаружено 19 уязвимостей, из которых не устранено четыре. Самая опасная из них имеет статус less critical (ниже критического). Использовав эти уязвимости, получить полное управление компьютером невозможно, злоумышленник может лишь раскрыть некоторую системную информацию, поэтому следует признать, что положение этого браузера лучше, чем Internet Explorer.

Таким образом, оптимальным решением будет использование альтернативных приложений. Вместо Internet Explorer для серфинга можно применять, например, Mozilla Firefox, вместо Outlook Еxpress – The Bat! и т. д. У этих программ ситуация с безопасностью лучше.

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

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

На борьбу с данной уязвимостью направлены такие утилиты, как, например, Stack-Guard. Первоначально она была разработана для Unix-систем, но в настоящее время ее аналог используется в Microsoft Visual Studio.NET и ProPolice компании IBM. В продуктах компании Microsoft, Windows XP SP2 и Server 2003 SP1 используется технология DEP (Data Execution Protection – защита от выполнения данных), которая делает секцию данных и стек неисполняемыми, что должно предотвращать подобный тип атак.

В некоторых процессорах Intel и AMD имеется специальный бит: в Intel – XD (eXecute Disable – запрет выполнения), в AMD – NX (No eXecute – нет выполнения), позволяющий аппаратно реализовать поддержку DEP.

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

В этих средствах можно обнаружить и недостатки. При использовании технологии DEP встал вопрос совместимости. Некоторым приложениям требуется исполняемый стек (а таких много: эмуляторы, компиляторы, защитные механизмы и пр.), поэтому по умолчанию защита включена только для системных процессов. Появление новой технологии подстегнуло хакеров, и практически одновременно были представлены методы, позволяющие обойти защиту. Атаковать стало сложнее, но все равно возможно.

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

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

Неправильная настройка программ

К сожалению, большинство пользователей часто сами создают проблемы. Например, браузеру часто разрешают запуск JavaScript, ActiveX и других элементов управления, с помощью которых легко установить шпионские программы. Некоторые почтовые клиенты умеют обрабатывать и выводить на экран HTML-контент, позволяющий выполнять любые действия. Из-за неправильных настроек почтовой программы или имеющихся в ней ошибок при просмотре содержимого полученных писем могут автоматически открываться файлы вложений. Иногда используется следующий прием: к сообщению прилагается исполняемый файл, а в заголовке MIME, который указывает на тип передаваемого файла, в поле Content-Type указывается, что это рисунок. Почтовый клиент, пытаясь загрузить рисунок, запускает исполняемый файл.

Примечание

MIME – Мultipurpose Internet Мail Extension – почтовый стандарт Интернета: кодирование в одном сообщении текстовой и нетекстовой информации (графики, архивов и пр.) для передачи по электронной почте.

Опасность кроется не только в присылаемых EXE-файлах. Существует малоизвестная возможность выполнения сценариев в HLP– и CHM-файлах, причем эти сценарии позволяют запускать исполняемые файлы, поэтому следует остерегаться любых непрошеных сообщений электронной почты.

Если вы предпочитаете использовать для серфинга Internet Explorer, установите высокий уровень безопасности. Для этого выполните команду меню Сервис → Свойства обозревателя, в появившемся окне перейдите на вкладку Безопасность, выберите категорию Интернет, в нижней части окна нажмите кнопку Другой, в открывшемся окне Параметры безопасности выберите из списка На уровень пункт Высокий и нажмите кнопку OK.

Пользователи часто работают в Интернете с правами администратора, соответственно, злоумышленник, получивший доступ к компьютеру посредством, например, атаки на Internet Explorer, получит те же права, поэтому для работы в Интернете следует завести отдельную учетную запись, наделив ее минимальными правами.

Червь Lovesan использовал уязвимость в сервисе Microsoft RPC (Remote Procedure Call – удаленное выполнение команд). И хотя эта уязвимость устранена, если служба DCOM (Distributed Component Object Model – модель распределенных компонентных объектов) вам не нужна, лучше отключить ее, а заодно и остальные ненужные сервисы. Чтобы проверить список запущенных служб, следует выполнить команду меню Пуск → Выполнить и в окне Запуск программы ввести cmd. В появившемся окне командной строки введите команду net start. На рис. 1.1 показан пример списка работающих служб.


Рис. 1.1. Вывод списка запущенных служб

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

В Интернете существует достаточное количество руководств, подробно описывающих назначение системных служб Windows. Одно из них можно найти по адресу http://www.oszone.net/display.php?id=2357. Желательно отключить нулевую сессию (Null Session), позволяющую подключиться к системе, основанной на Windows NT, без ввода имени пользователя и пароля. При включенной нулевой сессии анонимный пользователь может получить большое количество информации о конфигурации системы, которую сможет использовать в дальнейших действиях (список ресурсов, предоставленных для общего доступа, список пользователей, рабочих групп и т. д.). Открытый 139-й порт относится к категории серьезных уязвимостей. Чтобы отключить нулевую сессию, необходимо выполнить команду меню Пуск → Выполнить и набрать в строке Открыть команду regedit. В разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa для Windows 2000/XP/2003 нужно задать параметру restrictanonymous значение 2 (тип – REG_DWORD), для Windows NT3.5/NT4.0 – значение 1. Для Windows 2000/XP/2003 в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver нужно задать для параметра RestrictNullSessionAccess значение 1 (тип параметра – REG_DWORD), а для Windows NT3.5/NT4.0 это можно сделать в разделе системного реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters. Если таких параметров нет, их необходимо создать.

После внесения изменений требуется перезагрузка компьютера.

Следует также запретить скрытые ресурсы C$, D$, ADMIN$. Для этого проще использовать специализированные утилиты. Например, программа LanSafety позволяет сделать это одним щелчком (рис. 1.2).




Поделиться книгой:

На главную
Назад