лабораторная работа КОНСТАНТИН ГАВРИЛЕНКО Спецвыпуск: Хакер, номер #066, стр. 066-018-5 Routing Information Protocol Command: Request (1) Version: RIPv2 (2) Routing Domain: 0 Address not specified, Metric: 16 Address Family: Unspecified (0) Route Tag: 0 Netmask: 0.0.0.0 (0.0.0.0) Next Hop: 0.0.0.0 (0.0.0.0) Metric: 16 [ПОДГОТОВКА ЭКСПЕРИМЕНТАЛЬНОЙ УСТАНОВКИ (продолжение)] Листинг 4. Опции sendip, относящиеся к генерации RIP-пакетов arhontus / # sendip -p rip <SNIP> Modules available at compile time: ipv4 ipv6 icmp tcp udp bgp rip ntp Arguments for module rip: -rv x RIP version Default: 2 -rc x RIP command (1=request, 2=response, 3=traceon (obsolete), 4=traceoff (obsolete), 5=poll (undocumented), 6=poll entry (undocumented) Default: 1 -re x Add a RIP entry. Format is: Address family:route tag:address:subnet mask:next hop:metric Default: 2:0:0.0.0.0:255.255.255.0:0.0.0.0:16, any option my be left out to use the default -ra x RIP authenticat packet, argument is the password; do not use any other RIP options on this RIP header -rd RIP default request — get router's entire routing table; do not use any other RIP options on this RIP header Листинг 5. Генерация пакета запроса и перехват ответа (оба маршрутизатора переслали свою таблицу маршрутизации) arhontus / # sendip -p ipv4 -is 192.168.69.102 -p udp -us 520 -ud 520 -p rip -rv 2 -rc 1 -re 0:0:0:0:0:16 224.0.0.9 arhontus / # tcpdump -n -i eth0 port 520 and host 192.168.69.102 -s 0 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 00:27:35.936128 IP 192.168.69.102.520 > 224.0.0.9.520: RIPv2, Request, length: 24 00:27:35.936512 IP 192.168.69.100.520 > 192.168.66.102.520: RIPv2, Response, length: 204 00:27:35.942534 IP 192.168.66.36.520 > 192.168.66.102.520: RIPv2, Response, length: 44 Очень часто оповещения от маршрутизаторов не доходят до простых пользователей, особенно если нашелся грамотный системный администратор и он установил фильтрацию рассылки многоадресных адресов на портах коммутатора. Смотрим листинг 5: после посылки запроса ответ с таблицей маршрутизации приходит на адрес посылающего. Таким образом, благодаря RIP-запросам ты обходишь данное ограничение и получаешь информацию, содержащуюся в обновлениях. Конечно, сначала придется работать вслепую, но на то, чтобы послать запрос на конкретный адрес каждой машины в ЛВС, не требуется много времени. [аутентификация RIP.] Когда вышла вторая версия протокола RIP, жизнь системных администраторов облегчилась ее новой дополнительной возможностью — функцией аутентификации маршрутизатора, посылающего обновления. Вернее, даже не самого маршрутизатора, а пакета обновления. На данный момент существует два воплощения аутентификации: «незашифрованный текст» и «MD5». В случае с незашифрованным текстом ключ находится в одном из полей RIP-пакета, и атакующий без труда идентифицирует этот ключ, проанализировав перехваченный пакет программой tcpdump или tethereal. |