Комплекс сетевой защиты

Автор работы: Пользователь скрыл имя, 17 Сентября 2011 в 20:38, дипломная работа

Описание работы

В современном мире происходит стремительное развитие компьютерной техники и компьютерных технологий. Важное место среди них занимают технологии вычислительных и информационных сетей. Создание и развитие Internet и World Wide Web привело к новому этапу развития информационного общества. Но, с другой стороны, развитие современных сетевых информационных технологий привело к росту числа компьютерных преступлений и связанных с ними хищений информации, а также материальных потерь.

Содержание работы

1. Введение 8
2. Задача сетевой защиты и методы её решения 10
2. 1. Брандмауэр 10
2. 2. Фильтры пакетов – простые и кумулятивные 11
2. 3. Прокси-брандмауэры и сервера уровня соединения 13
2. 4. Шлюзы приложений и сервера прикладного уровня 14
2. 5. Системы обнаружения компьютерных атак (СОА) 15
2. 6. Классификация систем обнаружения атак (СОА) 17
2. 7. Варианты реакций на обнаруженную атаку 19
2. 8. Характеристики средств сетевой защиты 21
2. 9. Выводы 25
3. Постановка задачи 27
3. 1. Концепция программного средства 27
3. 2. Сетевое программирование под OC Windows 28
3. 3. Атакующие воздействия для программного средства 31
3. 3. 1. Атака Smurf 31
3. 3. 2. Атака Tribe Flood Network 33
3. 3. 3. Атака WinFreeze 34
3. 3. 4. Атака ICMP Flood 36
4. Модель системы 37
4. 1. Схема взаимодействия модулей системы 44
4. 2. Описание модулей 46
4. 3. Описание программных элементов 47
5. Сведения о реализации 62
6. Экспериментальная часть 64
7. Разработка документации 73
7. 1. Техническое задание 73
7.2. Руководство оператора 76
8. Бизнес-план 78
8. 2. Характеристика ПП 78
8. 3. Исследование и анализ рынка 80
8. 4. Производственный план 82
График безубыточности 96
9. Безопасность и экологичность проекта 97
9. 1. Введение 98
9. 2. Характеристика производственного помещения 99
9. 3. Производственная санитария 100
9. 4. Электробезопасность 101
9. 5. Пожаробезопасность 102
9. 6. Контроль над электромагнитным излучением 104
9. 7. Освещение 107
9. 8. Вентиляция 108
9. 9. Контроль шума 110
9. 10. Эргономичность 111
9. 11. Вывод 113
10. Заключение 114
11. Список литературы 115
Приложение 116
Файл http_plugin.cpp 116
Файл Packet.cpp 128
Файл Packet.h 130
Файл Raw_send.cpp 132
Файл http_conf.inf 137
Файл http_client.htm 137
Файл http_icmp_form.htm 138
Файл http_icmp_reply.htm 139
Файл http_attack_form.htm 140
Файл http_attack_reply.htm 142
Файл Packet.cpp 142
Файл Packet.h 142
Файл pop3_conf.inf 142
Файл pop3_main.cpp 143

Файлы: 1 файл

Пояснительная записка.doc

— 1.00 Мб (Скачать файл)

Вот еще  одна причина, по которой следует  запретить вхождение извне пакетов  с широковещательным адресом  — это не позволит использовать вашу сеть для распространения атаки  Smurf.

3. 3. 2.  Атака Tribe Flood Network

 

Атака Tribe Flood Network (TFN) является еще одной атакой отказа в обслуживании, в которой используются ICMP-сообщения (рис. 2). В отличие от атаки Smurf, организуемой с одного компьютера с применением одной сети для ее распространения, атака TFN использует большое количество распределенных хостов. Эти хосты часто называют хостами-демонами. Поэтому термин распределенная атака отказа в обслуживании (DDoS) наиболее точно определяет использование нескольких рассредоточенных в Internet хостов для совместного осуществления атаки. 

Рис. 2. Схема атаки Tribe Flood Network

Для проведения этой атаки требуется установка  программы на ведущем компьютере - "мастере" TFN и на нескольких агентах— хостах-демонах TFN. Как правило, в качестве хостов-демонов используются скомпрометированные компьютеры. Мастер TFN дает хостам-демонам команду на атаку (часто одновременную) избранной цели. Взаимодействие между мастером и хостами-демонами осуществляется с помощью эхо-ответов ICMP. Демоны TFN могут организовать UDP-наводнение, SYN-наводнение, наводнение эхо-запросами ICMP или атаку Smurf.

Мастер  информирует хосты-демоны о начале атаки с помощью эхо-ответов  ICMP. При этом тип атаки определяется по значению поля идентификации в ICMP-заголовке эхо-ответа. В области данных такого эхо-ответа передаются необходимые аргументы.

Почему  для организации атаки вместо эхо-запросов применяются эхо-ответы? Дело в том, что на многих узлах  в целях обеспечения безопасности блокируются внешние эхо-запросы  ICMP. В то же время, прохождение эхо-ответов часто разрешается. Это дает возможность локальным пользователям узнать о доступности внешних хостов, но весьма опасно с точки зрения рассылки неконтролируемых эхо-запросов ICMP.

Одновременное использование нескольких распределенных хостов для наводнения пакетами избранной цели позволит провести успешную атаку отказа в обслуживании против хоста или сети. Чтобы получить более подробную информацию об атаке TFN, зайдите на сайт www.cert.org и обратитесь к отчету об инциденте IN-99-07.

3. 3. 3. Атака WinFreeze

 

Атака WinFreeze, по существу, заставляет избранный компьютер атаковать самого себя.

    router > victim.com: icmp:  redirect 243.148.16.61 to host victim.com

    router > victim.com: icmp:  redirect  110.161.152.156  to host victim.com

    router > victim.com: icmp:  redirect 245.211.87.115  to host victim.com

    router  > victim.com: icmp:  redirect 49.130.233.15  to host victim.com

    router  > victim.com: icmp:  redirect  149.161.236.104  to host victim.com

    router > victim.com: icmp:  redirect 48.35.126.189  to host victim.com

    router > victim.com: icmp:  redirect 207.172.122.197 to host victim.com

    router  > victim.com: icmp:  redirect  113.27.175.38  to host victim.com

    router  > victim.com: icmp:  redirect  114.102.175.168  to host victim.com 

С помощью  ICMP-сообщения redirect хост-отправитель уведомляется о выборе для доставки сообщения неоптимального маршрутизатора и о необходимости добавить адрес оптимального маршрутизатора в таблицу маршрутизации. При наводнении этими ICMP-сообщениями о перенаправлении атака WinFreeze может вызвать отказ в обслуживании уязвимого хоста, работающего под управлением Windows NT. Атака выполняется в сети атакуемого компьютера, а ICMP-сообщения приходят от имени маршрутизатора этой сети. При получении массы сообщений redirect атакованный хост пытается внести изменения в таблицу маршрутизации, и ресурсы центрального процессора в основном тратятся на обработку поступающих пакетов.

В этом примере маршрутизатор router заставляет хост victim.com перенаправить отправляемые им (хостом) пакеты на самого себя. В результате при попытке внести многочисленные изменения в таблицу маршрутизации хост victim. com может не справиться с другими возложенными на него задачами.

 

3. 3. 4.  Атака ICMP Flood

 

Атака ICMP Flood представляет из себя лавинное затопление ICMP-пакетами. Как правило, обычные ICMP-пакеты поступают в локальную сеть извне не быстрее, чем один пакет в минуту. Непрерывное же поступление большого количества пакетов будет означать, скорее всего, атаку лавинным затоплением.

Это может  привести к полной блокировке работы сервера.

 

4.  Модель системы

 

     Система обнаружения атак (СОА) представляет из себя клиент-серверную пару приложений – отладочный генератор атак (клиент) и, собственно, система обнаружения  атак (сервер).  Обе программы являются консольными Win32-приложениями на базе библиотеки Windows Sockets v2.0. Кроме того, предусмотрена система удалённого управления и администрирования клиентом на базе протокола HTTP и многопоточной структуры клиента. Это значит, что клиент запускает дополнительную нить (тред), в которой работает соответствующий HTTP-сервер, который и даёт возможность УДАЛЁННО и ДИНАМИЧЕСКИ администрировать и управлять им.

     HTTP-сервер даёт возможность выбрать ручной и автоматический режимы генерации сетевых атак, а также динамически, во время работы программы, выбирать и проводить одну из предопределённых атак.

     Также реализована система уведомления  администратора сети об атаке –  выдачей сообщения на консоль  и посредством электронной почты. Сервер, как и клиент, имеет многопоточную архитектуру, и при начале работы запускает дополнительную нить (тред), в которой работает POP3-сервер, к которому может подключиться сторонняя почтовая программа и проверить наличие сообщения об атаке. Как только сервер регистрирует атаку, он сразу же помещает соответствующее сообщение в электронный почтовый ящик, откуда его можно получить при помощи сторонней почтовой программы. На рис. 3 представлена диаграмма задач, решаемых системой. 

 

 

