Well this post really isnt about stopping the smurf attack. The post covers rate limiting the type of traffic that is used in a smurf attack (ICMP Echo and Echo Reply).

Basically you want to avoid 3 things in this type of attack:
- Being the Victim
- Being the Reflector
- Being the Source
Using the Committed Access Rate (CAR) feature in Cisco IOS will allow you to limit the effect of a smurf DoS attack by defining acceptable levels of traffic allowed for ICMP.
First create the ACL identifying the ICMP traffic you want to limit. In this case you want to avoid your hosts being targeted by limiting echo replies and also being used as a reflecting by limiting echo requests.
access-list 190 permit icmp any any echo
access-list 190 permit icmp any any echo-reply
Its important to not that if you are being targeted only your ISP can effectively limit the traffic going to your site. Limiting on your device will indeed give you the opportunity to stop the traffic from entering your network. I have seen several TCP Syn DoS attacks bring a poorly configured router based firewall to its knees, to the grave and back to its knees again after a reboot.
Assign rate limiting to the internet facing interface:
int fa0
rate-limit input access-group 190 8000 1500 2000 conform-action transmit exceed-action drop
rate-limit output access-group 190 8000 1500 2000 conform-action transmit exceed-action drop
I configured both inbound and outbound. This will allow me to limit ICMP echo and echo reply in both scenarios of being a target and a reflector. The bit per second value that I used is quite low (8000). I did this in order to test and verify I could exceed the burst rate and get some drops.
…click here to read more

