Атака из Internet


IP-фрагментация как способ проникновения через Firewall - часть 2


Рис. 4.12. Формат IP-пакета версии IPv4.


4-bit

Version

4-bit

Header

Length

8-bit

Type of Service

16-bit

Total Length

16-bit

Identification

3-bit

Flags

13-bit

Fragment Offset

8-bit

Time to Live

8-bit

Protocol

16-bit

Header Checksum

32-bit

Source Address

32-bit

Destination Address

Options & Padding
Data

Рис. 4.13. Формат TCP-пакета.


16-bit

Source Port Number

16-bit

Destination Port Number

32-bit

Sequence Number

32-bit

Acknowledgement Number

4-bit

Header Length

6-bit

Reserved

6-bit

Flags

16-bit

Window Size

16-bit

TCP Checksum

16-bit

Urgent Pointer

Options & Padding
Data

Рис. 4.14. Формат UDP-пакета.


16-bit

Source Port Number

16-bit

Destination Port Number

16-bit

Length

16-bit

Checksum

Data

В своей статье "Packet Fragmentation Attacks" (опубликована в All.net) доктор F. B. Cohen предложил следующий сценарий предполагаемой атаки, заключающейся в прохождении фрагментированного пакета через файрвол, минуя правила фильтрации. Атакующий разбивает пакет на два фрагмента, первый из которых содержит фиктивный TCP- или UDP-заголовок с номером порта назначения, который не фильтруется правилами на файрволе (например, 25 порт - почтовый SMTP-сервер), а второй имеет такое смещение (равное 1) в поле Fragment Offset, что перекрывает первый пакет и записывает в поле "порт назначения" истинное значение порта той службы, к которой доступ через файрвол запрещен. В этом случае правила фильтрации на файрволе пропустят этот IP-пакет, так файрвол не занимается сборкой фрагментированных IP-пакетов.

С этой статьей д-р Cohen'a [28] происходили с течением времени довольно любопытные изменения. В статье, которую авторы нашли на WWW-сервере all.net в мае 1996 года, для осуществления атаки предлагалось занести в поле Fragment Offset значение, равное 1 (далее будет показано, что в этом случае подобная атака в принципе невозможна). Однако, после посещения одного из серверов уже в мае 1997 года авторы с удивлением обнаружили ту же статью, но с одним "небольшим" исправлением: предлагалось заносить в это поле уже не 1, а 0! Во всем остальном статья осталась неизменной.




Начало  Назад  Вперед



Книжный магазин