Рис. 3.  Диаграмма задач, решаемых системой 

На рисунке 4 приведена диаграмма классов  и их взаимодействия.

Рис. 4.  Диаграмма классов и их взаимодействия 

На рисунке 5 приведена блок-схема алгоритма  генерирования атак.

 

Клиент raw_send.exe

Возникновение временной нити при HTTP-запросе

Получение параметров от HTTP-клиента  

Создание пакетов  

Создание «сырого» сокета  

        Отправка пакета на сервер 

Вывод на экран  содержимого пакета

Рис. 5.  Блок-схема алгоритма генерирования атак  
На рисунке 6 приведена блок-схема алгоритма обнаружения атак.

Сервер  raw_recv.exe

Запуск сервера  

Определение пути к файлу

Загрузка библиотеки сокетов

Запуск нити с POP3-сервером 

Создание и  привязка «сырого» сокета

Приём ICMP-пакетов

Вывод на экран  содержимого пакета 

                                           Да

Проверка на атаку        

                     Нет

Формирование  сообщения об атаке

Получение сообщения  об атаке по электронной почте 

Рис. 6.   Блок-схема алгоритма обнаружения атак.

 

На рисунке  7 приведена блок-схема алгоритма извещения об атаках.

Клиент  raw_send.exe

Создание конфигурационного  объекта  

Создание диспетчерского сокета  

Переход в  режим ожидания подключения 

Приём подключения 

Создание временной  нити  
 

Завершение подключения

Закрытие временной  нити  
 

Закрытие сервера  

Рис. 7.  Блок-схема алгоритма извещения об атаках. 
 

 

На рисунке 8 приведена блок-схема алгоритма  управления атаками.  

Сервер  raw_recv.exe

Создание виртуального сокета

Открытие файла отчёта

 

Ответ клиенту  на его подключение 

 

Переход к  режиму транзакций

 

Приём сообщения 

 

Обработка сообщения 

 

Проверка сообщений    Да  Отправка сообщения

в почтовом ящике  

                     Нет      

Отправление ответа

 

Закрытие сервера  
 

Рис. 8.  Блок-схема алгоритма управления атаками.

 

4. 1.  Схема взаимодействия  модулей системы

 

     Вся программная система представляет из себя клиент-серверную пару и  состоит из четырёх основных модулей  и множества вспомогательных.

     Основные  модули поделены между клиентом и  сервером: и клиент, и сервер имеют  по 2 основных модуля. И сервер, и  клиент являются многопоточными приложениями, точнее, они содержат по 2 нити, при  этом в каждой нити функционирует  один основной модуль. Главная нить клиента (та, которая образуется при запуске) содержит HTTP-сервер, который порождает вспомогательную нить при начале каждого HTTP-подключения и закрывает её при его окончании – это стандартный приём для одновременной работы с множеством клиентов. Вспомогательная нить получает от пользователя параметры нужных последовательностей ICMP-пакетов и отправляет эти последовательности на сервер.

     Главная нить сервера содержит модуль обнаружения  атак, который и является ядром  всей системы и сутью дипломной  работы. Атаки – это в данном случае просто определённые последовательности ICMP-пакетов с определёнными значениями полей пакетов IP и ICMP. Едва ли существует какой-либо принципиально иной способ обнаружения атак. Вся сложность состоит в том, чтобы наиболее точно сформулировать правила, по которым будет выноситься решение о том, атака это или нет.

     Вспомогательная нить сервера содержит POP3-сервер электронной почты, который стартует в начале работы сервера и даёт возможность получить сообщения об атаке при помощи программы MS Outlook Express. Когда главная нить сервера обнаруживает атаку, она формирует в почтовом ящике сервера соответствующее сообщение, откуда его забирает вспомогательная нить при взаимодействии с программой MS Outlook Express.

Информация о работе Комплекс сетевой защиты