SQL蠕虫一直是让企业网络管理人员很头疼的问题,许多时候如果通过Etherpeek针对端口1433、1434抓包会发现,很多用户电脑上面并没有安装SQL服务器,但是仍能监测有蠕虫通过1433端口向外面大量发包。一般来说微软的桌面数据库MSDE也有可能感染该蠕虫。
看看SQLsnake蠕虫,也叫Spida及Digispid,首次露面以来,就一直在扫描成千上万台与Internet相连的电脑系统的1433端口,企图寻找运行微软SQL且没有在系统管理员账号上设置适当密码的系统。还存在另外一种病毒,即使并没有安装数据库的PC也会感染。这个时候客户端PC如果没有办法解决的话,就只能从网络层进行防护了。
一般来说UDP端口1434都是用来做侦听的,可以在网络设备上过滤掉UDP1434;而TCP端口1433是SQL服务器正常通信需要的端口,并不能全网过滤掉。
但是一般来说,跨网段的数据库很少,这样,我们可以开放有数据库的网段的1433端口,然后再过滤全网的1433,这样减少了故障处理点,也达到了目的。
看看下面的ACL,核心三层交换机S8016针对1433、1434所做的ACL,其他设备类似。
注:全网封UDP 1434,开放10.145.7.0网段的TCP端口1433。
rule-map intervlan rule72 tcp any any eq 1433
rule-map intervlan rule73 tcp any any eq 1434
rule-map intervlan rule69 tcp any 10.145.7.0 0.0.0.255 eq 1433
eacl acl-jxic rule69 permit priority 34083
eacl acl-jxic rule72 deny priority 34088
eacl acl-jxic rule73 deny priority 34090
之后用Etherpeek抓包一看,SQL蠕虫没有了,设备也没有告警,大功告成!