当你的网站被疯狂攻击时你能做什么?

  • 前言

自开始搭建网站八爪鱼招标网到现在大概有四个多月的时间,搜索引擎收录方面也从零收录逐渐的发展到在百度有四十万的收录,在360搜索有四万多的收录,搜索引擎流入的流量也慢慢增多,今天上班时 发现网站出现有故障,主要表现如下:

 
1、网站访问非常缓慢;
2、静态页面也偶尔无法访问;
3、无法远程登录到服务器;
 
于是赶紧打开QQ、拿起电话向云服务器提供商寻求帮助,但一时半会儿那边也无法分析出什么原由,于是决定先让服务器重启试试(ps: 这时情况已万分火急,只能访问静态页面了),重启后终于可以远程登录,于是打开服务器事件查看器发现有几项错误:
 
  • 出现原因
1、 为应用程序池"DefaultAppPool"提供服务的进程未能响应Ping,进程ID是"284"
当你的网站被疯狂攻击时你能做什么?_第1张图片
2、 等待Windows Error Reporting Service服务的连接超时
当你的网站被疯狂攻击时你能做什么?_第2张图片
3、 远程过程中服务器每隔几分钟假死一阵子
 
从记录的事件日志来看应该是服务器及IIS超时及无响应造成的,有可能是在短时间内有大量的访问造成服务资源紧缺而无法响应,那这些请求是否正常呢?
 
  • 造成IIS及服务器无法响应可能的原因
到底是什么请求,带头疑问想到了以下可能:
1、 搜索引擎的抓取?
2、 其他第三方采集我们站点的数据?
3、 遭遇恶性攻击?
4、还是由于 招标网的 知名度太高,服务器无法承受过高的自然流量呢?(ps: 自恋傻想了一下,大家勿喷~)
 
 
 
假设这时有一神器能帮我解决问题,哪怕只是查出造成服务器挂机的原因是,我将会感激涕零、热泪盈眶、谢天谢地,怀着感恩与对技术执着的精神,我终于找到了一款可以分析网站攻击的工具:
当你的网站被疯狂攻击时你能做什么?_第3张图片
 
大家看看,多么邪恶的攻击啊,IP182.87.187.100,大多数攻击是SQL注入及跨站攻击,主要是去尝试执行php、asp、zip等文件;
 
  • 任你虐我千百遍,我不当你是初恋
人家说:“纵使你虐我千百遍.我依然视你如初恋”,我才不要呢!!!
如何将攻击视为初恋,那我们的网站 八爪鱼招标网将会像星爷那部《美人》一样,八爪鱼被烤着吃~~~
 
那如何防范这种攻击呢?
第一能想到的就是封IP,通过Windows Server 2008的防火墙功能将能预见的IP禁止掉:
当你的网站被疯狂攻击时你能做什么?_第4张图片
建立入站规则禁止相关IP;
 
第二就是通过程序将这些IP或攻击名称(大部分攻击是以asp、php这样可执行文件)去禁止,如通过ASP.NET返回403状态码:
 
 void Application_BeginRequest(object sender, EventArgs e)
    {
        if (SiteSetting.Instance.IsRecordUser > 0) 
        { 
            if (Request.RawUrl.Contains(".asp") || Request.RawUrl.Contains(".php"))
            {
                WebUtils.ProhibitIP();  //结束请求,返回403状况码
                return;
            }
        }
    }    

 


 
 
还有其它更好的方法吗?请分享,谢谢!
 
 
  • 小广告
八爪鱼招标网是向政府、企事业单位提供免费招标、采购信息的平台(http://www.8yu.cn),现在还需要持续改进,包括数据量、访问速度、版本、安全以及体验的问题,如果您能提供一点点想法及帮助在下万分感谢!

你可能感兴趣的:(当你的网站被疯狂攻击时你能做什么?)