Со временем обрывки знаний и умений становится все труднее удержать в голове. Они расползаются по уголкам памяти заполняя все свободное место. Извлекать необходимое на свет становится все сложнее. Этот блог - рабочая записная книжка.

Wednesday, September 12, 2007

Live and learn

[upd, 19.09.2007]
Попалась совершенно замечательная статья в подробностях показывающая как нижеописанное применять на PIX/ASA.
http://security-planet.de/2005/07/26/cisco-pix-capturing-traffic/


Век живи - век учись. Всегда оказывается что чего-то не знаешь...

Как часто при попытке дианостировать разнообразные "подземные стуки", я сожалел о том, что под Cisco нет ничего похожего на tcpdump.

Глупец. Я ошибался. Оказывается, все прогрессивное человечество давно энает способы. Итак, представляем...


1. Cisco PIX/ASA

Способ хорошо известен.

Описан здесь: http://cisco.com/en/US/products/ps6120/products_tech_note09186a00807c35e7.shtml

Скопирую суть:

ciscoasa(config)#access-list inside_test permit icmp any host 192.168.1.1

ciscoasa(config)#capture inside_interface access-list inside_test interface inside

The user pings the inside interface of the ASA (ping 192.168.1.1). This output is displayed.


ciscoasa#show capture inside_interface

1: 13:04:06.284897 192.168.1.50 > 192.168.1.1: icmp: echo request


2. Cisco router

Создаем ip access-list которым будем "ловить" интересующий нас трафик.

routerA(conf)# access-list 111 permit ip 10.10.10.0 0.0.0.255 10.10.15.0 0.0.0.255
routerA(conf)# access-list 111 permit ip 10.10.15.0 0.0.0.255 10.10.10.0 0.0.0.255

Запускаем команду на выполнение и смотрим результат:

routerA# debug ip packet 111 detail

IP packet debugging is on (detailed) for access list 111


*Mar 1 00:10:32.975: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.119: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 44, forward
*Mar 1 00:10:33.123: TCP src=23, dst=43741, seq=762553188, ack=408925172, win=4128 ACK SYN
*Mar 1 00:10:33.239: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.287: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.291: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.431: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 52, forward
*Mar 1 00:10:33.435: TCP src=23, dst=43741, seq=762553189, ack=408925181, win=4119 ACK PSH
*Mar 1 00:10:33.455: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 77, forward
*Mar 1 00:10:33.459: TCP src=23, dst=43741, seq=762553201, ack=408925181, win=4119 ACK PSH
*Mar 1 00:10:33.575: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.599: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.647: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:33.759: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 40, forward
*Mar 1 00:10:33.763: TCP src=23, dst=43741, seq=762553238, ack=408925196, win=4104 ACK
*Mar 1 00:10:35.415: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 40, forward
*Mar 1 00:10:35.423: TCP src=23, dst=43741, seq=762553238, ack=408925196, win=4104 ACK PSH FIN
*Mar 1 00:10:35.623: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:35.627: IP: tableid=0, s=10.10.10.5 (FastEthernet0/0), d=10.10.15.1 (Serial2/0), routed via FIB
*Mar 1 00:10:35.647: IP: s=10.10.15.1 (Serial2/0), d=10.10.10.5 (FastEthernet0/0), g=10.10.10.5, len 40, forward
*Mar 1 00:10:35.651: TCP src=23, dst=43741, seq=762553239, ack=408925197, win=4104 ACK


Это решение не работает с fast-switching (ip route-cache).

2 comments:

brandnewname said...

Михаил, как я понимаю речь идёт о PIXOS версии 7+?
Должны быть ещё средства просмотра трафика аля tcp-dump с полным отображением пакетов в сыром виде (крайне хочется в это верить)
В версии 6.3 это команда debug packet

pablo said...

Полный дамп пакетов можно посмотреть той же командой только с параметром dump. Например:
pixfirewall# show capture cap00 dump
10 packets captured
1: 14:42:29.264405 10.10.11.2.35355 > 10.10.10.2.23: S 15213754:15213754(0) win 4128
0x0000 45c0 002c aa43 0000 ff06 e7b0 0a0a 0b02 E..,.C..........
0x0010 0a0a 0a02 8a1b 0017 00e8 24ba 0000 0000 ..........$.....
0x0020 6002 1020 b2b6 0000 0204 0218 `.. ........
2: 14:42:29.311812 10.10.11.2.35355 > 10.10.10.2.23: . ack 2867554711 win 4128
0x0000 45c0 0028 aa44 0000 ff06 e7b3 0a0a 0b02 E..(.D..........
0x0010 0a0a 0a02 8a1b 0017 00e8 24bb aaeb 6997 ..........$...i.
0x0020 5010 1020 b244 0000 P.. .D..


Подробнее на сайте cisco.