Защита от хакеров корпоративных сетей
Шрифт:
Принимая во внимание незначительную вероятность возникновения неустойчивых отказов в современных компьютерных системах (в большей или меньшей степени подчиняющихся ярко выраженным детерминированным законам), неудивительно, что фальсифицированные отказы происходят вроде как случайно, как будто кто-то «икает» в сети, и входят в число наиболее эффективных атак на сеть.
Впервые автор прочитал об использовании управляемых отказов как о средстве хирургического влияния на поведение жертвы в документе, посвященном дискуссии RProcess о выборе DoS. Документ находится по адресу www.mail-archive.com/coderpunks%40toad.com/msg01885.html. Rprocess отметил следующую чрезвычайно жизнеспособную методологию влияния на поведение пользователя, а также последующий эффект, который имеет отношение к криптографической защите:
«Выборочно проанализировав отказы в обслуживании,
Например, пользователь X пытается создать учетную запись nym (учетную запись, содержащую данные идентификации для обеспечения анонимности соединений электронной почты), повторно используя отравителей A и B. Не получилось. Он еще раз создает учетную запись nym, используя отправителей A и C. Это работает, поэтому он использует только что созданную учетную запись. Таким образом, пользователь X выбрал отправителя C и отказался от услуг отправителя B. Если злоумышленник вынудит отправителей A и C обменяться почтой или у него окажутся их ключи, но при этом он не сможет скомпрометировать B, то он может добиться того, что пользователи будут использовать отправителей A и C, саботируя сообщения B. Для этого ему надо разрешить обмен с отправителем A и отказаться от некоторых сообщений, связанных с B. Или он может добиться этого, извне прерывая соединение с B».
Злоумышленник, используя уязвимость одного из слабых мест системы, добивается того, что пользователи стекаются к провайдеру, который с их точки зрения менее уязвим и более стабилен. В этом заключается суть обмана. Заставьте людей думать, что они что-либо делают только потому, что они хотят это делать. Автор уже говорил ранее, что реклама – это социальная инженерия. Простой пропуск каждого сообщения выбранного вида привел бы к предсказуемости и очевидности. Однако понижение надежности, особенно в Интернете, предоставляющем максимум возможностей с одновременным освобождением от всякой ответственности, гарантирует сетевым администраторам замаскированные и недоказуемые ошибки в работе сети и подталкивает пользователей к использованию более стабильного с их точки зрения (но тайно скомпрометированного) сервера / сервиса провайдера.
Примечание
RProcess завершил реинжиниринг Traffic Analysis Capabilities правительственных организаций. Результаты реинжиниринга расположены по адресуБыло выяснено, что Traffic Analysis Capabilities основан на предположении, что чем сложнее для организаций было взломать сервис, тем менее вероятно, что они разрешат ему остаться. Этот результат следует воспринять с некоторой долей скепсиса, но, как и большинство других материалов Cryptome, с ним стоит ознакомиться.
Приманка и переключатель: фальсификация использования SSL
Если читателю интересно, то пусть он попытается выяснить, на чем основана уверенность пользователя в том, что он подключился к Web-сайту при помощи протокола SSL? Это не праздный вопрос. Большинство передаваемых по протоколу HTTP данных в любом случае передаются в открытом виде. По каким признакам пользователь сможет определить, поддерживает или не поддерживает шифрование и удостоверение данных при помощи протокола SSL один Web-сайт из сотни других?
Обычно браузер сообщает пользователю об использовании протокола SSL при помощи нескольких драгоценных пикселов на экране монитора:
• значка «блокировки» в строке состояний;
• адресной строки, в которой содержится ссылка на запрашиваемый сайт и буква s после названия протокола http;
• иногда всплывающего диалогового окна, информирующего пользователя о входе в безопасную зону или выходе из нее.
Проблема заключается в том, что делается попытка установить подлинность массива пикселов по совпадению с тем, что описано в протоколе HTML, формате JPEG и других протоколах уровня представления, использующих протокол SSL. Но в действительности пользователь не знает, что было послано по сети. Вместо этого он доверяет браузеру оповестить его об использовании криптографии. Но как браузер сможет это сделать? При помощи массива пикселей.
Подтверждение подлинности одного набора образов с другим происходит в предположении, что один из них никогда не содержится в другом. Это неверно, и об этом свидетельствует рис. 12.2, расположенный по адресу www.doxpara.com/popup_ie.html.
Рис. 12.2.
Заверена ли подлинность всплывающего объявления по протоколу SSL?X10, позорно известный спаммер псевдопорнографических окон, на самом деле не имеет никакого отношения к этому окну, не говоря уже об использовании протокола SSL для подтверждения его подлинности. Но насколько известно, эта экранная форма не только прибыла с X10.com, но и была еще заверена как страница, прибывшая оттуда. Как была создана эта страница? Давайте начнем с рассмотрения ее описания на языке разметки HTML:
[root@fire doxpara]# cat popup_ie.html
<HTML>
<HEAD>
<script type=“text/javascript”><!—
function popup {
window.open(“http://www.doxpara.com/x10/
webcache.html?site=https://www.x
10.com/hotnewsale/
webaccessid=xyqx1412&netlocation=241&block=121&pid=811
22&&sid=1‘,’‘,’width=725,height=340,resizable=1,menubar=1,toolbar=1,stat
usbar=0,location=1,directories=1\');
}
//—></script>
</HEAD>
<BODY BGCOLOR=“black” onLoad=“popup”>
<FONT FACE=“courier” COLOR=“white”>
<CENTER>
<IMG SRC=“doxpara_bw_rs.gif”>
<BR><BR>
Please Hold: Spoofing SSL Takes A Moment.
Activating Spam Subversion System...
</BODY>
</HTML>Описание страницы начинается с определения функции JavaScript по имени popup. Эта функция сначала выводит новое окно, используя основные возможности JavaScript. Затем она удаляет из нового окна строку состояния, что является необходимым, поскольку планируется заменить ее своей строкой состояния. И наконец, функция определяет фиксированный размер окна и использует чисто хакерский прием для заполнения строки адреса любой правдоподобной информацией, которая маскирует злоумышленника. После загрузки страницы эта функция будет тут же выполнена со всеми вытекающими отсюда последствиями. В следующей секции будет показано, насколько эффективна эта функция.
Приоткрывая завесу
Прелести монокультуры: темные стороны работы в IE WEB
Большинство из рассмотренных методов браузера Internet explorer (IE) можно реализовать в модели документов, поддерживаемой другими браузерами. Но почему не нравится, когда IE обслуживает более 90 % сети Web? Изменчивость – фактически одна из основных возможностей противостоять сетевым атакам. Идея состоит в том, что если злоумышленнику легко предсказать, что пользователь привык видеть на экране монитора, то у него появляется хорошая возможность подстроиться под ожидания пользователя. Достаточно интересно, что поддерживаемая Windows XP оболочка является фактически позитивным шагом, направленным на защиту против подобных способов атак. Если нельзя выдать удаленный запрос для определения используемой пользователем оболочки, то нельзя удаленно имитировать ее.
С другой стороны, Internet Explorer 6 обладает странной забывчивостью сохранять активную строку состояния, что сильно облегчает задачу злоумышленнику, переводя тем самым задачу фальсификации в разряд почти ненужных (хотя по-прежнему злоумышленник должен угадать, стоит ли что-нибудь фальсифицировать или нет).
На этот раз классическое возражение почти точно: «Это не ошибка, это – особенность».
Блокировка: фальсификация строки состояний в HTML. Наиболее известным признаком обеспечения безопасности при помощи протокола SSL является появление значка блокировки в виде замка в нижнем правом углу экрана. Ожидаемая последовательность действий злоумышленника, бросающего вызов системе безопасности, может быть следующей. Для того чтобы подделать ключ SSL, злоумышленник должен пройти весь внутренний процесс аутентификации браузера. Только после этого у него появится возможность выдать пользователю фальсифицированное уведомление о безопасной работе. Поскольку с точки зрения криптографии подобный ключ сгенерировать невозможно, то предполагалось, что блокировку нельзя фальсифицировать. Но злоумышленник может сделать проще: отключить строку состояния пользователя и вручную пересоздать ее, используя простой способ изменения пикселей в правом углу. Первоначально отключение строки состояния не рассматривалось как угроза безопасности, возможно потому, что Web-страницы защищены от изменения установок собственной строки состояния. Но разработчики, льстящие рекламным дизайнерам, создали очередной класс объекта – всплывающее окно с совершенно новым набором свойств. Если читатель обратил внимание, в функцию popup включена возможность задания не только адреса, но и высоты, ширины и других нечисловых свойств создаваемого окна, включая возможность установки параметра statusbar в 0 (statusbar=0). Вот эта возможность и используется для преодоления защиты протокола SSL.