Современная защита от сетевых угроз – безопасность реальна?

Современная защита от сетевых угроз – безопасность реальна?

Современные средства защиты содержат модули анализа трафика, которые выдают предупреждение по факту срабатывания некоторого правила, суть которого сводится к анализу последовательности символов в потоке информации. Соответственно критичным является корректный разбор и нормализация передаваемых данных. Злоумышленники пользуются этой особенностью и пытаются «обойти» механизмы детектирования с помощью различных методик. Техники обхода были известны еще с середины 90-х годов, однако лишь в прошлом году их подробное изучение позволило усомниться в адекватности применяемых средств обеспечения безопасности.



Ландшафт современных сетевых угроз значительно изменился за последние годы. Основным трендом является криминализация хакерской активности, когда получение доступа к информационным активам и кража информации становится в первую очередь задачей извлечения финансовой выгоды. Также меняется и вектор атак – они становятся все более разнонаправленными, включают не только использование публичных или «zero-day»-эксплоитов, но и задействуют заказное программное обеспечение, подготавливаемое специально под конкретные информационные системы.

Традиционно атаки используют уязвимые места определенных прикладных программ (или приложений), становясь все более изощренными, чтобы иметь возможность проходить через рубежи сетевой защиты, так или иначе присутствующие в каждой организации. Очень часто им это удается, примеров тому масса, самыми яркими из которых являются эпидемии червей Sasser, Conficker, и ZeuS. Недавние подтвержденные взломы таких гигантов, как Google и RSA (EMC), не говоря уже про Пентагон, являются ярким примером того, что никто в достаточной степени не защищен.

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

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

Итак, суть самого проникновения сводится к тому, что злоумышленник, используя брешь в программном обеспечении (системном или прикладном), не задумываясь о том, что вызовы и параметры вызовов функций кому-то придет в голову использовать не по прямому назначению, может проникнуть в целевую систему и, закрепившись, реализовать свои коварные планы. Все ли бреши закрыты на сегодняшний день? Статистика уязвимостей от таких анатлитических команд, как IBM X-Force (ранее ISS), показывает, что даже в прошлом году все ведущие мировые программные гиганты имели достаточно количество незакрытых «заплатками» уязвимостей. Причем, если посмотреть по критичности этих уязвимостей, то более 70% всех вновь обнаруженных «дыр» высокого и критического уровня не были закрыты на момент публикации. И это на фоне того, что другое уважаемое аналитическое агенство Verizon Business рапортовало, что направленность атак сменилась: теперь вновь угроза кроется не внутри сети (защищаться нужно не от инсайдеров), а снаружи, в Интернете, откуда и происходит большинство проникновений.

Таким образом, проблема очевидна: атаки происходят из Интернет, а системы, которые подвергаются атакам по тем или иным причинам не являются защищены от известных (не говоря уже про так называемые «zero-day») эксплоитов. Иногда это происходит по причине того, что самих патчей не существует, а иногда потому, что трудозатраты на инсталляцию и тестирование этих самих исправлений (а также борьбу с последствиями установки исправлений вследствие неизбежно возникающих сбоев в работе ПО) очень велики. Одновременно большая часть производителей рассказывает о том, что технологии так называемого «виртуального патча» являются универсальным лекарством от всех бед – достаточно установить систему IDS/IPS или межсетевой экран (МЭ) с функциями глубокой инспекции потоков (Deep Packet Inspection, DPI), и проблема решена!

Однако, если подойти к данной постановке вопроса с разумным скептицизмом, то в голову сразу закрадется мысль, что «ничего не бывает бесплатно», и где-то должен скрываться подвох. А заключается он в том, что система IPS или МЭ с DPI действительно могут распознать в сетевом потоке нежелательную информацию, однако для этого они должны определенным образом принимать и обрабатывать пакеты и содержащиеся в них данные.

Так, все современные средства защиты, включая МЭ, IDS/IPS, системы мониторинга сетевых потоков, выявления утечек и другие, работающие на уровне приложений (анализ информации на котором и требуется для эффективного блокирования эксплоитов) содержат в себе модули анализа трафика, которые выдают предупреждение (или другую ответную реакцию) по факту срабатывания некоторого правила, суть которого в большинстве случаев сводится к анализу последовательности символов в потоке информации. Вне зависимости от того, сигнатурный или статистический это анализ, критичным является корректный разбор и нормализация данных прикладного протокола.

Злоумышленники зачастую пользуются этой особенностью и пытаются «обойти» механизмы детектирования с помощью различных методик, которые объединены общим термином «техники обхода» (evasion techniques). Техники обхода были известны еще с середины 90-х годов, однако лишь в прошлом году их подробное изучение специалистами компании StoneSoft позволило усомниться в адекватности применяемых средств обеспечения безопасности. Компания StoneSoft назвала свое открытие «динамическими» или «продвинутыми» техниками обхода (Advanced Evasion Techniques, AET).

