Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #80, АВГУСТ 2005 г.

Анализируем сетевую кровь

Иван Скляров (www.sklyaroff.ru)

Хакер, номер #080, стр. 080-102-4


12:00:17.899408 eth0 < 192.168.99.200.2879 > 172.20.100.100.http: R 1045782752:1045782752 (0) win 0

Заметно, что в ответ на SYN-запрос возвращается пакет с установленными флагами SYN и ACK, после чего соединение обрывается посылкой флага RST. Значит, трехэтапное рукопожатие не было выполнено полностью - это говорит о том, что порты узла 172.20.100.100 сканируются методом незавершенного открытого сеанса (half-open scanning), или как его еще называют - скрытое (stealth) TCP SYN сканирование (флаг '-sS' в сканере nmap).

В листинге на рисунке 6 на различные порты поступают UDP-дейтаграммы, содержащие 0 байт данных. Это явный признак того, что осуществляется UDP-сканирование. Если порт закрыт, узел отсылает ICMP-сообщение port unreachable. Если такое сообщение не посылается, значит, порт открыт. Отмечу, что 0 байт данных при UDP-сканировании посылает сканер nmap (с установленным флагом '-sU'), другие сканеры могут посылать большее число байт данных. Например, Xspider посылает 3 байта в каждом пакете.

Если же в листинге будет множество запросов, в которых не установлено ни одного флага (стоит точка в поле flags), например:

02:12:59.899408 eth0 < 10.15.100.6.41343 > 192.168.2.4.30310: . 971654054:971654054(0) win 2048

02:12:59.899408 eth0 > 192.168.2.4.30310 > 10.15.100.6.41343: R 0:0(0) ack 971654054 win 0 (DF)

02:12:59.899408 eth0 < 10.15.100.6.41343 > 192.168.2.4.275: . 971654054:971654054(0) win 3072

То это ненормальное состояние, которое явно свидетельствует о том, что выполняется Null-сканирование (флаг '-sN' в сканере nmap).

FIN-сканирование (флаг '-sF' в nmap) легко вычислить по множеству поступающих пакетов с установленным флагом FIN:

04:17:40.580653 eth0 < 192.168.10.35.46598 > 172.23.115.22.ftp: F 1918335677: 1918335677(0) win 2048

04:17:40.580653 eth0 < 192.168.10.35.46599 > 172.23.115.22.ftp: F 1918337777: 1918337777(0) win 3072

Сканирование по методу "рождественской елки" (TCP Xmas Tree scan, флаг '-sX' в nmap) определяется по множеству запросов с установленными флагами FIN, URG и PUSH. Если порт закрыт, то в ответ посылается пакет с флагом RST:

03:22:46.960653 eth0 < 192.168.10.35.55133 > 172.23.115.22.19150: FP 1308848741:1308848741(0) win 2048 urg 0

03:22:46.960653 eth0 > 172.23.115.22.19150 > 192.168.10.35.55133: R 0:0(0) ack 1308848741 win 0 (DF)

03:22:46.960653 eth0 < 192.168.10.35.55133 > 172.23.115.22.smtp: FP 1308848741:1308848741(0) win 3072 urg 0

Также существует сканирование с помощью ACK-пакетов (флаг '-sA' в nmap). Этот метод используется для определения правил, используемых брандмауэром. На порты сканируемого узла отправляются пакеты с установленным флагом ACK. Если в ответ приходят пакеты с флагом RST, то порты классифицируются как нефильтруемые (unfiltered) брандмауэром. Если никакого ответа не приходит, порт считается фильтруемым (filtered). Для подтверждения сканер делает запрос дважды, листинг tcpdump будет выглядеть примерно так:

13:44:46.361688 eth0 < 192.168.91.130.56528 > 172.18.10.23.30310: . 1114201130:1114201130(0) ack 0 win 2048

Назад на стр. 080-102-3  Содержание  Вперед на стр. 080-102-5