一次DOS攻防

    今天web服务器后台收到大量如下的输出 URLFilter : + -> falseURLFilter : % -> false ,几乎占满了整个控制台,场景甚为壮观...这个信息是来自我们防SQL注入的过滤器,所以很明显地有人在想干坏事。
    进入我们的Linux服务器,查看有那些人在连接:
    [root@edu ~]# netstat -ntu | grep ":80" | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
      1 219.237.145.231
      2 120.36.41.192
      2 172.16.129.214
      2 203.208.60.187
      3 172.25.21.3
     21 116.56.33.235
     26 124.237.60.20
     36 202.116.50.86
     38 202.116.50.101
     44 172.16.130.162
     44 172.31.109.70
     76 172.16.146.208
    251 124.92.79.168

    其中最后一个IP连接数长时间内都超过了200的连接数,还有时候上了三百。幸亏我们的服务器还算健壮,不然还有可能被DOS掉。既然是可以来历,于是到 IP.CN查了一下,124.92.79.168是来自辽宁省沈阳市联通的IP,不是校内的IP那就更加的可疑了(因为校园网出去很多时候是共用一个IP 的,高连接还是有可能的)。对于这位来历不明的访问者,我还是持谨慎态度,拦截下她,看看究竟。
    在iptables添加一条拦截,并重启防火墙:
    #iptables -I RH-Firewall-1-INPUT 1 -p tcp -m tcp -s 124.92.79.168 --dport 80 --syn -j REJECT
    #/etc/init.d/iptables restart

    Shit,居然没有用,看看配置表...
    #vi /etc/sysconfig/iptables
    ...居然没有写进去,why...

    算了还是手工添加吧(加粗部分):

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-I RH-Firewall-1-INPUT 1 -p tcp -m tcp -s 124.92.79.168 --dport 80 --syn -j REJECT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5800 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5803 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5900 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5903 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT


    :wq保存并退出,重启防火墙:
    #/etc/init.d/iptables restart
   
    检查连接:
    #netstat -ntu | grep ":80" | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

    ...可以IP依然在,不过连接数已经在下降...再Check...消失了。拦截成功!在看看Web服务器的控制台,美丽的图案果然消失了。妖业速速现 身~~SQL 注入的试探果然来自124.92.79.168这个畜生!
    作为职业的敏感,我马上联想起了前几天某公司给我们的某Web防火墙的推销:两个事件会不会有关联呢?...网络上搞安全的人,就是最危险的人。最好不要 给我言中,我已经做好长期战斗的准备!

你可能感兴趣的:(sql,linux,防火墙,dos,J#)