Суть его сводится к тому, что унаследованные или современные техники обхода при определенном использовании позволяют послать запрос на атакуемый узел таким образом, что средства сетевой защиты не будут детектировать факт использования уязвимости или проявления аномальной активности другого вида. Сутуация усугубляется тем, что техники обхода можно комбинировать в самых разнообразных вариантах. Текущее их количество по теоретическим подсчетам составляет порядка 231. На практике выявлено и подтверждено (пока что) гораздо меньше. Но работа идет и поэтому количество «работающих» техник обхода продолжает увеличиваться. Откуда берутся эти цифры? Рассмотрим на примере модели OSI (рис. 1).

Рисунок 1 - Иллюстрация количества техник обхода на примере стека модели OSI

На каждом из логических уровней модели существует свой набор протоколов, фактически использующих формализованные структуры для передачи информации. Так, например, на сетевом уровне есть протокол IP, на транспортном TCP или UDP. Что касается сессионного и вышележащих уровней (которые, как известно, отсутствуют в стеке TCP/IP), то здесь с вариативностью тяжелее, поскольку эти уровни «условные» и примеры протоколов будут сильно зависеть от применяемого прикладного сервиса. Но если взять для наглядности один из самых уязвимых и «опасных» (с точки зрения возможности реализации удаленных атак) протоколов операционной системы Windows – RPC (Remote Procedure Call, удаленный вызов процедур), то для него цепочка может выглядеть как NetBIOS – SMB – MSRPC. Однако, что еще более интересно, MSRPC может использовать не только транспорт NetBIOS для представления информации. Вместо обычного SMB (1.0) в цепочке протоколов допустимо появление SMB2, равно как и передача может осуществляться поверх HTTP, и т.д. Так вот суть в том, что динамические техники обхода можно применять и комбинировать для каждого из используемых уровней. Так, на уровне IP мы знаем такие «традиционные» варианты, как IP fragmentation, для TCP соответственно TCP segmentation, а для SMB – fragmentation или transaction manipulation и т.д. К слову сказать, эти методы все еще вполне эффективны и работают против некоторых из систем (несмотря на то, что бы известны с конца 90-х годов). Но помимо этих методов, стали известны такие менее «распространенные», как IP random options, TCP urgent pointer, TIME_WAIT, SMB padding, method fragmentation или session mixing и много других. Если подсчитать число всевозможных комбинаций, то получится обозначенная величина.

Однако рисуется еще более удручающая картина, когда в результате исследований, проведенных на реальном оборудовании и реальных сетевых потоках, выяснилось, что возможности устройств оказываются в большинстве случаев ограничены базовым разбором стека протоколов TCP/IP (и соответственно нормализацией получаемых данных). Сложно говорить об особенностях технологий разбора различных продуктов и решений, которые для любой компании являются ее ноу-хау (и, следовательно, скрыты), однако результаты позволяют сделать следующий вывод: нормализация (т.е. приведение к унифицированной форме представления) данных во многих широко применяемых сегодня средствах сетевой защиты практически не используется (т.е. используется, но на базовом уровне, максимум в рамках классических, известных технологий). А за емкими названиями техник блокирования «zero-day» уязвимостей скрывается, по большому счету, «классический» сигнатурный анализ. Безусловно, в коммерческих решениях даже он шагнул далеко вперед по отношению к свободно распространяемому программному обеспечению, однако грустный отпечаток на статистику накладывает тот факт, что, к примеру, та же эпидемия Conficker даже сегодня может остаться незамеченной, несмотря на то, что уже несколько лет правила под этот червь прочно занимают места в базе данных анализа трафика. Это же касается средств детектирования утечек, средств межсетевого экранирования с интегрированными модулями IDS/IPS и т.д. А виноват в этом недостаточный уровень разбора сетевых протоколов, точнее его глубина.

К слову сказать, причиной работоспособности AET является в том числе так называемый «принцип устойчивости» (robustness principle), лежащий в основе работы стека протоколов TCP/IP. Согласно этому принципу отправитель сообщения должен быть консервативен при отправке, а получатель - придерживаться либеральных правил приема информации. Злоумышленники при атаке ресурсов выступают в роли отправителей. А когда они следовали правилам (рис. 2)?

Рисунок 2 - Средства безопасности работают только если следовать стандартным правилам

Проблема оказывается глобальной. Поначалу она не рассматривалась как серьезная, однако за прошедшие полгода такие именитые международные организации, как CERT, ICSA Labs, Gartner, NSS Labs не только подтвердили факт существования данных принципиальных уязвимостей, но и обозначили серьезность проблемы.

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

Причем этот подход не работает как минимум по двум причинам:

