飞秋添加好友导致防火墙业务中断故障

发布时间:  2015-08-21 浏览次数:  478 下载次数:  4
问题描述

XX银行使用USG5150作为局域网网关设备,同时部署TSM软件,USG5150作为SACG设备

XX银行客户反馈不定期会出现网络短暂中断现象,随后会自动恢复

告警信息

登陆USG5150设备,查看到如下告警信息:

 

%201X-X-X 12:56:44 SACG-1 %%01SEC/4/STREAM(l): System number of session is too much: 1000000.

处理过程

1,查看到业务正常时的会话表数量为17000条,而故障时的会话表数量达到100W条,超出设备规格极限,由此分析肯定是有异常攻击。

2,在客户现场值守,当出现网络中断时,第一时间查看USG5150会话表,发现异常会话端口号为2425

3,经过查询得知,端口号为2425的业务为飞秋

4,根据会话表的IP地址,查到该员工电脑上确实安装并使用了飞秋软件

5,根据会话表目的IP地址递增的特点,分析飞秋可能在进行IP地址扫描操作,经过与该员工交流,该员工有做过添加IP段,扫描好友的操作,且每次操作都发现网络卡顿。

6,根据该员工提供的信息进行添加好友操作,网络中断异常复现。

根因
客户办公网络内所使用的飞秋IM工具在添加网段扫描用户时会生成大量会话表,当添加多个16位掩码的网段时,会话瞬间能达到100W条以上,超出防火墙USG5150的处理极限,导致无法新建会话,网络中断
解决方案

一、       通过策略来禁止使用飞秋

主要有以下二种方式:

Ø  监控进程(禁止程序运行)

Ø  监控IP访问(禁用端口)

1.       监控进程

当用户运行飞秋后,会比对当前进程的散列值,如果与策略定义相同,那么就禁止程序运行;

缺点:     进程标识符的添加需要考虑飞秋目前可用的所有版本,且当飞秋软件每更新一个版本,就要重新计算MD5值再进行手动更新。

 

 

任意建立一个策略模板或在已经分配的策略模板上依照下图进行配置:

终端执行结果:

 

2.       监控IP访问

通过禁用飞秋程序的 2425端口,协议为TCP/UDP来禁止使用飞秋程序;

缺点:     一旦飞秋程序端口发生变更后(飞秋支持使用自定义端口“网络设置项里”),就需要定义新的端口禁止规则,另外如果其他的应用程序也需要用到2425端口,就无法使用。

终端执行结果:

客户端无法添加用户,偶尔会有几个同网段的用户但无法发送消息。

 

二、   通过SACG设备来禁止使用飞秋

通过配置ACL拒绝 包含 2425端口的数据包。

缺点:    同监控IP访问策略。

配置命令如下:

####定义ACL####

System

Acl 3020

Rule 10 deny tcp source-port eq 2425

Rule 20 deny udp source-port eq 2425

Rule 30 deny tcp destination-port eq 2425

Rule 40 deny udp destination-port eq 2425

Quit

 

####配置流分类,定义基于ACL的匹配规则####

Traffic classifier Feiq

If-match acl 3020

Quit

 

####配置流行为#####

Traffic behavior Feiq

Quit

 

####配置流策略####

qos policy Feiq

Classifier Feiq behavior Feiq

Quit

 

####应用流策略到GI0/0/1接口####

Int gi 0/0/1

Qos apply plicy Feiq inbound

Quit

 

 

####查看是否生效####

Display qos policy int gi 0/0/1 inbound

  

  Interface: GigabitEthernet0/0/1

 

  Direction: Inbound

 

  Policy: Feiq

   Classifier: default-class

     Matched : 0/0 (Packets/Bytes)

     Rule(s) : if-match any

     Behavior: be

      -none-

   Classifier: Feiq

     Matched : 0/0 (Packets/Bytes)        ####当此数值非0时,表示有飞秋的流量命中此策略,策略生效####

     Offered rate : 0 bps, drop rate : 0 bps

     Operator: AND

     Rule(s) : if-match acl 3020

     Behavior: Feiq

      -none-

END