Защита от доступа к функционально-логической структуре системы связи

Процесс вскрытия системы связи при проведении противником несанкционированного мониторинга. Правила преобразований для формирования защищенной функционально-логической структуры системы связи. Способ защиты вычислительной сети с выделенным сервером.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 21.12.2012
Размер файла 5,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

В целях реализации методов формирования защищенной ФЛССС необходимо разработать специальное программное обеспечение, реализующее выполнение задач по защите ФЛССС от исследования, использование которого на УС ПУ позволит управлять адресным пространством и ИП УС в ОАЦСС ВС РФ по измененным алгоритмам.

Для передачи информации между корреспондирующими УС ИТКС (ЛВС) посредством протоколов взаимодействия устанавливают соединение, под которым понимают информационный поток от отправителя к получателю.

Для безопасной передачи (обеспечения конфиденциальности и целостности информации) данных через сеть связи общего пользования применяют криптографическую защиту информационной части пакетов сообщений (рис. 3.1).

Рисунок 3.1 Обобщенная структура пакета сообщений

При использовании таких механизмов в открытом виде передают только IP-заголовок пакета сообщений (рис. 3.2). На рис. Х штриховкой выделены поля адресов отправителя и получателя пакета сообщений.

Рисунок 3.2 Структура IP-заголовка

Исходя из вышеизложенного, необходимо разработать программное обеспечение, позволяющее изменять адресную часть IP-заголовка по заранее определенному алгоритму, тем самым добиваясь динамического управления одним из ДМП УС ИТКС, а именно сетевым идентификатором.

В виду того, что задача формирования защищенной ФЛССС в рамках ОАЦСС ВС РФ в целом слишком сложна, возникает необходимость макетирования, сохранив при этом основные аспекты решаемой задачи. Одним из возможных решений задачи макетирования является развертывание ЛВС, в которой будет возможность проведения перехвата и анализа циркулирующего трафика.

Так как основные аспекты программной реализации задачи защиты ФЛССС от исследования - это изменение адресного пространства УС ПУ и управление направлением и интенсивностью их ИП, в качестве атомарного элемента СС следует выбрать пару корреспондирующих УС, которые в рамках создаваемого макета будут представлять собой ПЭВМ с установленным на них необходимым программным обеспечением. Логическая структура такого атомарного элемента будет представлять собой совокупность из двух элементов и связи между ними.

Таким образом возникает необходимость создания испытательного стенда (макета) с целью разработки специального программного обеспечения и оценки эффективности его внедрения в ОАЦСС ВС РФ. Основными задачами создания испытательного стенда являются:

разработка специального программного обеспечения, показывающего принципиальную возможность реализации разработанного методического обеспечения;

оценка эффективности применения разрабатываемого специального программного обеспечения для защиты ФЛССС от исследования;

оценка возможности внедрения разработанного специального программного обеспечения в ОАЦСС ВС РФ;

оценка целесообразности разработки аппаратного комплекса на основе криптомаршрутизатора (сетевого адаптера) решающего задачу защиты от исследования ФЛССС.

Так как разработанное методическое обеспечение предполагает участие ЛПР только лишь на этапе формирования графа защищенной ФЛССС, то программное обеспечение, реализующее защиту ФЛССС от исследования целесообразно выполнить в виде службы ОС МСВС 3.0, исходными данными для которой будет являться представление защищенной ФЛССС, записанное в файл конфигурации. Выбор ОС определяется наличием сертификата ФСТЭК, а также широким внедрением данной ОС в ВС РФ, в том числе и в войсках связи.

Таким образом, разрабатываемое ПО должно выполнять следующие задачи:

расширение адресного пространства ПЭВМ;

захват исходящего трафика и обработка заголовков ПС;

динамическую фильтрацию входящего трафика;

Исходя из поставленных задач, разрабатываемое ПО (служба) будет иметь модульную структуру (рис. 3.3).

Рисунок 3.3 - Модульная структура службы защиты ФЛССС от исследования

Модуль конфигурирования (листинг 1 приложения) выполняет чтение конфигурационного файла (таблица 3.1, 3.2), формирует ключевую таблицу сети (программное представление защищенной ФЛССС), а также конфигурирование службы при запуске. При запуске передает необходимые считанные данные ядру службы.

Таблица 3.1

Структура конфигурационного файла

№ строки

Значение

1

Количество узлов сети, на которых запущен (будет запущен) макет (N)

2

IP-адрес собственного узла

3

Количество дополнительных IP-адресов собственного узла (M)

4..(M+3)

Дополнительные IP-адреса собственного узла

далее

Остальные (N-1) узел по принципу собственного узла

Таблица 3.2

Пример составления конфигурационного файла

№ строки

Значение

Комментарий

1

2

количество узлов, на которых запущена программа

2

192.168.0.10

собственный IP-адрес (адрес 1-го узла)

3

3

Количество дополнительных IP-адресов

4

192.168.0.11

1-й дополнительный IP-адрес

5

192.168.0.12

2-й дополнительный IP-адрес

6

192.168.0.13

3-й дополнительный IP-адрес

7

192.168.0.5

IP-адрес 2-го узла, на котором запущена программа

8

4

Количество дополнительных IP-адресов

9

192.168.0.6

1-й дополнительный IP-адрес

10

192.168.0.7

2-й дополнительный IP-адрес

11

192.168.0.8

3-й дополнительный IP-адрес

12

192.168.0.9

4-й дополнительный IP-адрес

Алгоритм функционирования конфигурационного модуля отражен на рис. 3.4

Рисунок 3.4 - Алгоритм функционирования модуля конфигурирования

Модуль управления адресным пространством (листинг 2 приложения), производит расширение (свертывание) адресного пространства УС (ПЭВМ), т.е. добавляет, либо удаляет IP-адреса сетевого адаптера по команде ядра службы. Алгоритм работы модуля представлен на рис. 3.5

Рисунок 3.5 - Алгоритм функционирования модуля управления адресным пространством

Модуль сопряжения с сетевым адаптером (листинг 3 приложения), используя библиотеку libcap, выполняет динамическую фильтрацию входящего трафика, а также захват пакетов входящего трафика для его последующей обработки. Алгоритм функционирования модуля отображен на рис. 3.6

Рисунок 3.6 - Алгоритм функционирования модуля сопряжения с сетевым адаптером

Модуль обработки данных (листинг 4 приложения) отвечает за организацию псевдослучайного выбора адресов взаимодействия, ведения данных ключевой таблицы сети в части, касающейся счетчиков выбора взаимодействующих адресов, а также обработку транспортного и сетевого заголовков ПС. В процессе функционирования, непосредственно связан с генератором чисел Фибоначчи (листинг 5 приложения). Алгоритм функционирования модуля изображен на рис. 3.6

Рисунок 3.7 - Алгоритм функционирования модуля обработки данных

Ядро службы (листинг 6) осуществляет непосредственно организацию работы и взаимодействие всех модулей службы. Алгоритм ядра службы представлен на рис. 3.8

Рисунок 3.8 - Алгоритм функционирования ядра службы защиты ФЛССС от исследования

Исходя из модульного построения службы (см. рис. 3.3) принцип функционирования службы представляет собой последовательность действий, описанных ниже.

При запуске службы, ядро запускает модуль конфигурирования службы, который производит чтение файла конфигурации (/etc/flsd.conf), заполняя ключевую таблицу сети. Далее ядро службы организует расширение адресного пространства, передавая управление соответствующему модулю. После проведения настройки службы и расширения адресного пространства, управление передается модулю сопряжения с сетевым адаптером, который совместно с модулем обработки данных производит динамическую фильтрацию входящего трафика и передачу исходящего трафика, используя расширенное адресное пространство.

