Feedback
|
Table Of Contents
Firewall Stateful Inspection of ICMP
Prerequisites for Firewall Stateful Inspection of ICMP
Restrictions for Firewall Stateful Inspection of ICMP
Information About Firewall Stateful Inspection of ICMP
Feature Design of Firewall Stateful Inspection of ICMP
How to Configure Firewall Stateful Inspection of ICMP
Configuring Firewall Stateful Inspection for ICMP
Configuration Examples for Firewall Stateful Inspection of ICMP
Example: Firewall Stateful Inspection for ICMP Configuration
Example: Checking for ICMP Inspection
Example: ICMP Session Verification
Feature Information for Firewall Stateful Inspection of ICMP
Firewall Stateful Inspection of ICMP
First Published: November 24, 2010Last Updated: November 24, 2010The Firewall Stateful Inspection of ICMP feature addresses the limitation of qualifying Internet Control Management Protocol (ICMP) messages into either a malicious or benign category by allowing the Cisco IOS firewall to use stateful inspection to "trust" ICMP messages that are generated within a private network and to permit the associated ICMP replies. Thus, network administrators can debug network issues by using ICMP without concern that intruders may enter the network.
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the "Feature Information for Firewall Stateful Inspection of ICMP" section.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•
Prerequisites for Firewall Stateful Inspection of ICMP
•
Restrictions for Firewall Stateful Inspection of ICMP
•
Information About Firewall Stateful Inspection of ICMP
•
How to Configure Firewall Stateful Inspection of ICMP
•
Configuration Examples for Firewall Stateful Inspection of ICMP
•
Feature Information for Firewall Stateful Inspection of ICMP
Prerequisites for Firewall Stateful Inspection of ICMP
•
The network is enabled to allow all ICMP traffic to the security appliance interfaces.
•
Access rules are configured for ICMP traffic that terminates at a security appliance interface.
Restrictions for Firewall Stateful Inspection of ICMP
•
Before the Firewall Stateful Inspection of ICMP feature can be enabled, your Cisco IOS image must contain the Cisco IOS firewall.
•
This feature does not work for the UDP traceroute, in which UDP datagrams are sent instead of ICMP packets. The UDP traceroute is typically the default for UNIX systems. To use ICMP inspection with a UNIX host, use the "I" option with the traceroute command. This functionality causes the UNIX host to generate ICMP traceroute packets, which are inspected by the Cisco IOS firewall ICMP.
Information About Firewall Stateful Inspection of ICMP
•
Feature Design of Firewall Stateful Inspection of ICMP
Feature Design of Firewall Stateful Inspection of ICMP
ICMP is used to provide information about a network and to report errors in the network. It is a useful tool for network administrators to debug network connectivity issues. To guard against a potential intruder using ICMP to discover the topology of a private network, ICMP messages can be blocked from entering a private network; however, a network administrator may then be unable to debug the network. Cisco IOS routers can be configured to use access lists to either completely allow or deny ICMP.
Note
Access lists can still be used to allow unsolicited error messages along with Cisco IOS firewall inspection. Access lists complement Cisco IOS firewall ICMP inspection.
Stateful inspection of ICMP packets is limited to the most common types of ICMP messages that are useful to network administrators who are trying to debug their networks. Table 1 describes the ICMP message request types supported by Context-Based Access Control (CBAC). CBAC inspects the activity behind Cisco IOS firewall. CBAC specifies what traffic needs to be let in and what traffic needs to be let out by using access lists.
Note
ICMP packet types 0 and 8 are used for pinging: the source sends out an Echo Request packet, and the destination responds with an Echo Reply packet.
Packet types 0, 8, and 11 are used for ICMP traceroute: Echo Request packets are sent out starting with a TTL packet of 1, and the TTL is incremented for each hop. The intermediate hops respond to the Echo Request packet with a Time Exceeded packet; the final destination responds with an Echo Reply packet.
ICMP Inspection Checking
Return packets are checked by the inspect code, and not by access control lists (ACLs). The inspect code tracks each destination address from outgoing packets and checks each return packet. For Echo Reply and Timestamp Reply packets, the return address is checked. For Unreachable and Time Exceeded packets, the intended destination address is extracted from the packet data and checked.
For more information, see the "Example: Checking for ICMP Inspection" section.
How to Configure Firewall Stateful Inspection of ICMP
•
Configuring Firewall Stateful Inspection for ICMP (required)
Configuring Firewall Stateful Inspection for ICMP
Perform the following task to configure the Cisco IOS firewall to start inspecting the ICMP messages.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
ip inspect name inspection-name icmp [alert {on | off}] [audit-trail {on | off}] [timeout seconds]
4.
exit
5.
show ip inspect session [detail]
6.
show ip access-lists
7.
debug ip inspect icmp
DETAILED STEPS
Configuration Examples for Firewall Stateful Inspection of ICMP
•
Example: Firewall Stateful Inspection for ICMP Configuration
•
Example: Checking for ICMP Inspection
•
Example: ICMP Session Verification
Example: Firewall Stateful Inspection for ICMP Configuration
The default ICMP timeout is deliberately short (10 seconds) due to the security hole that is opened by allowing ICMP packets with a wildcarded source address back into the inside network. The timeout occurs 10 seconds after the last outgoing packet is sent from the originating host. For example, if you send a set of 10 ping packets spaced 1 second apart, the timeout expires in 20 seconds or 10 seconds after the last outgoing packet is sent. However, the timeout is not extended for return packets. If a return packet is not seen within the timeout window, the hole will be closed and the return packet will not be allowed in. Although the default timeout can be made longer if desired, it is recommended that this value be kept relatively short.
The following example shows how to configure a firewall for stateful inspection of ICMP packets:
no service padservice timestamps debug uptimeservice timestamps log uptimeservice password-encryption!hostname UUT!ip subnet-zerono ip domain lookup!ip inspect audit-trailip inspect name test icmp alert on audit-trail on timeout 30!interface Gigabit Ethernet0/1/1ip address 192.168.10.2 255.255.255.0ip inspect test in!interface Gigabit Ethernet1/1/1ip address 192.168.20.2 255.255.255.0ip access-group 101 in!ip classlessip route 0.0.0.0 0.0.0.0 192.168.20.3no ip http server!access-list 101 deny ip any any!line con 0exec-timeout 0 0!endExample: Checking for ICMP Inspection
In the following example, three destinations were pinged. The example shows that the inspect code tracked each destination address in the inspect session information.
Router# show ip inspect session detailEstablished SessionsSession 813A1808 (192.168.156.5:0)=>(0.0.0.0:0) icmp SIS_OPENCreated 00:04:20, Last heard 00:00:00Destinations: 3Dest addr [192.168.131.3]Dest addr [192.168.131.7]Dest addr [192.168.131.31]Bytes sent (initiator:responder) [8456:5880] acl created 4Inbound access-list 102 applied to interface Gigabit Ethernet0/0Inbound access-list 102 applied to interface Gigabit Ethernet0/0Inbound access-list 102 applied to interface Gigabit Ethernet0/0Inbound access-list 102 applied to interface Gigabit Ethernet0/0Example: ICMP Session Verification
The following is sample output from the show ip access-lists command. This example shows how ACLs are created for an ICMP session on which only ping packets were issued from the host.
Router# show ip access-listsExtended IP access list 101permit icmp any host 192.168.133.3 time-exceededpermit icmp any host 192.168.133.3 unreachablepermit icmp any host 192.168.133.3 timestamp-replypermit icmp any host 192.168.133.3 echo-reply (4 matches)Additional References
Related Documents
Standards
MIBs
MIBs MIBs LinkNone
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:
RFCs
RFCs1 TitleRFC 792
Internet Control Message Protocol
RFC 950
Internet Standard Subnetting Procedure
RFC 1700
Assigned Numbers
1 Not all supported RFCs are listed.
Technical Assistance
Feature Information for Firewall Stateful Inspection of ICMP
Table 2 lists the release history for this feature.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Note
Table 2 lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Table 2 Feature Information for Firewall Stateful Inspection of ICMP
Feature Name Releases Feature InformationFirewall Stateful Inspection of ICMP
Cisco IOS XE Release 3.2S
The Firewall Stateful Inspection of ICMP feature addresses the limitation of qualifying ICMP messages into either a malicious or benign category by allowing the Cisco IOS firewall to use stateful inspection to "trust" ICMP messages that are generated within a private network and to permit the associated ICMP replies.
The following sections provide information about this feature:
•
"Information About Firewall Stateful Inspection of ICMP" section
•
"How to Configure Firewall Stateful Inspection of ICMP" section
No commands were introduced or modified for this feature.
Glossary
ACL—access control list. An ACL is a list kept by routers to control access to or from the router for a number of services (for example, to prevent packets with a certain IP address from leaving a particular interface on the router).
CBAC—Context-Based Access Control. CBAC is the name given to the Cisco IOS Firewall subsystem.
firewall—A firewall is a networking device that controls access to the network assets of your organization. Firewalls are positioned at the entrance points into your network. If your network has multiple entrance points, you must position a firewall at each point to provide effective network access control.
The most basic function of a firewall is to monitor and filter traffic. Firewalls can be simple or elaborate, depending on your network requirements. Simple firewalls are usually easier to configure and manage. However, you might require the flexibility of a more elaborate firewall.
ICMP—Internet Control Message Protocol. An ICMP is a network layer Internet protocol that reports errors and provides other information relevant to IP packet processing.
RPC—remote-procedure call. An RPC is the technological foundation of client or server computing. RPCs are procedure calls that are built or specified by clients and are executed on servers, with the results returned over the network to the clients.
RTSP—Real Time Streaming Protocol. RTSP enables the controlled delivery of real-time data, such as audio and video. Sources of data can include both live data feeds, such as live audio and video, and stored content, such as prerecorded events. RTSP is designed to work with established protocols, such as RTP and HTTP.
SIP—Session Initiation Protocol. SIP is a protocol developed by the IETF MUSIC Working Group as an alternative to H.323. SIP features are compliant with IETF RFC 2543, published in March 1999. SIP equips platforms to signal the setup of voice and multimedia calls over IP networks.
SMTP—Simple Mail Transfer Protocol. SMTP is an Internet protocol providing e-mail services.
UDP—User Datagram Protocol. A UDP is a connectionless transport layer protocol in the TCP/IP protocol stack. UDP is a simple protocol that exchanges datagrams without acknowledgments or guaranteed delivery, requiring that error processing and retransmission be handled by other protocols. UDP is defined in RFC 768.
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/go/trademarks. Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.
© 2010 Cisco Systems, Inc. All rights reserved.
Feedback