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

Автор работы: Пользователь скрыл имя, 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 Мб (Скачать файл)

value="Сбросить" name="B0"> </p> 

<form name="form1" method="get">

  <input type="hidden" name="T00" value="icmp"><p><font color="#808080">Введите

  количество генерируемых пакетов:<br>

  </font><input name="T01" size="20" value="1"> <input type="reset" value="Сбросить"

  name="B1"></p>

  <h4><font color="#808080">Заполнение полей IP-пакета (кроме

  автоматически  заполняемых полей):</font></h4>

  <p><font color="#808080">IP type of service</font> <br>

  <input name="T02" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B2"> </p>

  <p><font color="#808080">Fragment offset field</font><br>

  <input name="T03" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B3"></p>

  <p><font color="#808080">Time to live</font><br>

  <input name="T04" size="20" value="128"> <input type="reset" value="Сбросить"

  name="B4"></p>

  <p><font color="#808080">Source IP-address</font><br>

  <input name="T05" size="20" value="127.0.0.1"> <input type="reset"

  value="Сбросить" name="B5"></p>

  <p><font color="#808080">Destination IP-address</font><br>

  <input name="T06" size="20" value="127.0.0.1"> <input type="reset"

  value="Сбросить" name="B6"></p>

  <h4><font color="#808080">Заполнение полей вложенного

  ICMP-пакета (кроме автоматически заполняемых

  полей):</font></h4>

  <p><font color="#808080">Type</font><br>

  <input name="T07" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B7"></p>

  <p><font color="#808080">Code</font><br>

  <input name="T08" size="20" value="10"> <input type="reset" value="Сбросить"

  name="B8"></p>

  <p><font color="#808080">Unique identifier</font><br>

  <input name="T09" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B9"></p>

  <p><font color="#808080">Sequence number</font><br>

  <input name="T10" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B10"></p>

  <p><input type="submit" value="Отправить команду" name="#"

  OnClick="document.form1.action='http://'+ip_address.value" +':8080'> </p>

</form>

</body>

</html>

Файл http_icmp_reply.htm

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html> 

<head>

<title>Ответ на ваш запрос</title>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

<meta content="Microsoft FrontPage 3.0" name="GENERATOR">

</head> 

<body bgColor="#fff5ee">

<font color="#808080"> 

<h3>Ответ на вашу команду:</h3> 

<p>Заданная последовательность ICMP-пакетов была

успешно отправлена.</p>

</font>

</body>

</html>

Файл  http_attack_form.htm

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html> 

<head>

<title>HTTP-Клиент для управления генератором ICMP-атак</title>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

</head> 

<body bgcolor="fff5ee"> 

<h3 align="center"><font color="#808080">HTTP-Клиент для управления

генератором ICMP-атак</font></h3> 

<h4 align="left"><font color="#808080">Управление генератором

пакетов:</font></h4> 

<p><font color="#808080">Введите IP-адрес ICMP-генератора:</font></p> 

<p><input name="ip_address" size="20" value="127.0.0.1"> <input type="reset"

value="Сбросить" name="B0"> </p> 

