Cisco IOS Input Queue Vulnerability
- Cisco routers, switches, and line cards running vulnerable versions of IOS
The following versions of IOS are known to be affected:
There is a vulnerability in the way Cisco IOS processes DHCP packets. Exploitation of this vulnerability may lead to a denial of service. The processing of DHCP packets is enabled by default.
The Dynamic Host Configuration Protocol (DHCP) provides a means for distributing configuration information to hosts on a TCP/IP network.The Cisco Internetwork Operating System (IOS) contains a vulnerability that allows malformed DHCP packets to cause an affected device to stop processing incoming network traffic.
Cisco routers, switches, and line cards provide support for processing DHCP packets. Cisco devices can act as a DHCP server, providing host configuration information to clients, or they can forward DHCP and BootP requests as a relay agent. The affected devices have the DHCP service enabled by default and will accept and process incoming DHCP packets. When a DHCP packet is received, it is placed into an input queue so it can be processed. Undeliverable DHCP packets may remain in the queue if malformed in a certain way. When the queue becomes full, the device will stop accepting all traffic on that interface, not just DHCP traffic.
The DHCP service is enabled by default in IOS. DHCP can only be disabled when
the no service dhcp command is specified in the running configuration.
Cisco notes the following in their advisory:
- Cisco routers are configured to process and accept DHCP packets by default, therefore the command service dhcp does not appear in the running configuration display, and only the command for the disabled feature, no service dhcp, will appear in the running configuration display when the feature is disabled. The vulnerability is present, regardless if the DHCP server or relay agent configurations are present on an affected product. The only required configuration for this vulnerability in affected versions is the lack of the no service dhcp command.
Cisco is tracking this issue as CSCee50294. US-CERT is tracking this issue as VU#630104.
By sending a specially crafted DHCP packet to an affected device, a remote, unauthenticated attacker could cause the device to stop processing incoming network traffic. Repeated exploitation of this vulnerability could lead to a sustained denial-of-service condition. In order to regain functionality, the device must be rebooted to clear the input queue on the interface.
Upgrade to fixed versions of IOS
Cisco has published detailed information about upgrading affected Cisco IOS software to correct this vulnerability. System managers are encouraged to upgrade to one of the non-vulnerable releases. For additional information regarding availability of repaired releases, please refer to the "Software Versions and Fixes" section of the Cisco Security Advisory.
Cisco recommends a number of workarounds. For a complete list of workarounds, see the Cisco Security Advisory.
Appendix A. References
- Vulnerability Note VU#630104 - http://www.kb.cert.org/vuls/id/630104
- Cisco Security Advisory: "Cisco IOS DHCP Blocked Interface Denial-of-Service" - http://www.cisco.com/warp/public/707/cisco-sa-20041110-dhcp.shtml
US-CERT thanks Cisco Systems for notifying us about this problem.
Feedback can be directed to the authors: Jeff Havrilla, Damon Morda, and Jason Rafail
November 11, 2004: Initial release