1. Применение некоторых из техник «обхода» (т.е. различные способы фрагментации или переупорядочивания данных) является вполне нормальной и, более того, распространенной практикой для сетевых приложений. Соответственно просто запретить их использование – все равно что запретить работу приложения в сети организации, поскольку блокирование факта применения необычного способа представления информации приложением будет приводить к тому, что легитимный трафик будет прерываться, т.е. появится значительный рост ложных положительных срабатываний (ошибок первого рода), причем без особого влияния на снижение ложных отрицательных (ошибок второго рода).

2. Количество комбинаций техник обхода велико. А поскольку это всего лишь «транспорт» для доставки экплоита в целевую систему, то добавление в базу знаний системы IDS/IPS сигнатуры под все возможные комбинации эксплоитов и техник обхода приведет к «взрывоподобному» росту этой базы. Так, в известной базе данных CVE на текущий момент более 46000 записей. Из них в базу знаний системы мониторинга попадает лишь малая часть – средний размер базы порядка 3000 записей, из которых в лучшем случае половина (т.е. примерно 1500) активны и используются для анализа трафика. Даже с этими параметрами производительность систем зачастую оставляет желать лучшего, не говоря уже про активацию всех правил из базы знаний. А теперь представим, что будет, если потребуется добавить сигнатуры хотя бы для 1% возможных техник обхода? Это означает, что придется написать порядка миллиона сигнатур, что изначально обречено на провал.

Следовательно, единственный выход – это модернизировать механизмы инспекции трафика, которые заложены в ядре системы. Если быть точным, то в первую очередь нужно совершенствовать модули нормализации данных, в задачу которых входит считывание проходящих пакетов и представление в виде, пригодном для последующего применения правил выявления аномалий и сравнения по сигнатурам. А ввиду отсутствия на текущий момент доступных средств тестирования на АЕТ решений и систем (соответствующее программное обеспечение, похоже, есть только у компании-открывателя, StoneSoft), возникает проблема определения «реальности» уровня информационной безопасности в организации, которую дают используемые средства сетевой защиты. Причем эту проблему также нужно решать как можно скорее, пока в арсенале хакеров не оказались автоматизированные утилиты, использующие динамические техники обхода.

Таким образом, с одной стороны, есть проблема корректности разбора и нормализации информации средствами сетевой защиты, а с другой – проблема тестирования адекватности реализации этих методов разбора и нормализации. Очевидно, что с гандикапом нужно бороться всем без исключения производителям средств сетевой защиты, которые хотят обеспечивать «реальную» безопасность. А преимущество есть у тех(ой) компаний(и), которые(ая) первыми(ой) уделили(а) должное внимание этим вопросам.

 

Источники информации:

[1] - Six tips for protecting critical data against Advanced Evasion Techniques, http://www.stonesoft.com/en/press_and_media/releases/en/2011/24032011.html?uri=/en/press_and_media/releases/en/index.html

[2] - New Advanced Evasion Techniques Discovered and Disclosed for Global Vulnerability Coordination, http://www.stonesoft.com/en/press_and_media/releases/en/2011/15022011.html?uri=/en/press_and_media/releases/en/2011/index.html

[3] - Stonesoft Discloses First Details of Advanced Evasion Techniques, http://www.stonesoft.com/en/press_and_media/releases/en/2010/16122010.html?uri=/en/press_and_media/releases/en/2010/index.html

[4] - Stonesoft Releases Technical Paper on Advanced Evasion Techniques, http://www.stonesoft.com/en/press_and_media/releases/en/2010/30112010.html?uri=/en/press_and_media/releases/en/2010/index.html

[5] - Stonesoft Corporation: Advanced Evasion Techniques Bypass Almost All Current Network Security Systems Without Leaving A Trace, http://www.stonesoft.com/en/press_and_media/releases/en/2010/18102010.html?uri=/en/press_and_media/releases/en/2010/index.html

[6] - Stonesoft Corporation: New Network Security Threat Category Puts The Functionality Of Organizations’ Data Capital And Systems At Risk, http://www.stonesoft.com/en/press_and_media/releases/en/2010/04102010.html?uri=/en/press_and_media/releases/en/2010/index.html

[7] - Новый пласт угроз информационной безопасности – динамические техники обхода, Журнал "Information Security/ Информационная безопасность" #6, 2010

[8] – IBM XForce Threat Reports, http://www-935.ibm.com/services/us/iss/xforce/trendreports/

[9] – Robustness principle, http://en.wikipedia.org/wiki/Robustness_principle

[10] – Gartner on AETs, http://www.antievasion.com/gartner

[11] – CVE Vulenrabilities in NVD, http://web.nvd.nist.gov/view/vuln/search?execution=e2s1

Подпишитесь
в Facebook

Я уже с вами
Telegram AMПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.

RSS: Новые статьи на Anti-Malware.ru