П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 4088 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 6742 раз(а).

Учебник HTML.
Просмотров 3712 раз(а).

Руководство по PHP5.
Просмотров 5979 раз(а).

Хостинг через призму DNS.
Просмотров 4800 раз(а).

Подборка текстов стандартных документов.
Просмотров 56234 раз(а).

Учебник PHP - Самоучитель
Просмотров 3689 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 8305 раз(а).

Внешние атаки...
Просмотров 4549 раз(а).

Учебник PHP.
Просмотров 3167 раз(а).

SSI в примерах.
Просмотров 169 раз(а).






 
 
| Добавить в избранное | Сделать стартовой Project.Net.Ru | Помощь



Избавиться от рубцов и растяжек помогут в Авторской клинике доктора Егорова.


Сетевые атаки

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

Атаки, основанные на IP-фрагментации

Данная атака направлена на оборудование, находящееся за защитой IP фильтрующего оборудования. Для ее реализации злоумышленники используют два разных метода: "микрофрагменты" (Tiny Fragments) и "перекрытие фрагментов" (Fragment Overlapping). Эти атаки становятся достоянием истории, поскольку современные межсетевые экраны давно успешно с ними справляются.

Микрофрагменты

Согласно документу RFC (Request For Comment) 791 (IP), все узлы (маршрутизаторы) Internet должны уметь передавать пакеты, размером 68 байт, без их фрагментации. Минимальный размер заголовка IP-пакета, без опций -- 20 байт. При заданных опциях, максимальный размер заголовка равен 60 байтам. В поле IHL (Internet Header Length) содержится длинна заголовка в 32 битных словах. Это поле использует 4 бита, потому количество возможных его значений равно 2^4 - 1 = 15 (поле не может принимать значение 0000). Следовательно, максимальный размер заголовка действительно равен 15*4 = 60 байтам. Наконец, поле смещения фрагмента (Fragment Offset), указывающее смещение первого байта фрагмента относительно всей дейтаграммы, займёт 8 байт. Таким образом данные в фрагменте занимают минимум восемь байт. Откуда и получаем размер пакета в 68 байт.

Атака состоит из запроса TCP соединения, фрагментированного на два IP-пакета. Первый IP-пакет состоит из 68 байт и содержит лишь первые восемь байт заголовка TCP (порты источника, назначения, и порядковый номер). Данные второго IP-пакета содержат запрос на TCP соединение (Флаг SYN установлен, ACK снят).

Пакетные фильтры применяют одно и то же правило ко всем фрагментам пакета. По первому фрагменту (смещение = 0) выбирается правило, в соответствии с которым обрабатываются все остальные фрагменты пакета безо всякого дополнительного контроля. Таким образом, при сборке фрагментов на целевой машине формируется пакет с запросом на соединение. В результате устанавливается соединение несмотря на то, что пакетный фильтр должен был предотвратить такую ситуацию

На рисунках 1 и 2 показаны оба фрагмента, а на третьем -- дефрагментированный пакет на целевой машине:

Рис.1: Фрагмент 1
Tiny-Frag-1
Рис.2: Фрагмент 2
Tiny-Frag-2
Рис.3: Дефрагментированный пакет
Tiny-Frag-3

Перекрытие фрагментов

В соответствии с тем же RFC 791 (IP), если два IP-фрагмента перекрываются, второй перезаписывает собой первый. Данный тип атаки также заключается в разбиении IP-пакета на два фрагмента. Пакетный фильтр пропускает первый пакет из 68 байт (по тому же принципу, что и в атаке типа "микрофрагменты") поскольку он не содержит запроса на TCP соединение (флаг SYN = 0 и флаг ACK = 0). И снова, данное правило применяется для всех фрагментов пакета. Второй фрагмент (со смещением = 1), содержащий настоящие данные о соединении, пропускается фильтром, так как он не видит, что в этом фрагменте содержится запрос на установление соединения. При дефрагментации, данные второго фрагмента замещают данные первого, начиная с восьмого байта (так как смещение = 1). Результирующий пакет получается корректным запросом на соединение для целевой машины. Соединение установлено, несмотря на присутствующий пакетный фильтр.

На рисунках 1 и 2 показаны оба фрагмента, а на третьем -- дефрагментированный пакет на целевой машине:

Рис.4: Фрагмент 1
Tiny-Frag-4
Рис.5: Фрагмент 2
Tiny-Frag-5
Рис.6: Дефрагментированный пакет
Tiny-Frag-6

[ Назад ] [ Содержание ] [ Вперед ]



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru