互联网创业公司如何防御 DDoS 攻击?

DDOS防御网 【 www.ddos.xin 】 近期检测到全球大范围DDOS攻击,相信各位互联网创业者们都有机会遇到这种恶心的行为,来总结一下防御方…
关注者
3,199
被浏览
741,184

136 个回答

在果壳网任职期间经历过多次DDoS攻击。那种绝望的心情,还历历在目。问题不是你能做什么,而是机房决定了其实你什么都做不了。

攻击者是控制一个足够大的分布式集群来发起攻击,各种杂七杂八的包,什么都会有。根本不在乎你开的什么服务,也没那耐心分析你有什么服务。比如哪怕你根本没开UDP的任何服务,但他就是发一大堆UDP的包,把你带宽占满。还有啥办法。

十多年前的OS还没法应付大量TCP并发连接,于是那个年代有个SYN flood攻击,就是一大堆SYN包尝试握手。现代也有,效果大不如前,但是仍然在大流量下可以阻塞受害者的通信能力。

更现实的问题在于,机房的总带宽有限。当你的服务器IP段受到攻击时,他会直接找上级接入商将发给你的包在主干网上都丢掉。此时虽然知道自己正在被DDoS攻击,但攻击包根本就没到机房,更别说服务器,于是只能是守着服务器,毫无流量,等待。

上级接入商大多是垄断国企,根本没耐心跟你做任何深层次合作,直接丢包是最简单方便的方法。同时,即便此时攻击者停止了攻击,你也不知道。而想要上级接入商重新开启给你的包转发,动则就是个一天的流程。而一旦发现攻击还没完,就立刻又是丢包。

那几年被攻击时,也火烧火燎的找办法。尝试将网站部署到云计算平台上,依靠对方提供的带宽冗余来顶。甚至可能只是拼短期带宽的费用。当时国内的云计算提供商试了好几家,最终都因为没有足够的带宽应对攻击而拒绝了我们。他们都是出于对果壳网的喜爱和免费帮忙的,能做到这一步也挺不容易了。

有人提到攻击弱点,我感觉真正这样花费精力去分析的攻击者其实不多见。不过大多攻击确实会避开一些明显抗攻击能力不错的点,比如很多网站的首页会做静态化,所以攻击首页就不划算。图片同理,对CPU消耗太小了。

几个常见的弱点:

1、登录认证

2、评论

3、用户动态

4、ajax api

总之涉嫌写数据库,联表查询,缓存涧出的都是好目标。

所以,回答就是:没有啥好办法,耐心等待吧。

看了其他几个回答提供的方案,分别分析一下:

1、拼带宽:或者说拼软妹币,这不是一点点钱能搞定的,果壳网彼时只买了不足100M带宽,所在早期机房总带宽也不足40G,攻击带宽都没见过低于10G的(机房的人后来告诉我的)。假设某便宜机房(肯定不在北上广深),带宽价格为100元/M*月,每月按峰值计费。则要买10G带宽顶一下,需要的月费是100万,100万……

2、流量清洗&封IP:如前述,要这么做的前提是攻击包至少要到你的机房。而机房自保的措施导致了数据包根本到不了机房,无解

3、CDN服务:现代CDN提供商还没有完善的动态网页加速技术,所以结果就是,你充其量利用CDN保住静态化的主页可以访问,其他任何动态网站功能就只能呵呵了。


这些与DDoS的周旋发生在十多年前了。在现代的CDN提供商则有了更多方案来抵御DDoS攻击。将流量直接委托给CDN提供商,则可以充分利用上这些成熟而强大的方案。下文就是著名CDN提供商Akamai的应对案例,很值得大家学习现代DDoS攻击原理和基于CDN的防御手段。

趁着跑脚本的时候来回答一下:

创业公司其实有很多方法来监测DDoS行为,推荐一个东西:FastnetMon,这个可以用来监测流量,一旦流量超标就会发邮件提醒管理员查看情况,但是从安全的角度来看,本人还是推荐去加一个旁路流量采集装置,比如说bluecoat这种玩意儿,当然没钱的话可以考虑用pfring自己搞一个。

这么做的原因主要是:FastnetMon虽然可以监测流量,但是不能分辨出是正常流量还是一场流量,也就是说同样次数的cc攻击和正常http请求,fastnetmon只会告诉管理员流量异常,而且会把一些信息写在邮件里,但是是不是真的攻击,这个还需要用旁路流量采集设备去看数据样本去做协议分析和判断。

其实面对DDoS的话,主要还是怕反射性和Botnet这种,其实基于TCP的DDoS攻击可以通过本地合理配置tcp半连接、CDN清洗和高防IP、云堤这些东西来过滤异常流量,但是反射性的DDoS就很xx了,就目前来看的话,除了检查配置是不是存在不合规的情况之外,还应该在被ddos的时候立刻屏蔽到端口的流量,比如说遭遇NTP反射攻击的时候,123端口就会很蛋疼。