1.使用ip verfy单播反向路径网络接口命令。
该功能检查通过路由器的每个数据包。在路由器的CEF(Cisco ExpressForwarding)表中,如果没有到数据包源IP地址的路由,路由器将丢弃该数据包。例如,路由器收到一个源IP地址为1.2.3.4的数据包,如果CEF路由表中没有该IP地址1.2.3.4的路由(即反向数据包传输所需的路由),路由器将丢弃该数据包。
单播反向路径转发可以防止SMURF攻击和其他基于ISP(本地办公室)中IP地址伪装的攻击。这可以保护网络和客户免受来自互联网其他部分的入侵。使用单播RPF需要打开路由器的“CEF交换”或“CEF分布式交换”选项。没有必要将输入接口配置为CEF交换。只要该路由器的CEF功能打开,所有独立的网络接口都可以配置为其它交换模式。RPF(反向传输路径转发)属于在网络接口或子接口上激活的输入功能,处理路由器收到的数据包。
在路由器上打开CEF功能非常重要,因为RPF必须依赖CEF。单播RPF包含在支持CEF的Cisco IOS 12.0及更高版本中,但不支持Cisco IOS 11.2或11.3。
2.使用访问控制列表(ACL)过滤RFC 1918中列出的所有地址。
参考下面的例子:
界面xy
ip访问-组101 in
访问列表101拒绝ip 10.0.0.0 0.255.255.255 any
访问列表101拒绝ip 192.168.0.0 0.0.255.255 any
访问列表101拒绝ip 172.16.0.0 0.15.255.255 any
访问列表101允许ip any any
3.参考RFC 2267,使用访问控制列表(ACL)过滤传入和传出的消息。
参考下面的例子:
- ISP端边界路由器-客户端边界路由器-
ISP边界路由器应该只接受源地址属于客户网络的通信,而客户网络应该只接受源地址没有被客户网络过滤的通信。以下是ISP端边界路由器的访问控制列表(ACL)示例:
访问列表190允许ip any
访问列表190拒绝ip any any [log]
连接
ip访问-组190 in
以下是客户端边界路由器的ACL示例:
访问列表187拒绝ip any
访问列表187允许ip any any
访问列表188允许ip any
访问列表188拒绝ip any any
连接
ip访问-组187 in
ip访问-组188出局
如果打开CEF功能,通过使用单地址反向路径转发(单播RPF),访问控制列表(ACL)的长度可以充分缩短,从而提高路由器性能。为了支持单播RPF,只需要在路由器中全开CEF即可;打开此功能的网络接口不必是CEF交换接口。
4.使用ICMP(控制访问速率)来限制internet控制消息协议的流量。
参考下面的例子:
界面xy
限速输出接入组2020 3000000 512000 786000符合动作
传输超动作丢弃
访问列表2020允许icmp任何回应回复
有关更多详细信息,请参见IOS基本功能。
5.设置SYN数据包流率。
连接
速率限制输出访问组153 45000000 100000 100000符合动作
传输超动作丢弃
速率限制输出访问-组152 1000000 100000 100000符合动作
传输超动作丢弃
访问列表152允许tcp任何主机eq www
访问列表153允许tcp建立任何主机设备
有必要修改和替换:
4000000是最大连接带宽。
1000000是介于SYN洪水流量的30%和50%之间的值。
正常突发速率和最大突发速率是正确的值。
请注意,如果突变率设置为30%以上,许多合法的SYN数据包可能会丢失。使用“show interfaces rate-limit”命令检查此网络接口的正常和过度速率,这有助于确定适当的变化速率。这个SYN速率限值设置标准是在保证正常通信的基础上,尽量小。
警告:一般建议在网络正常工作时测量SYN包流量,并以此参考值进行调整。测量过程中需要保证网络的正常运行,避免出现较大误差。
另外,建议考虑在可能成为SYN攻击的主机上安装IP Filter等IP过滤工具包。
6.收集证据,联系网络安全部门或机构。
如果可能,捕获攻击数据包进行分析。建议使用SUN workstation或Linux等高速电脑进行抓包。常用的数据包捕获工具有TCPDump和snoop。基本语法是:
tcpdump -i接口-s 1500 -w捕获文件
snoop -d接口-o捕获文件-s 1500
在此示例中,MTU大小假定为1500。如果MTU大于1500,则需要修改相应的参数。这些捕获的数据包和日志作为证据提供给相关网络安全部门或机构。