Показаны сообщения с ярлыком ICMP. Показать все сообщения
Показаны сообщения с ярлыком ICMP. Показать все сообщения

понедельник, 21 февраля 2011 г.

Подавление нежелательных сообщений Host Unreachable


 Вообще для этого есть команда интерфейса no ip unreachable. Но применять ее следует крайне осторожно, т.к. она не позволяет отрабатывать процессу PMTUD.
 В связи с этим возникает естественное желание использовать ACL. Но ACL'ы к трафику, генерируемому самим маршрутизатором, не применяются, поэтому контролировать ICMP пакеты, сгенерированные маршрутизатором мы с их помощью не можем.

 Для этого существует команда ip local policy route-map.

пятница, 4 февраля 2011 г.

ZBF и Traceroute


В версии IOS 12.4 при использовании Zone-Based Firewall  для корректной работы утилиты traceroute требуется разрешить прохождение ICMP пакетов port-unreachable (type 3, code 3) и ttl-exceeded(type 11, code 1) без инспекции.

Для этого создаем ACL:

ip access-list extended TRACE
 permit icmp any any port-unreachable
 permit icmp any any ttl-exceeded

ip access-list extended ICMP
 permit icmp any any port-unreachable
 permit icmp any any ttl-exceeded
 permit icmp any any packet-too-big


Класс:

class-map type inspect match-all TRACE
 match access-group name TRACE

class-map type inspect match-all ICMP
 match access-group name ICMP



И объявляем политику так, чтобы эти пакеты не инспектировались, а пропускались как есть:

1.   Внутрь

policy-map type inspect ISP-SELF
 class type inspect  TRACE
  pass
 class type inspect ISP-SELF
  inspect
 class class-default
  drop log


2.   Наружу

policy-map type inspect SELF-ISP
 class type inspect ICMP
  pass
 class type inspect SELF-ISP
  inspect
 class class-default
  drop

понедельник, 31 января 2011 г.

Настройка ICMP политик

Для предотвращения reconnaissance атак следует запретить все ICMP сообщения, кроме разрешенных.
В зависимости от условий, могут быть различные настройки, но, как правило, необходимо  разрешать: 
1.   PING   
Название
Type
Code
Echo request
8
0
Echo reply  
0
0

2.   TRACEROUTE
Название
Type
Code
11
1
Destination port unreachable
3
3

3.   Для обеспечения работы Path MTU discovery
Название
Type
Code
Fragmentation required, and DF flag set
3
4

Необходимо помнить, что маршрутизатор  применяет ACL только к транзитным пакетам (за некоторым исключением на некоторых платформах) и не применяет  к пакетам, сгенерированным самим маршрутизатором.  Для подавления сообщений, сгенерированных маршрутизатором,  ICMP Type 3 существует команда интерфейса no ip unreachable.  Однако, на внешнем интерфейсе она не всегда хороша, т.к. эта команда подавляет  отправку сообщений ICMP Type 3 Code 4 (Fragmentation required, and DF flag set), делая невозможным Path MTU Discovery. Чтобы маршрутизатор не генерировал сообщения ICMP Type 3 при обращении на диапазон неиспользуемых адресов, нужно на Null интерфейсе (предполагаем, что маршрут к неиспользуемым адресам указывает именно туда)  прописать  ip unreachable, тогда маршрутизатор пакеты к этим адресам будет отбрасывать молча.

List of permitted control messages (incomplete list)

Type
Code
Description
0 - Echo Reply[3]
0
1 and 2

Reserved
3 - Destination Unreachable[4]
0
Destination network unreachable
1
Destination host unreachable
2
Destination protocol unreachable
3
Destination port unreachable
4
5
Source route failed
6
Destination network unknown
7
Destination host unknown
8
Source host isolated
9
Network administratively prohibited
10
Host administratively prohibited
11
Network unreachable for TOS
12
Host unreachable for TOS
13
Communication administratively prohibited
0
Source quench (congestion control)
0
Redirect Datagram for the Network
1
Redirect Datagram for the Host
2
Redirect Datagram for the TOS & network
3
Redirect Datagram for the TOS & host
6

Alternate Host Address
7

Reserved
0
Echo request
9 - Router Advertisement
0
Router Advertisement
10 - Router Solicitation
0
Router discovery/selection/solicitation
11 - Time Exceeded[5]
0
TTL expired in transit
1
Fragment reassembly time exceeded
12 - Parameter Problem: Bad IP header
0
Pointer indicates the error
1
Missing a required option
2
Bad length
0
Timestamp
0
Timestamp reply
15 - Information Request
0
Information Request
16 - Information Reply
0
Information Reply
0
Address Mask Request
0
Address Mask Reply
19

Reserved for security
20 through 29

Reserved for robustness experiment
0
Information Request
31

Datagram Conversion Error
32

Mobile Host Redirect
33

Where-Are-You (originally meant for IPv6)
34

35

Mobile Registration Request
36

Mobile Registration Reply
37

Domain Name Request
38

Domain Name Reply
39

40

41

42 through 255

Reserved