Текст книги "Защити свой компьютер на 100% от вирусов и хакеров"
Автор книги: Олег Бойцев
сообщить о нарушении
Текущая страница: 5 (всего у книги 20 страниц) [доступный отрывок для чтения: 8 страниц]
operator) in query expression 'username = ''' and password =
'g''. at
System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling (
Int32 hr) at
System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult
( tagDBPARAMS dbParams, Object& executeResult) at
В первой части сообщения выводится часть запроса, вызвавшего ошибку. По этой информации злоумышленник может получить информацию об используемых параметрах запроса и месте запроса, в котором осуществляется внедрение кода.
Обратный путь в директориях
Данная техника атак направлена на получение доступа к файлам, директориям и командам, находящимся вне основной директории веб-сервера. Злоумышленник может манипулировать параметрами URL с целью получить доступ к файлам или выполнить команды, располагаемые в файловой системе веб-сервера.
При подобных атаках потенциально уязвимо любое устройство, имеющее веб-интерфейс. Многие веб-серверы ограничивают доступ пользователя определенной частью файловой системы, обычно называемой web document root или CGI root. Эти директории содержат файлы, предназначенные для пользователя, и программы, необходимые для получения доступа к функциям веб-приложения. Большинство базовых атак, эксплуатирующих обратный путь, основаны на внедрении в URL-символов ../, чтобы изменить расположение ресурса, который будет обрабатываться сервером. Поскольку большинство веб-серверов фильтруют эту последовательность, злоумышленник может воспользоваться альтернативными кодировками для представления символов перехода по директориям. Популярные приемы включают использование альтернативных кодировок, например Unicode (..%u2216 или ..%c0%af), использование обратного слэша (..) в Windows-серверах, символов URLEncode (%2e%2e%2f) или двойной кодировки URLEncode (..%2 55c). Даже если веб-сервер ограничивает доступ к файлам определенным каталогом, эта уязвимость может возникать в сценариях или CGI-программах. Возможность использования обратного пути в каталогах довольно часто возникает в приложениях, использующих механизмы шаблонов или загружающих текст их страниц из файлов на сервере. В этом варианте атаки злоумышленник модифицирует имя файла, передаваемое в качестве параметра CGI-программы или серверного сценария. В результате злоумышленник может получить исходный код сценариев. Довольно часто к имени запрашиваемого файла добавляются специальные символы – такие как %0 0 – с целью обхода фильтров. Следующие примеры иллюстрируют обратный путь в каталогах вебсервера:
httр://example/../../../../../some/file
httр://example/..%255c..%255c..%255csome/file
httр://example/..%u2216..%u2216some/file
Обратный путь в каталогах веб-приложения:
♦ исходный URL: httр://example/foo.cgi?home=index.htm;
♦ атака: httр://example/foo.cgi?home=foo.cgi.
В приведенном сценарии веб-приложение генерирует страницу, содержащую исходный код сценария foo.cgi, поскольку значение переменной home используется как имя загружаемого файла. Обратите внимание, что в данном случае злоумышленник не использует специальных символов, поскольку целью является файл в той же директории, в которой располагается файл index.htm. Кроме того, возможен вариант обратного пути в каталогах веб-приложения с использованием специальных символов:
♦ исходный URL: http://example/scripts/foo.cgi?page=menu.txt;
♦ атака: http://example/scripts/foo.cgi?page=../scripts/foo.cgi%00txt.
В приведенном примере веб-приложение загружает исходный текст сценария foo.cgi. Атакующий использует символы ../ для перехода на уровень выше по дереву каталогов и перехода в директорию /scripts. Символ %0 0 используется для обхода проверки расширения файла (приложение позволяет обращаться только к файлам TXT) и чтобы расширение не использовалось при загрузке файла.
Предсказуемое расположение ресурсов
Предсказуемое расположение ресурсов позволяет злоумышленнику получить доступ к скрытым данным или функциональным возможностям. Путем подбора злоумышленник может получить доступ к содержимому, не предназначенному для публичного просмотра. Временные файлы, файлы резервных копий, файлы конфигурации или стандартные примеры часто являются целью подобных атак. В большинстве случаев перебор может быть оптимизирован путем использования стандартного соглашения об именах файлов и директорий сервера. Получаемые злоумышленником файлы могут содержать информацию о дизайне приложения, информацию из баз данных, имена машин или пароли, пути к директориям. Скрытые файлы также могут содержать уязвимости, отсутствующие в основном приложении. На эту атаку часто ссылаются как на перечисление файлов и директорий (Forced Browsing, File Enumeration, Directory Enumeration). Вот и пример: атакующий может создать запрос к любому файлу или папке на сервере. Наличие или отсутствие ресурса определяется по коду ошибки (например, 4 04 в случае отсутствия папки или 4 03 в случае ее наличия на сервере). Ниже приведены варианты подобных запросов.
♦ Слепой поиск популярных названий директорий: /admin/, /backup/, /logs/, /vulnerable file.cgi.
♦ Изменение расширений существующего файла (/test.asp): /test.asp. bak, /test.bak, /test.
♦ Логические атаки (Logical Attacks). Атаки данного класса направлены на эксплуатацию функций приложения или логики его функционирования. Логика приложения представляет собой ожидаемый процесс функционирования программы при выполнении определенных действий. В качестве примеров можно привести восстановление паролей, регистрацию учетных записей, аукционные торги, транзакции в системах электронной коммерции. Приложение может требовать от пользователя корректного выполнения нескольких последовательных действий для решения определенной задачи. Злоумышленник может обойти или использовать эти механизмы в своих целях.
Злоупотребление функциональными возможностями
Данные атаки направлены на использование функций веб-приложения с целью обхода механизмов разграничения доступа. Некоторые механизмы веб-приложения, включая функции обеспечения безопасности, могут быть использованы для этих целей. Наличие уязвимости в одном из, возможно, второстепенных компонентов приложения может привести к компрометации всего приложения. Уровень риска и потенциальные возможности злоумышленника в случае проведения атаки очень сильно зависят от конкретного приложения. Злоупотребление функциональными возможностями очень часто используется совместно с другими атаками, такими как обратный путь в директориях и др. К примеру, при наличии уязвимости типа "межсайтовое выполнение сценариев" в HTML-чате злоумышленник может использовать функции чата для рассылки URL, эксплуатирующего эту уязвимость, всем текущим пользователям. С глобальной точки зрения, все атаки на компьютерные системы являются злоупотреблениями функциональными возможностями. Особенно это относится к атакам, направленным на веб-приложения, которые не требуют модификации функций программы. Примеры злоупотребления функциональными возможностями включают в себя:
♦ применение функций поиска для получения доступа к файлам за пределами корневой директории веб-сервера;
♦ использование функции загрузки файлов на сервер для перезаписи файлов конфигурации или внедрения серверных сценариев;
♦ реализацию отказа в обслуживании путем использования функции блокировки учетной записи при многократном вводе неправильного пароля.
Ниже приведены примеры подобных уязвимостей, взятые из реальной жизни.
Программа FormMail представляет собой приложение на языке PERL, используемое для передачи данных из HTML-формы на указанный почтовый адрес. Этот сценарий довольно удобно использовать для организации функции обратной связи на сервере. К сожалению, данная программа предоставляла злоумышленнику возможность передавать почтовые сообщения любому почтовому пользователю. Таким образом, приложение могло быть использовано в качестве почтового ретранслятора для рассылки спама. Злоумышленник применяя параметры URL GET-за-проса для указания получателя почтового сообщения, к примеру:
httр://example/cgi-bin/FormMail.pl? recipient= [email protected]&message =you% 20got%20spam
В качестве отправителя почтового сообщения указывался адрес веб-сервера, что позволяло злоумышленнику оставаться полностью анонимным.
Иногда базовый интерфейс администрирования, поставляемый вместе с веб-приложением, может использоваться с не предусмотренными разработчиками целями. К примеру, Macromedia's Cold Fusion по умолчанию имеет модуль, позволяющий просматривать исходный код сценариев. Злоупотребление этой функцией может привести к получению критичной информации веб-приложения. Удаление или отключение данной функции весьма проблематично, поскольку от нее зависят важные компоненты приложения.
Иногда изменение данных, обрабатываемых приложением, может позволить модифицировать поведение программы. К примеру, уязвимость в функции покупки приложения CyberOffice позволяла модифицировать значение цены, передаваемой пользователю в скрытом поле HTML-формы. Страница подтверждения заказа загружалась злоумышленником, модифицировалась на клиенте и передавалась серверу уже с модифицированным значением цены.
Отказ в обслуживании (Denial of Service). Данный класс атак направлен на нарушение доступности веб-сервера. Обычно атаки, направленные на отказ в обслуживании, реализуются на сетевом уровне, однако они могут быть направлены и на прикладной уровень. Используя функции веб-приложения, злоумышленник может исчерпать критичные ресурсы системы или воспользоваться уязвимостью, приводящей к прекращению функционирования системы. Обычно DoS-атаки направлены на исчерпание критичных системных ресурсов – таких как вычислительные мощности, оперативная память, дисковое пространство или пропускная способность каналов связи. Если какой-то из ресурсов достигнет максимальной загрузки, приложение целиком будет недоступно. Атаки могут быть направлены на любой из компонентов веб-приложения, например такие как сервер СУБД, сервер аутентификации и т. д. В отличие от атак на сетевом уровне, требующих значительных ресурсов злоумышленника, атаки на прикладном уровне обычно легче реализовать. В качестве примера подойдет следующий случай.
Предположим, что сервер Health-Care генерирует отчеты о клинической истории пользователей. Для генерации каждого отчета сервер запрашивает все записи, соответствующие определенному номеру социального страхования. Поскольку в базе содержатся сотни миллионов записей, пользователю приходится ожидать результата несколько минут. В это время загрузка процессора сервера СУБД достигает 60 %. Злоумышленник может послать десять одновременных запросов на получение отчетов, что с высокой вероятностью приведет к отказу в обслуживании, поскольку загрузка процессора сервера баз данных достигнет максимального значения. На время обработки запросов злоумышленника нормальная работа сервера будет невозможна. Как второй вариант – атаки на сервер СУБД. Злоумышленник может воспользоваться внедрением кода SQL для удаления данных из таблиц, что приведет к отказу в обслуживания приложения.
Недостаточное противодействие автоматизации (Insufficient Anti-automation).
Недостаточное противодействие автоматизации возникает, когда сервер позволяет автоматически выполнять операции, которые должны проводиться вручную. Для некоторых функций приложения необходимо реализовывать защиту от автоматических атак. Автоматизированные программы могут варьироваться от безобидных роботов поисковых систем до систем автоматизированного поиска уязвимостей и регистрации учетных записей. Подобные роботы генерируют тысячи запросов в минуту, что может привести к падению производительности всего приложения. Противодействие автоматизации заключается в ограничении возможностей подобных утилит. Например, файл robots может предотвращать индексирование некоторых частей сервера, а дополнительные средства идентификации – автоматическую регистрацию сотен учетных записей системы электронной почты.
Недостаточная проверка процесса (Insufficient Process Validation). Уязвимости этого класса возникают, когда сервер недостаточно проверяет последовательность выполнения операций приложения. Если состояние сессии пользователя и приложения должным образом не контролируется, приложение может быть уязвимо для мошеннических действий. В процессе доступа к некоторым функциям приложения ожидается, что пользователь выполнит ряд действий в определенном порядке. Если некоторые действия выполняются неверно или в неправильном порядке, возникает ошибка, приводящая к нарушению целостности. Примерами подобных функций выступают переводы, восстановление паролей, подтверждение покупки, создание учетной записи и т. д. В большинстве случаев эти процессы состоят из ряда последовательных действий, осуществляемых в четком порядке. Для обеспечения корректной работы подобных функций веб-приложение должно четко отслеживать состояние сессии пользователя и ее соответствие текущим операциям. В большинстве случаев это осуществляется путем сохранения состояния сессии в cookie или скрытом поле формы HTML. Но поскольку эти значения могут быть модифицированы пользователем, обязательно должна проводиться их проверка на сервере. Если этого не происходит, злоумышленник получает возможность обойти последовательность действий и, как следствие, логику приложения. В качестве примера подойдет следующее. Система электронной торговли может предлагать скидку на продукт B в случае покупки продукта A. Пользователь, не желающий покупать продукт A, может попытаться приобрести продукт B со скидкой. Заполнив заказ на покупку обоих продуктов, пользователь получает скидку. Затем он возвращается к форме подтверждения заказа и удаляет продукт A из покупаемых путем модификации значений в форме. Если сервер повторно не проверит возможность покупки продукта B по указанной цене без продукта A, будет осуществлена закупка по низкой цене.
Горячая двадцатка уязвимостей от SANSОбычному пользователю очень часто приходится слышать о появлении новых уязвимостей. Разобраться в такой каше бывает совсем непросто ввиду слабой систематизации таких сообщений, которые чаще всего представлены сухой констатацией отрывков бюллетеней безопасности корпорации Microsoft. Наиболее авторитетным источником, представляющим различные уязвимости в классифицированной форме, является The SANS Institute (http://www.sans.org/top20). В отчете SANS все уязвимости разделены на уязвимости Windows-систем, UNIX-систем, приложений (программ) и сетевых продуктов.
В объеме данного раздела подробно остановимся лишь на уязвимостях Windows-систем (с полным отчетом можно ознакомиться по адресу http://www.sans.org/top20).
ПРИМЕЧАНИЕ
Список рассматриваемых в данном разделе уязвимостей нельзя считать самым новым. Он приведен лишь как пример.
Чтобы немного четче представлять, что откуда взялось и кому все это нужно, будет более чем уместно привести «повествование временных лет» горячих отчетов SANS.
Несколько лет назад институт SANS (SANS Institute) и Национальный Центр Защиты Инфраструктуры США (National Infrastructure Protection Center, или NIPC) совместно с FBI представили документ, который по сути своей являлся самым что ни на есть настоящим отчетом, где было озвучено десять критических (на тот момент) уязвимостей, касающихся интернет-безопасности. Данный отчет за короткое время приобрел статус авторитетного руководства, которое активно использовалось различными конторами для устранения дыр ПО. Отчет содержал свежую информацию об уязвимых сервисах, компрометирующихся такой "киберзаразой" своего времени, как Blaster, Slammer и Code Red. В последующие годы отчет трансформировался в список уже из двадцати критических уязвимостей, коим и является на сегодняшний день.
Ну что ж, вот, пожалуй, и начнем.
Сервисы Windows. Семейство операционных систем платформы Windows характеризуется наличием самых разнообразных сервисов, многие из которых обеспечивают нормальную работу данной операционной системы как сетевой. К чему это мы? Наверное, к тому, что уязвимости сервисов Windows как таковые – довольно распространенное явление. Можно даже сказать больше: дыры в сервисах находили, находят и, несомненно, будут находить, благо сервисов у Windows предостаточно. Многие сервисные уязвимости эксплуатируются посредством переполнения буфера (уязвимости переполнения буфера – buffer overflow vulnerabilities), причем большинство атак подобного рода относят к категории удаленных. Удивляться этому факту особо не приходится, учитывая, что подобные сервисы – сетевые.
Небольшое лирическое отступление: наверное, многим из читателей доводилось слышать, что чем больше открытых портов в системе, тем она более уязвима. И тут должен возникнуть закономерный вопрос: как же можно минимизировать количество открытых портов? Просто. Все дело в том, что порт по сути представляет собой какое-либо сетевое приложение, взаимодействующее с подобными себе посредством сетевого интерфейса (очень упрощенно). Чаще всего какому-либо открытому порту соответствует определенное приложение (в нашем случае – служба). Из вышесказанного следует, что минимизировать количество открытых портов можно, минимизировав количество запущенных служб. В качестве горячего примера, иллюстрирующего вышесказанное, уместно привести следующее изображение (рис. 1.7).
Рис. 1.7. Запущенная служба (служба времени Windows) – открытый порт
При отключении службы времени Windows автоматически закрывается и соответствующий порт (рис. 1.8).
Рис. 1.8. Порт 123 закрыт!
Естественно, что в данной ситуации главное – не переусердствовать, для чего очень полезно ознакомиться с описанием служб Windows. Вернемся к SANS.
Согласно отчету список уязвимых служб таков (буквенно-цифровое обозначение уязвимости соответствует оригинальной классификации Microsoft):
♦ MSDTC and COM+ Service (MS05-051);
♦ Print Spooler Service (MS05-043);
♦ Plug and Play Service (MS05-047, MS05-039);
♦ Server Message Block Service (MS05-027, MS05-011);
♦ Exchange SMTP Service (MS05-021);
♦ Message Queuing Service (MS05-017);
♦ License Logging Service (MS05-010);
♦ WINS Service (MS04-045);
♦ NNTP Service (MS04-036);
♦ NetDDE Service (MS04-031);
♦ Task Scheduler (MS04-022).
Уязвимости большинства из перечисленных служб реализуются посредством удаленного выполнения кода либо отказа в обслуживании. Не вдаваясь в технические подробности, еще раз отметим, что абсолютное большинство из вышеперечисленных уязвимостей служб эксплуатируется по механизму переполнения буфера. Переполнение буфера (buffer overflows) на сегодняшний день является самой распространенной уязвимостью в области безопасности ПО. Уязвимость подобного рода широко используется в механизмах проникновения компьютерных червей, таких, например, как CodeRed, Slammer, Lovesan, Zotob и т. д. Помимо червей, уязвимости на переполнение буфера активно используются и для организации атак типа DoS (Denial of Service – отказ в обслуживании), в частности DDoS (Distributed – распределительный), поэтому сомневаться в силе и могуществе данной уязвимости просто не имеет смысла.
Рассмотрим подробнее особенности уязвимостей некоторых служб из вышеупомянутого списка.
♦ Print Spooler Service (MS05-043). Уязвимость позволяет удаленному пользователю вызвать отказ в обслуживании или выполнить произвольный код на целевой системе. Уязвимость существует из-за отсутствия проверки длины буфера в процессе spoolsv.exe. Удаленный пользователь может послать сервису специально сформированный пакет, вызвать переполнение буфера и выполнить произвольный код на целевой системе или вызвать отказ в обслуживании. Уязвимые системы: Microsoft Windows 2000, XP, 2003.
♦ Plug and Play Service (MS05-047, MS05-039). Уязвимость стандарта Plug and Play делает возможным удаленный запуск программного кода и несанкционированное локальное расширение полномочий. Описание: несколько уязвимостей форматной строки обнаружены при вызове функции wsprintfW() в библиотеке UMPNPMGR.DLL службы Plug and Play. В двух случаях проверка подлинности входных данных производится посредством сравнения соответствия ключу реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetEnum. Хотя вся ветка реестра защищена от записи для непривилегированных пользователей, злоумышленник может с помощью специально сформированной строки, содержащей произвольное количество символов обратной черты, обойти проверку подлинности. В Windows 2000, без установленного исправления MS05-039, удаленный пользователь может без процедуры аутентификации получить доступ к интерфейсу UMPNPMGR посредством именованного канала конечных RPC-точек: PIPEbrowser, PIPEsrvsvc и PIPEwkssvc. Если исправление установлено, для успешной эксплуатации уязвимости злоумышленнику потребуется авторизация. Уязвимость в Microsoft Windows XP SP2 может быть эксплуатирована лишь локальным авторизованным пользователем. Уязвимые системы: Microsoft Windows 2000 SP4, Microsoft Windows XP SP1, SP2.
♦ Server Message Block Service (MS05-027, MS05-011) – выполнение произвольного кода в Microsoft Server Message Block. Уровень опасности – критический. Уязвимость позволяет удаленному пользователю выполнить произвольный код на целевой системе. Уязвимость существует из-за недостаточной проверки входных SMB-пакетов. Удаленный пользователь может с помощью специально сформированного SMB-пакета выполнить произвольный код на целевой системе. Уязвимые операционные системы: Microsoft Windows 2000, XP, 2003.
♦ Exchange SMTP Service (MS05-021). Уязвимость Exchange Server может привести к запуску произвольного кода. Уязвимость существует в сервисе Internet Mail почтового сервера Exchange Server 5.5 и Exchange 2000 Server и может позволить нападающему установить соединение с портом SMTP этого сервера и отправить специальным образом расширенный вербальный запрос, который приведет к выделению под него большого объема памяти. Это может привести к падению сервиса Internet Mail или к отказу пакета в работе по причине недостаточного объема доступной памяти. Кроме того, в Exchange 2000 Server уязвимость позволяет атакующему, при условии создания тщательно подобранной последовательности данных, вызвать переполнение буфера, которое может привести к возможности запуска вредоносных программ в контексте зоны безопасности сервиса SMTP. Для предотвращения возможности проведения атаки можно воспользоваться специальными программами, фильтрующими SMTP-трафик перед отправкой его на Exchange Server. Как сообщает Microsoft, система Exchange Server 2003 свободна от данной уязвимости. Уязвимости подвержены компьютеры, на которых запущены Microsoft Exchange Server 5.5, Service Pack 4 или Microsoft Exchange 2000 Server, Service Pack 3.
♦ WINS Service (MS04-045) (Microsoft Windows Internet Naming Service). Проблема связана с некорректной проверкой определенных параметров запросов, в результате чего может произойти выполнение произвольного вредоносного кода на удаленном ПК. Дыра есть в операционных системах Windows NT, 2000, Server 2003 (в том числе 64-битной модификации).
♦ NNTP Service (MS04-036). Удаленный пользователь может представить специально обработанное, чрезмерно длинное сообщение, чтобы вызвать переполнение буфера в NNTP-компоненте (Network News Transfer Protocol). Успешная эксплуатация позволяет выполнить произвольный код на целевой системе, в которой используется NNTP. Уязвимость обнаружена в серверных
версиях Windows NT/2000/2003.
♦ NetDDE Service (MS04-031). Переполнение буфера обнаружено в NetDDE-службе. Уязвимость позволяет удаленному атакующему выполнить на уязвимой системе произвольный код с SYSTEM-привилегиями. Служба NetDDE отключена по умолчанию. Опасность – средняя. Уязвимые системы: Microsoft Windows NT Server 4.0 Service Pack 6a, Microsoft Windows NT Server 4.0 Terminal Server Edition Service Pack 6, Microsoft Windows 2000 Service Pack 3 и Microsoft Windows 2000 Service Pack 4, Microsoft Windows XP и Microsoft Windows XP
Service Pack 1, Microsoft Windows XP 64-Bit Edition Service Pack 1, Microsoft Windows XP 64-Bit Edition Version 2003, Microsoft Windows Server 2003, Microsoft Windows Server 2003 64-Bit Edition.
Подводя итог, совершенно очевидно, что избежать эксплуатации уязвимостей можно: достаточно лишь установить соответствующе заплатки безопасности с официального сайта Microsoft. Совершенно очевидно и другое: в информационной безопасности есть такое определение, как "окно опасности" (извините за некоторую тавтологию). Термин подразумевает под собой время с момента обнаружения конкретной уязвимости до момента выхода и установки в уязвимую систему соответствующего обновления. Так вот, очень часто это самое окно оказывается недопустимо большим, и тогда возникает закономерный риторический вопрос: а имеет ли смысл устанавливать заплатки вообще? Поразмыслив таким образом некоторое время, приходишь к некому рационалистическому компромиссу: лучше поздно, чем никогда. Яркое подтверждение тому – червь MS Blast (эксплуатирует уязвимость в службе LSASS), который и поныне можно подцепить без второго сервис-пака.
IE – генератор зла?! Оценив количество обновлений народного браузера в контексте интернет-безопасности, иначе, чем генератором зла, IE назвать достаточно трудно. Посудите сами:
♦ Cumulative Security Update for Internet Explorer (MS05-052);
♦ Cumulative Security Update for Internet Explorer (MS05-038);
♦ JView Profile Remote Code Execution (MS05-037);
♦ Cumulative Security Update for Internet Explorer (MS05-025);
♦ Cumulative Security Update for Internet Explorer (MS05-020);
♦ Cumulative Security Update for Internet Explorer (MS05-014);
♦ Windows Shell Remote Code Execution (MS05-008);
♦ Cumulative Security Update for Internet Explorer (MS04-040);
♦ Cumulative Security Update for Internet Explorer (MS04-038);
♦ Cumulative Security Update for Internet Explorer (MS04-025).
При всех "наездах" на IE, выражающихся в многочисленных отчетах об обнаруженных уязвимостях, необходимо признать, что корпорация Microsoft обеспечивает-таки какую-никакую техническую поддержку продукта, регулярно выпуская соответствующие обновления. Очередной раз критикуя браузер, который тем не менее по сей день остается одним из самых популярных продуктов в своем роде, необходимо помнить, что немалое количество обнаруженных уязвимостей IE – это не изъян самого продукта, а результат пристального внимания к IE со стороны киберсообщества (по крайней мере это официальная позиция Microsoft).
Если на ваш IE не установлены необходимые пакеты обновлений, то, чтобы подцепить какую-либо заразу, вам вовсе не обязательно что-либо скачивать или запускать. Для заражения достаточно просто посетить страницу со злонамеренным кодом.
Есть ли выход и как снизить риск поражения без установки соответствующих заплаток? Абсолютное большинство уязвимостей данного рода базируется на обработке компонентов ActiveX и активных сценариев. Для снижения риска рекомендуется поставить высокий уровень безопасности (Сервис ► Свойства обозревателя ► Безопасность) IE. Оптимальным вариантом будет ручная настройка зон безопасности (кнопка Другой), что поможет избежать некорректного отображения содержания некоторых страниц.
Библиотеки Windows. Для нормальной работы многих программ необходимы определенные библиотеки, представленные файлами с расширением DLL (Dynamic Link Library). На сегодняшний день уязвимости библиотек Windows являют собой достаточно серьезную угрозу, так как с помощью уязвимостей подобного рода возможно осуществление достаточно экзотических атак. В качестве примера можно привести поражение системы при запуске файла формата JPEG. Уязвимости библиотек более чем активно используются вредоносным ПО для установки себя в систему жертвы (так, троянский конь Trojan Phel.A для заражения системы использует уязвимость в HTML Help Library).
По классификации SANS, уязвимости библиотек Windows сгруппированы следующим образом:
♦ Windows Graphics Rendering Engine Remote Code Execution (MS05-053);
♦ Microsoft DirectShow Remote Code Execution (MS05-050);
♦ Microsoft Color Management Module Remote Code Execution (MS05-036);
♦ HTML Help Remote Code Execution (MS05-026, MS05-001, MS04-023);
♦ Web View Remote Code Execution (MS05-024);
♦ Windows Shell Remote Command Execution (MS05-049, MS05-016, MS04-037,
MS04-024);
♦ Windows Hyperlink Object Library Remote Code Execution (MS05-015);
♦ PNG Image Processing Remote Code Execution (MS05-009);
♦ Cursor and Icon Processing Remote Code Execution (MS05-002);
♦ Windows Compressed Folder Remote Code Execution (MS04-034);
♦ JPEG Processing Remote Code Execution (MS04-028).
Подробное описание вышеперечисленных уязвимостей можно найти по адресу http://www.sans.org/top20.
Последним пунктом раздела уязвимостей Windows-систем являются Microsoft Office и Outlook Express. Им соответствуют следующие записи отчета SANS:
♦ Cumulative Security Update for Outlook Express (MS05-030);
♦ Microsoft OLE and COM Remote Code Execution (MS05-012);
♦ Microsoft Office XP Remote Code Execution (MS05-005).
Технические подробности данных уязвимостей можно найти на сайте SANS, адрес которого был приведен выше.