Обман систем контроля содержимого. 10 способов обойти средства контроля содержимого

Xakep, номер #046, стр. 046-062-1


Леший с Лукоморья (lukomore@real.xakep.ru)

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

Любой грамотный взломщик никогда не будет ломиться "в лоб" - он попытается обойти систему защиты и зайти с черного хода. Не исключением являются и средства контроля содержимого, которые занимаются тем, что ищут в почтовом или Web-трафике непотребные слова, запрещенные вложения (avi'шники, mp3, zip и т.д.). По заявлению разработчиков эти средства могут анализировать архивы до 50 уровней вложенности, понимать различные кодировки и применять другие способы анализа над SMTP или HTTP-сообщениями. Однако, как это уже не раз бывало, умные люди находили, находят и будут находить способы обхода самых изощренных защитных механизмов.

Кстати, не стоит думать, что контроль содержимого проводится только специальными средствами, такими, как: MAILsweeper, MailMarshal или Дозор. Аналогичные подсистемы, только с меньшей функциональностью, существуют и в антивирусных продуктах, и в файрволах, и даже в обычных почтовых программах. И в этих средствах также существуют ошибки, которыми мы можем воспользоваться. Например, 19 мая была обнаружена дыра в межсетевом экране SonicWALL SOHO (SonicWALL SOHO3 Firmware version: 6.3.0.0, ROM version: 5.0.1.0), которая позволяла обойти встроенный механизм блокировки доступа к определенным Web-серверам.

Шифрование данных

Для того чтобы средства контроля содержимого могли нормально выполнять свою работу, они должны "понимать" трафик. Поэтому самый простой способ обмана - применение шифрования. Зашифрованный трафик не сможет быть проанализирован никаким, даже самым навороченным средством. Кстати, этот способ позволяет обойти не только средства анализа контента, но и антивирусные средства и системы обнаружения атак. Все, что можно сделать с зашифрованным трафиком, - это обнаружить его и отбросить (так, например, делает SECRETsweeper). Конечно, это не самый лучший способ, но лучше что-то, чем ничего.

Очень похожий способ - использование кодировок, "непонятных" для системы анализа контента. Например, тег <script>, который очень часто используется для отсеивания скриптов в Web-трафике, может быть закодирован как {'<', 0, 's', 0, 'c', 0, 'r', 0, 'i', 0, 'p', 0, 't', 0, '>', 0 в UCT-2 или <+AHM-+AGM-+AHI-+AGk-+AHA-+AHQ-> в UTF-7.

Подмена URL

Использование прокси-серверов, анонимайзеров и ремейлеров позволяет скрыть или подменить исходный адрес, что, в свою очередь, поможет обойти системы контроля содержимого, использующих в качестве критерия отсеивания именно IP-адрес или почтовый адрес. Данные методы уже не раз описывались на страницах ][, и поэтому я не буду подробно на них останавливаться. А вот на разнообразии задания Web-адресов я бы хотел остановиться более подробно. Многие знают, что адрес сервера, к которому необходимо обратиться, может быть задан в виде символьного (http://www.securityfocus.com/) или IP-адреса (http://66.38.151.10/). Однако ты с тем же успехом можешь использовать шестнадцатеричное и даже восьмеричное представление IP-адреса. В частности, для вышеуказанного сайта SecurityFocus это будет http://0x42.0x26.0x97.0x0A/ и http://0102.046.0227.012/ соответственно. Ты думаешь, что это все. Но это не так. Помимо данных вариантов ты можешь комбинировать их в любой последовательности, например, http://66.0x26.0227.10 и т.д.

Содержание  Вперед на стр. 046-062-2