ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ УДК 004.7.056.53 Н.Н САДОВОЙ, Ю.В. КОСОЛАПОВ, В.В. МКРТИЧЯН ПРОГРАММНЫЕ УТИЛИТЫ ДЛЯ КОНТРОЛЯ И ПРЕДОТВРАЩЕНИЯ СЕТЕВЫХ АТАК НА УРОВНЕ ДОСТУПА К СЕТИ Предлагается описание программного модуля для реализации «дружественного» взлома, реализующего один из видов атак типа “отказ в обслуживании” на сетевом уровне локальной или корпоративной компьютерной сети. С разработанным программным модулем проведены экспериментальные исследования по оценке безопасности сетей на основе операционных систем Unix и Windows. Ключевые слова: информация, алгоритм, несанкционированный доступ к данным, конфиденциальность, целостность, системы защиты, сканеры безопасности, сетевые атаки, отказ в обслуживании, “дружественный” взлом. Введение. Информация и её обработка играют ключевую роль в управлении и функционировании отделов и служб предприятия. Эффективный обмен данными между подразделениями, подразумевающий использование как корпоративной сети предприятия (Intranet), так и глобальной сети Internet, заставляет открывать имеющуюся информацию для посторонних пользователей, что даёт возможность злоумышленнику получить несанкционированный доступ к данным при их обмене [1]. Если на предприятии ограничивается доступ к информации с целью сохранения её конфиденциальности и целостности, то незащищенный обмен в современных условиях может нанести компании значительный материальный ущерб. Поэтому предприятия, активно использующие информационные системы, проявляют повышенное внимание к вопросам их безопасности, и в частности к вопросам защиты информации от сетевых атак, так как наибольший процент нарушений конфиденциальности в настоящее время приходится именно на этап передачи по сетям различных уровней. Лавинообразный рост числа внешних и внутренних компьютерных атак, которые выросли с 55% в 1995 году до 98% в 2004 году от общего числа инцидентов в области информационной безопасности предприятия, заставляет переходить от защиты отдельных компонентов информационной системы к построению комплексной системы защиты информации. О важности задачи обеспечения информационной защиты говорит тот факт, что на рынок комплексных систем защиты вышли такие гиганты информационных технологий, как Microsoft, Cisco Systems, Check Point и IBM. Цель работы. Наибольшее число атак, которые способны нарушить работу локальной и корпоративной сети, производится внутренними нарушителями. Для защиты от таких атак используются средства, предоставляемые операционной системой, и специализированные программные продукты, обеспечивающие комплексную защиту сегмента сети. Сложность и многочисленность функций, выполняемых комплексной системой защиты, может привести к тому, что в системе безопасности могут остаться "окна" для проникновения злоумышленника к конфиденциальной информации. К тому же, согласно выводам аналитиков NTA, организации практически не уделяют внимание дефектам среднего риска, концентрируясь на наиболее вероятных атаках [2]. Проверку надежности работы системы защиты производят с помощью программных средств, осуществляющих попытки её нарушения – программы "дружественного взлома" или “сканеры безопасности”. Они проверяют надёжность системы защиты, моделируя атаки на локальные компьютеры и компьютерные сети. Примерами программ-сканеров могут служить пакеты, разработанные такими фирмами- производителями, как Internet Security System, Symantec, Positive Technologies и GFI и др. Ими производятся широко используемые сканеры безопасности: Internet Scanner, Symantec NetRecon, XSpider, LanGuard и другие. Предлагаемые пакеты эмулируют не весь спектр существующих в наше время сетевых атак. Для расширения возможностей сканеров и в связи с появлением новых видов атак предлагается снабдить стандартные сканеры безопасности дополнительными программными модулями, расширяющими их возможности по реализации атак новых типов. Целью данной работы является разработка модуля, реализующего модель атаки типа "отказ в обслуживании" на уровне доступа к сегменту сети и рассмотрение методов защиты от подобной атаки. Виды атак на уровне доступа к сегменту сети. На уровне доступа к сети используется протокол ARP [3] (Address Resolution Protocol), преобразующий IP-адреса сетевого уровня в физические адреса компонентов сети – MAC (Media Access Control)-адреса, идентифицирующие сетевые адаптеры, подключённые к физическому каналу. Каждый сетевой адаптер имеет свой уникальный MAC-адрес. При получении IP-пакета сетевой адаптер инкапсулирует её в кадр и в заголовке кадра указывает MAC-адрес, по которому она должна быть доставлена. Для определения по IP-адресу его MAC-адреса в сегменте сети протокол ARP поддерживает в оперативной памяти ARP-таблицу. Когда один хост инициирует установление связи с другим хостом, он ищет MAC-адрес получателя в своей ARP-таблице. Если для нужного IP-адреса не находится требуемого элемента таблицы, хост посылает широковещательный ARP-запрос, содержащий искомый IP-адрес назначения. Целевой хост узнает свой IP-адрес, изменяет собственную ARP-таблицу, включая в нее IPи MAC-адреса отправителя широковещательного ARP-запроса. Система, пославшая запрос, получает ARP-ответ и обновляет свою ARP-таблицу. После этого возникает возможность двунапрвленного обмена между данными хостами. Уязвимость протокола ARP состоит в следующем. Сетевые сервисы большинства операционных систем принимают ARP-ответ независимо от того, был ли ими послан широковещательный ARP-запрос. Эта особенность ARP-протокола может быть использована взломщиком для подмены физических адресов узлов сети и переадресации кадров на компьютер, где их можно будет исследовать и/или изменять – атака MIM (Men in the Middle – “Человек посередине”). Такая подмена называется ARP-спуффингом. Другой вариант использования этой особенности – атака DoS (Deny of Service – “Отказ обслуживании”). Реализация DoS-атаки посредством протокола ARP заключается в передаче некорректного физического адреса хоста-приёмника ARP-ответом хостуисточнику (жертве). Это приводит к тому, что хост-приёмник не будет получать пакеты и окажется изолированным для жертвы. В случае, если таким приемником окажется сервер, то жертва не получит доступа к предоставляемым этим сервером службам. Для реализации этой атаки необходимо периодически посылать ложные ARP-ответы, так как иначе корректное функционирование сети восстановится по истечении времени жизни записи в ARP-таблице, определяемого системой. Большинство известных сканеров безопасности сети эмулируют атаку типа MIM, поэтому желательно дополнить эти сканеры программной эмуляцией атаки типа DoS, проверяя защищенность сети от этого вида атак. Ниже рассматривается алгоритм и программная реализация данной атаки. Алгоритм и программа, реализующая DoS-атаку. В качестве целей атаки данного типа можно рассмотреть как минимум две. Первая атака – локальная, ее целью является разрыв связи между двумя узлами сети: узлом-жертвой атаки и ее абонентом. При этом необходимо блокировать лишь прямую связь “жертва→абонент”, не нарушив при этом обратной связи “абонент→жертва”. Вторая цель – “глобальная”: ее задачей является разрыв связи между машиной-жертвой и всеми ее абонентами. Глобальная атака реализуется посредством применения локальной для всех абонентов жертвы в пределах сегмента сети. Отметим, что для адаптации обоих видов атак к различным операционным системам необходимо предусмотреть возможность задания периода посылки ложных ARPответов. Модель “локальной” DOS-атаки посредством ARP-спуффинга, проводимой на машине взломщика, заключается в следующем: 1. Получить доступ к сетевой карте. 2. Определить сетевые имена жертвы атаки и его абонента. 3. Используя службу сетевых имен, определить IP-адреса машин. 4. Сформировать и послать широковещательный запрос для получения MACадресов обеих систем (ARP-запрос). 5. Определить и задать интервал посылки ложных ARP-ответов. 6. Сформировать бесконечный цикл, в котором периодически посылать жертве ложные MAC-адреса абонента. Алгоритм реализации описанной модели атаки реализован программно и приведен на блок-схеме. В комментариях к каждому блоку указаны реализующие его низкоуровневые API-функции операционной системы Windows и библиотеки WinPCAP для работы с канальным уровнем стека протоколов. Методы защиты от DoS-атаки на уровне доступа к сегменту сети. В случае обнаружения предлагаемым программным модулем уязвимости сети к DoS-атаке на канальном уровне необходимо принять меры по устранению возможности ложного изменения таблицы физических адресов. Для этого существуют несколько путей защиты. Один из них заключается в использовании статической ARP-маршрутизации. При этом любые ARP-ответы будут игнорироваться. Данный подход может быть использован только в небольших сетях из-за отсутствия гибкости при изменении конфигурации сети. Наиболее приемлемым средством защиты может служить обнаружение попыток ARP-подмены. Например, в операционной системе Linux для этих целей служит специальная программа Arpwatch, которая в ходе своей работы строит таблицу соответствий IP – MAC и сохраняет ее в файл. В случае нарушения соответствия Arpwatch отправляет сообщение администратору. Этот путь также не свободен от недостатков, так как исключает возможность динамической распределения IP-адресов при использовании DHCP-серверов. Выводы. В данной работе рассмотрена программная реализация модели атаки типа "отказ в обслуживании" на уровне доступа к сегменту сети, а также описаны соответствующие методы защиты. Следует, однако, отметить, что ни один из перечисленных способов защиты не является идеальным с точки зрения соотношения безопасность/удобство. Поэтому работы по защите сетей от злоумышленника являются актуальными и на сегодняшний день. Проведенные эксперименты показывают, что к рассмотренному виду DoS-атаки уязвимы как локальные сети, основанные на операционных системах семейства Windows, так и сети, основанные на некоторых Unix-подобных системах. Библиографический список 1. Мамаев М., Петренко С. Технология защиты информации в Интернете: Специальный справочник. – СПб.: Питер, 2002. –848с. 2. Шнайер Б. Секреты и ложь. Безопасность данных в цифровом мире. – СПб.: Питер. –2003. –348 c. 3. Броерсма М. Не думайте о «дырах» свысока // Computerworld Россия, 15 июня. – 2004. –С. 48. 4. Камер Д.Э. Компьютерные сети и Internet. Разработка приложений для Internet. – М.: Вильямс, 2002. – 640 c. Материал поступил в редакцию 16.11.04. N.N. SADOVOY, Y.V. KOSOLAPOV, V.V. MKRTICHAN THE PROGRAMM UTILITIES THAT CONTROL AND PREVENT NETWORK ATTACKS AT CHANNEL LEVEL In this paper the programm unit is considered, that implements one type of deny of service attacks (DoS-attacks) for making penetration tests at the channel level of TCP/IP stack in local and enterprise networks.Some successful tests were done on the networks with Windows and Unix-like operation systems. САДОВОЙ Николай Николаевич (р. 1950), доцент (1989) кафедры «Программное обеспечение вычислительной техники и автоматизированных систем» ДГТУ, кандидат технических наук (1987). Окончил ТРТИ (1973) по специальности “Электронные вычислительные машины”. Основные направления научной деятельности: распознавание образов, методы оптимизации, разработка цифровых специализированных вычислительных устройств для задач распознавания. Автор более 40 научных трудов, в том числе трех учебных пособий, одиннадцати авторских свидетельств СССР и одного патента на изобретение. КОСОЛАПОВ Юрий Владимирович (р. 1982), студент 6–го курса кафедры «Программное обеспечение вычислительной техники и автоматизированных систем» факультета «Автоматизация и информатика» ДГТУ. Основные направления научной деятельности: математические методы защиты информации. Автор двух научных публикаций. МКРТИЧЯН Вячеслав Витальевич (р. 1982), студент 6–го курса кафедры «Программное обеспечение вычислительной техники и автоматизированных систем» факультета «Автоматизация и информатика» ДГТУ. Основные направления научной деятельности: математические методы защиты информации. Автор двух научных публикаций.