Динамическая фильтрация входящего трафика обеспечивает получение приложениями ОС пакетов сообщений только от тех узлов, на которых известен алгоритм изменения адресов (т.е. с активной службой защиты ФЛССС), при этом отправка пакетов сообщений с необходимого адреса отправителя на нужный адрес получателя обеспечивает прохождение пакетов сообщений через фильтр входящего трафика.

Таким образом, служба защиты ФЛССС от исследования выполняет поставленные перед ней задачи путем ввода противника, осуществляющего анализ проходящего в СС трафика, в заблуждение, относительно состава, структуры и алгоритмов функционирования СС, формируя на информационном поле исследования противника искаженную ФЛССС, тем самым производя рефлексивное управление противником, заставляя его принимать решение на осуществление ПДВ на УС в условиях неопределенности обстановки.

Исходя из вышеизложенного, разработанная служба защиты ФЛССС, во время функционирования, позволяет выполнять задачи по защите элементов СС от ПДВ противника на этапе выбора цели для подавления. В связи с этим необходимо произвести оценку эффективности применения разработанного ПО.

3.3 Оценка эффективности научно-технических предложений по защите функционально-логической структуры системы связи от исследования

С целью оценки эффективности разработанного ПО, на базе НИЦ Военной академии связи создан испытательный стенд. Для наиболее точного макетирования условий функционирования СС в условиях исследования противником ФЛССС в состав испытательного стенда вошли:

2 ПЭВМ корреспондирующих УС ОАЦСС ВС РФ, ведущих информационный обмен, с установленной ОС МСВС 3.0, а также службой защиты ФЛССС;

ПЭВМ противника, производящий сбор и анализ циркулирующего в СС трафика программой «Wireshark» под управлением ОС Windows XP (рис. 3.9);

коммутационное оборудование Hub 3Com транслирующий поступающий трафик на все порты (с целью имитации наличия НДВ аппаратуры связи УС ЕСЭ РФ);

В п. 2.3 были определены показатели оценки эффективности преобразований ФЛССС, одним из которых является rпуj - показатель эффективности j-го варианта преобразования в смысле доступности ПУ в случае реализации противником ПДВ на УС, rпу 1. Аналогом данного критерия для оценки эффективности разработанного ПО является отношение интенсивностей обмена между корреспондирующими УС, формируемая разработанным ПО на информационном поле исследования противника. Для этого выбранное программное обеспечение анализа трафика позволяет динамически формировать список корреспондирующих узлов СС с расчетом интенсивности трафика УС по отношению к общей интенсивности трафика, циркулирующего в СС, принятую за 200 %.

С целью оценки эффективности применения разработанного ПО для выполнения задач по защите СС от исследования было проведено 2 испытания:

расчет интенсивностей трафика корреспондирующих УС без применения ПО защиты ФЛССС от исследования;

расчет интенсивностей трафика с применением разработанного ПО.

Выводы

В рамках разработки научно-технических предложений по защите ФЛССС от исследования предложен способ защиты вычислительной сети с выделенным сервером, позволяющий повысить защищенность функционирования вычислительной сети с выделенным сервером, посредством введения нарушителя в заблуждение, используя расширенное адресное пространство для информационного обмена.

Также разработано ПО в виде службы ОС МСВС 3.0, позволяющее решать задачи защиты ФЛССС от исследования, посредством ведения информационного обмена через расширенное адресное пространство, в том числе в совокупности с динамической фильтрацией входящего трафика позволяет повысить защищенность УС ПУ от ПДВ (информационные потоки с IP-адреса нарушителя не будут обрабатываться).

Проведена оценка разработанного ПО, которая показала повышение защищенности СС от исследования при практическом применении по критерию интенсивности трафика УС ПУ на информационном поле исследования противника.

заключение

На основе анализа угроз ИБ ОАЦСС ВС РФ, а также условий её функционирования в условиях проведения несанкционированного мониторинга было выявлено, что противник путем перехвата ИП и их анализа имеет возможность вскрывать СС, что позволяет противнику в свою очередь получать информацию о структуре СУ, в рамках которой она функционирует.