<form name="form1" method="get">

  <input type="hidden" name="T00" value="attack"><p><font color="#808080">Введите

  количество генерируемых пакетов:<br>

  </font><input name="T01" size="20" value="1"> <input type="reset" value="Сбросить"

  name="B1"></p>

  <h4><font color="#808080">Заполнение полей IP-пакета (кроме

  автоматически  заполняемых полей):</font></h4>

  <p><font color="#808080">IP type of service</font> <br>

  <input name="T02" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B2"> </p>

  <p><font color="#808080">Fragment offset field</font><br>

  <input name="T03" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B3"></p>

  <p><font color="#808080">Time to live</font><br>

  <input name="T04" size="20" value="128"> <input type="reset" value="Сбросить"

  name="B4"></p>

  <p><font color="#808080">Source IP-address</font><br>

  <input name="T05" size="20" value="127.0.0.1"> <input type="reset"

  value="Сбросить" name="B5"></p>

  <p><font color="#808080">Destination IP-address</font><br>

  <input name="T06" size="20" value="127.0.0.1"> <input type="reset"

  value="Сбросить" name="B6"></p>

  <h4><font color="#808080">Заполнение полей вложенного

  ICMP-пакета (кроме автоматически заполняемых

  полей):</font></h4>

  <p><font color="#808080">Type</font><br>

  <input name="T07" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B7"></p>

  <p><font color="#808080">Code</font><br>

  <input name="T08" size="20" value="1"> <input type="reset" value="Сбросить"

  name="B8"></p>

  <p><font color="#808080">Unique identifier</font><br>

  <input name="T09" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B9"></p>

  <p><font color="#808080">Sequence number</font><br>

  <input name="T10" size="20" value="0"> <input type="reset" value="Сбросить"

  name="B10"></p>

  <h4><font color="#808080">Генерация  ICMP-атак:</font></h4>

  <p><strong><font color="#808080"><input type="radio" name="T11" checked value="R1"

  OnClick="document.form1.T06.value='127.0.0.1';document.form1.T08.value='1';document.form1.T01.value='1'">

  &nbsp;&nbsp;Ручной режим атаки<br>

  <input type="radio" name="T11" value="R2"

  OnClick="document.form1.T06.value='127.0.0.255';document.form1.T08.value='8';document.form1.T01.value='1'">

  &nbsp;&nbsp;Атака Smurf<br>

  <input type="radio" name="T11" value="R3"

  OnClick="document.form1.T06.value='127.0.0.1';document.form1.T08.value='0';document.form1.T01.value='1'">&nbsp;&nbsp;

  Атака Tribe Flood Network<br>

  <input type="radio" name="T11" value="R4"

  OnClick="document.form1.T06.value='127.0.0.1';document.form1.T08.value='5';document.form1.T01.value='1'">

  &nbsp;&nbsp;Атака WinFreeze<br>

  <input type="radio" name="T11" value="R5"

  OnClick="document.form1.T06.value='127.0.0.1';document.form1.T08.value='2';document.form1.T01.value='100'">&nbsp;&nbsp;

  Атака ICMP Flood</font></strong></p>

  <p><input type="submit" value="Отправить команду" name="#"

  OnClick="document.form1.action='http://'+ip_address.value" +':8080'> </p>

</form>

</body>

</html>

Файл  http_attack_reply.htm

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html> 

<head>

<title>Ответ на ваш запрос</title>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

</head> 

<body bgColor="#fff5ee">

<font color="#808080"> 

<h3>Ответ на вашу команду:</h3> 

<p>Заданная ICMP-атака была успешно выполнена.</p>

</font>

</body>

</html>

Файл  Packet.cpp

 

Такой же, как  и для клиента

Файл Packet.h

 

Такой же, как  и для клиента

Файл pop3_conf.inf

 

nids.com          Имя домена на этом сервере

127.0.0.1         ip-адрес, назначенный этому серверу (0.0.0.0-это INADDR_ANY)

110               Порт приёма POP3-запросов этого сервера

0                 1/0-echo on/echo off

Файл pop3_main.cpp

 

//  POP3 TCP/IP почтовый  сервер для одновременной работы  с MAX_CONNECTIONS

//  клиентами 

#include "server.h" 

DWORD WINAPI ThreadFunc(SERVER_SOCKET* p_server_socket)

{ 

SERVER_SOCKET server;

server = *p_server_socket; //через перегруженное присваивание (из-за строк) 

server.report_file.open("pop3_report.txt",ios::app); 

server.ReplyOnClientConnection(); 

int retval;

//*********************** Приём - передача сервера ***********************

while(true) { 

if (!server.query)

{

retval = server.recv_data();

if (retval==-1) break;

// если сокетная  ошибка, то:

} 

retval = server.ProcessClientQuery();

// если критическая  ошибка, то:

if (retval==-1) break;

// Если сервер  принял команду об окончании  сеанса почтового соединения, то:

if (retval==1)

{

server.report_file.close();

cout<<"The mail transaction successfully completed."<<endl;

return 1;

} 

// отправляем  ответ клиенту, если это был  запрос, а не данные

server.send_data(); 

} //end of while

//******************** Конец приёма - передачи сервера *******************

server.shutdown_and_closesocket(); 

return 0;

} 

//////////////////////////////// main ////////////////////////////////////

//////////////////////////////////////////////////////////////////////////

/*

main() {  

DWORD dwThreadID_POP3; 

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