В целях защиты от исследования было разработано методическое обеспечение, позволяющее осуществить способы защиты ФЛССС путем формирования на информационном поле исследования противника искаженной ФЛССС, вводя его в заблуждение относительно структуры СС и, заставляя принимать решение в условиях неопределенности обстановки.

С целью исследования проблемы защиты функционально-логической структуры системы связи от исследования, а также разработки научно-технических предложений в данной области, на базе НИЦ Военной академии связи создан испытательный стенд «Исследование возможностей мониторинга информационной безопасности АСУС ОАЦСС ВС РФ».

В результате проведенных исследований создана служба ОС МСВС 3.0, использующая алгоритмы расширения адресного пространства УС ПУ и управления направлением и интенсивностью ИП, выполняющая задачи по защите ФЛССС от исследования (несанкционированного мониторинга).

По результатам оценки эффективности применения разработанного ПО была построена сводная диаграмма, которая отражает эффективность решения задачи защиты ФЛССС от исследования при использовании. Полученные результаты отражают формирование на информационном поле исследования противника искаженной ФЛССС, в том числе формирование «серого фона» интенсивности циркулирующего трафика, что вполне удовлетворяет модульному принципу построения УС ПУ и позволяет формировать «адекватное» рефлексивное управляющее воздействие на противника, при этом акценты принятия решения на ПДВ смещаются на ложные IP-адреса УС ПУ, что также повышает защищенность СС в условиях информационного противоборства.

Также результатом данной работы можно считать практическое доказательство возможности повышения защищенности СС в условиях информационного противоборства посредством защиты ФЛССС от исследования на этапе исследования СС и подготовки противника к проведению ПДВ.

Таким образом, дальнейшее направление развития проблемы защиты ФЛССС от исследования определяет следующие задачи:

разработка руководящих документов по предъявлению требований к защищенности СС ВН по критерию защиты ФЛССС от исследования;

реализация разработанного методического обеспечения в аппаратно-программном комплексе на основе криптомаршрутизатора (сетевого адаптера);

автоматизация процесса преобразования исходной ФЛССС в защищенную от исследования, посредством разработки специального программного обеспечения.

Считаю, что задание на дипломное проектирование выполнено качественно и в полном объеме на высоком научном уровне с использованием современных методов исследования.

Список литературы

1. Карпов Е.А. Место и роль системы связи и комплексов средств автоматизированного управления ВС РФ. Перспективы их развития на основе внедрения современных информационных технологий // Связь в Вооруженных Силах Российской Федерации. Под ред. А.В. Сиденко - М. Компания «Информационный мост», 2008. С. 16-19.

2. Карпов Е. А. От каналов связи до мультисервисных сетей// Электросвязь. №3, 2007. С. 2-4.

3. Максимов Р. В. Концепция защиты систем связи, использующих ресурсы и услуги единой сети электросвязи. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб, 2006. С. 3.

4. Павловский А.В., Кожевников Д.А., Максимов Р.В. Методы и алгоритмы защиты ведомственных систем связи при использовании ресурсов Единой сети электросвязи. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб, 2006. С. 4.

5. Карпов Е.А. Состояние и перспективы развития системы и войск связи ВС РФ // Связь в Вооруженных Силах Российской Федерации. Под ред. А.В. Сиденко - М. Компания «Информационный мост», 2007. С. 17-22.

6. Коцыняк М. А., Максимов Р. В. Концепция решения проблемы защиты информации в автоматизированных системах // Системы связи. Анализ. Синтез. Управление. Выпуск 13. Под ред. В. П. Постюшкова. - СПб.: Тема, 2004. С. 35-43.

7. Blaauw, G. A., von, Computer architecture // Elektronishe Rechenanlagen, 14, No. 4, 1972, С. 154-159.

8. Павловский А. В., Максимов Р. В. Модель процесса вскрытия системы связи и взаимосвязь основных его этапов. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб. 2006. С. 4.

9. Сбор критических данных без вторжения // http://bugtraq.ru/library/ security…. 31.12.03 г.

10. Олифер В.Г., Олифер Н.А. «Компьютерные сети. Принципы, технологии, протоколы», учебник для Вузов, 2-изд.; - СПб: Питер, 2003. С. 497

11. Лефевр В. А. Конфликтующие структуры. М.: Сов.радио, 1973. - 158 с.

12. Лоренц К. Агрессия (так называемое «зло»): Пер. с нем. М.: Издательская группа «Прогресс», 1994. - С. 272.

13. Модестов С. А. Информационное противоборство как фактор геополитической конкуренции. - М.: Издательский центр научных и учебных программ; М.: Московский общественный научный фонд, 1999. - С. 80.

14. Максимов Р. В., Павловский А. В., Стародубцев Ю. И. Защита информации от технических средств разведки в системах связи и автоматизации - СПб.: ВАС, 2007, С. 34.

15. Петров С.В. Графовые грамматики и задачи графодинамики // Автоматика и телемеханика. №10, 1977. С.133

16. Петров С.В. Нормальная форма графовых грамматик// Автоматика и телемеханика. №6, 1977. С.153

17. Айзерман М.А., Гусев Л.А., Петров С.В., Смирнова И.М., Тененбаум Л.А. Динамический подход к анализу структур, описываемых графами (Основы графодинамики). Сборник научных трудов Академии наук СССР «Исследования по теории структур». - М.: Наука, 1988

18. Павловский А.В., Кожевников Д.А., Максимов Р.В. Выбор безопасного маршрута информационного обмена в инфокоммуникациях. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб, 2006. С. 4.

19. Барашков П. Н., Родимов А. П., Ткаченко А. М., Чуднов А. М. Модель системы связи с управляемыми структурами в конфликтных условиях. - Л.: ВАС, 1986, С. 52.

20. Павловский А. В. Информационная безопасность и управление структурой цифровых систем связи. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб, 2007. С. 456-458.

21. Мандель И. Д. Кластерный анализ. - М.: Финансы и статистика. 1988. - С. 176.

22. Жамбю М. Иерархический кластер-анализ и соответствия: Пер. с фр.-М.: Финансы и статистика, 1988. - С. 300.

23. Вагин В. Н. Дедукция и обобщение в системах принятия решений. - М.: Наука. Гл. ред. физ. - мат. Лит. 1988. - С. 384.

24. Веслав Плюта, Сравнительный многомерный анализ в экономических исследованиях: Методы таксономии и факторного анализа/Пер. с пол. В.В. Иванова; Науч. ред. В.М. Жуковской. - М.: Статистика, 1980. - С. 151.

25. Захаров И. Г. Обоснование выбора. Теория практики. - СПб: Судостроение, 2006. - С. 526.

26. Павловский А. В., Максимов Р. В. Информационная безопасность и управление структурой цифровых систем связи. Труды всеармейской НПК «Инновационная деятельность в ВС РФ». СПб, 2006. С. 344-347.

27. Павловский А. В., Кожевников Д. А., Колбасова Г. С. Новые направления в обеспечении безопасности информационного обмена. Труды конференции «Высокие технологии, фундаментальные и прикладные исследования, образование» Т.7,2006, СПб, С. 189-191.

ПРИЛОЖЕНИЕ

Листинг 1

Модуль конфигурирования

int read_ini_file(char* filename)

{

int fd;

if ((fd = open(filename, O_RDONLY, 0700)) == -1)

{

printf("%s open error\n", filename);

exit(1);

}

int count;

char buf[2048];

if ((count = read(fd, &buf, sizeof(buf))) == -1)

{

printf("Reading %s error\n", filename);

exit(1);

}

int i = 0;

int j = 0;

char count_buf[3];

while (i < count)

{

if (buf[i] != '\n')

{

count_buf[j] = buf[i];

j++;

}

else

{

main_count = atoi(count_buf);

i++;

break;

}

i++;

}

int k;

int n;

for (k = 0; k < main_count; k++)

{

net[k].fib_ip_send_index = 1;

net[k].fib_ip_receive_index = 1;

j = 0;

while (i < count)

{

if (buf[i] != '\n')

{

net[k].main_ip[j] = buf[i];

j++;

}

else

{

i++;

break;

}

i++;

}

j = 0;

strncpy(count_buf, "", 3);

while (i < count)

{

if (buf[i] != '\n')

{

count_buf[j] = buf[i];

j++;

}

else

{

net[k].add_ip_count = atoi(count_buf);

i++;

break;

}

i++;

}

for (n = 0; n < net[k].add_ip_count; n++)

{

j = 0;

while (i < count)

{

if (buf[i] != '\n')

{

net[k].add_ip[n][j] = buf[i];

j++;

}

else

{

i++;

break;

}

i++;

}

}

}

close(fd);

return 0;

}

Листинг 2

Модуль управления адресным пространством

void widering_adresses(struct net_key key, char alias)

{

char cmd[256];

FILE *stream;

int i;

for (i = 0; i < key.add_ip_count; i++)

{

strncpy(cmd, "", 256);

if (alias == '+')

sprintf(cmd, "ifconfig eth0:%d inet %s 255.255.255.0", i, key.add_ip[i]);

if (alias == '-')

sprintf(cmd, "ifconfig eth0:%d down",i, key.add_ip[i]);

stream = popen(cmd, "w");

pclose(stream);

}

return;

}

Листинг 3

Модуль сопряжения с сетевым адаптером

dev = pcap_lookupdev(errbuf_pcap);

if (dev != NULL)

printf("Device %s is ready for capturing\n", dev);

else

printf("No devices for capturing!\n");

pcap_t *fp;

if ((fp = pcap_open_live(dev, 65536, 1, 20, errbuf_pcap)) != NULL)

printf("%s was started live capturing!\n", dev);

Листинг 4

Модуль обработки данных

void analiz (u_char *stuff, const struct pcap_pkthdr *hdr, const u_char *packet)

{

struct ip_hdr *ip_header;

ip_header = (struct ip_hdr *) (packet+14);

struct udp_hdr *udp_header;

struct tcp_hdr *tcp_header;

libnet_ptag_t ip4, tcp, udp;

u_char *data;

int payload_s;

char errbuf_libnet[LIBNET_ERRBUF_SIZE];

lc = libnet_init(LIBNET_RAW4, NULL, errbuf_libnet);

libnet_open_raw4(lc);

int flag;

int i, j;

flag = 0;

if (strncmp(inet_ntoa(ip_header->saddr), net[0].main_ip, strlen(inet_ntoa(ip_header->saddr))) == 0)

flag = 1;

for (i = 0; i < net[0].add_ip_count-1; i++)

{

if (strncmp(inet_ntoa(ip_header->saddr), net[0].add_ip[i], strlen(inet_ntoa(ip_header->saddr))) == 0)

{

flag = 1;

break;

}

}

if (flag == 1)

{

int index;

index = 0;

for (i = 1; i < main_count-1; i++)

{

if (strncmp(inet_ntoa(ip_header->daddr), net[i].main_ip, strlen(inet_ntoa(ip_header->daddr))) == 0)

{

index = i;

break;

}

for (j = 0; j < net[i].add_ip_count-1; j++)

{

if (strncmp(inet_ntoa(ip_header->daddr), net[i].add_ip[j], strlen(inet_ntoa(ip_header->daddr))) == 0)

{

index = i;

break;

}

}

if (index != 0)

break;

}

int fib_ip_send_index;

int fib_ip_receive_index;

fib_ip_send_index = generate_index(fibonachi(net[index].fib_ip_send_index), net[0].add_ip_count);

fib_ip_receive_index = generate_index(fibonachi(net[index].fib_ip_receive_index), net[index].add_ip_count);

ip_header->saddr.s_addr = libnet_name2addr4(lc, net[0].add_ip[fib_ip_send_index], LIBNET_DONT_RESOLVE);

ip_header->daddr.s_addr = libnet_name2addr4(lc, net[index].add_ip[fib_ip_receive_index], LIBNET_DONT_RESOLVE);

if (ip_header->protocol == 6)

{

tcp_header = (struct tcp_hdr *) (ip_header + sizeof(struct ip_hdr));

data = (u_char *) (tcp_header + sizeof(struct tcp_hdr));

tcp = libnet_build_tcp(tcp_header->source,

tcp_header->dest,

tcp_header->seq,

tcp_header->ack_seq,

tcp_header->bits,

tcp_header->window,

tcp_header->check,

tcp_header->urg_ptr,

hdr->len-sizeof(struct ip_hdr)-sizeof(struct tcp_hdr)-14,

data,

hdr->len-sizeof(struct ip_hdr)-sizeof(struct tcp_hdr)-14,

lc,

0);

ip4 = libnet_build_ipv4(ip_header->tot_len,

ip_header->tos,

ip_header->id,

ip_header->frag_off,

ip_header->ttl,

ip_header->protocol,

0,

ip_header->saddr.s_addr,

ip_header->daddr.s_addr,

data-sizeof(struct tcp_hdr),

hdr->len-sizeof(struct ip_hdr)-14,

lc,

0);

}

if (ip_header->protocol == 17)

{

udp_header = (struct udp_hdr *) (ip_header + sizeof(struct ip_hdr));

data = (u_char *) (udp_header + sizeof(struct udp_hdr));

udp = libnet_build_udp(udp_header->source,

udp_header->dest,

udp_header->len,

udp_header->check,

data,

hdr->len-sizeof(struct ip_hdr)-sizeof(struct udp_hdr)-14,

lc,

0);

ip4 = libnet_build_ipv4(ip_header->tot_len,

ip_header->tos,

ip_header->id,

ip_header->frag_off,

ip_header->ttl,

ip_header->protocol,

0,

ip_header->saddr.s_addr,

ip_header->daddr.s_addr,

data-sizeof(struct tcp_hdr),

hdr->len-sizeof(struct ip_hdr)-14,

lc,

0);

}

}

}

Листинг 5

Генератор чисел Фибоначчи

int fibonachi(int fib_index)

{

int fib;

if (fib_index == 0)

{

printf("fib must be greater then 0!\n");

return -1;

}

if (fib_index == 1) return 1;

if (fib_index == 2) return 1;

if (fib_index > 2) fib = fibonachi(fib_index-2) + fibonachi(fib_index-1);

return fib;

}

Листинг 6

Модуль службы

int main(int argc, char* argv[])

{

char *dev, errbuf_pcap[PCAP_ERRBUF_SIZE];

int s;

read_ini_file("/etc/flsd.conf");

widering_adresses(net[0], '+');

dev = pcap_lookupdev(errbuf_pcap);

if (dev != NULL)

printf("Device %s is ready for capturing\n", dev);

else

printf("No devices for capturing!\n");

pcap_t *fp;

if ((fp = pcap_open_live(dev, 65536, 1, 20, errbuf_pcap)) != NULL)

printf("%s was started live capturing!\n", dev);

struct pcap_pkthdr header;

const u_char *packet;

char *filter;

//sprintf(filter, "ip src 192.168.0.2 and ip dst 192.168.0.1");

struct bpf_program prg;

bpf_u_int32 netmask;

netmask = 0xffffff;

//pcap_compile(fp, &prg, filter, 1, netmask);

//pcap_setfilter(fp, &prg);

pcap_loop(fp, -1, analiz, NULL);

pcap_close(fp);

return (0);

}

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.