zoukankan      html  css  js  c++  java
  • DNS仍然是整个互联网中最脆弱的一环

    1.安全事件

    尽管已经有超过30年历史,DNS仍然是整个互联网中最脆弱的一环。下面盘点一下近年来比较严重的DNS安全事件。

    2009年5月19日南方六省断网事件。一起由于游戏私服私斗打挂dnspod,殃及暴风影音域名解析,然后进一步殃及电信local dns,从而爆发六省大规模断网的事故。事件影响深远。

    2010年1月12日百度域名劫持事件。baidu.com的NS记录被伊朗网军(Iranian Cyber Army)劫持,然后导致www.baidu.com无法访问。事件持续时间8小时,是百度成立以来最严重的故障事件,直接经济损失700万人民币。

    2013年5月4日DNS劫持事件。由于主流路由器厂商安全漏洞而导致的全网劫持事件,号称影响了800万用户。

    2013年8月25日CN域被攻击事件。cn域dns受到DoS攻击而导致所有cn域名无法解析事故。

    2014年1月21日全国DNS故障。迄今为止,大陆境内发生的最为严重的DNS故障,所有通用顶级域(.com/.net/.org)遭到DNS污染,所有的域名全被指向了位于美国的一个IP地址(65.49.2.178)。

    2.攻击手段

    query flood  通过不断的发DNS请求报文来耗尽目的DNS资源,形成拒绝服务。具体分类包括源IP是否随机以及目的域名是否随机等。

    response flood  通过不断的发DNS响应报文来达到拒绝服务的目的。

    udp floodv  DNS底层协议为UDP,基于UDP的各种flood攻击也都会给DNS带来危害。

    折射攻击(反射攻击)  伪造源IP为第三方,借助DNS的回包来达到DoS掉第三方的目的。属于“借刀杀人”的手段。

    放大攻击  折射攻击的一种。通过恶意的构造响应报文来达到流量放大作用,从而对第三方形成带宽攻击。请求报文几十字节,响应报文几千字节,意味着可以形成百倍以上流量放大系数。

    缓存投毒  每一台DNS都有缓存,缓存投毒指的是通过恶意手段污染DNS缓存,形成DNS劫持或者拒绝服务。

    漏洞攻击  利用各种漏洞来达到入侵并控制DNS服务器目的。漏洞不仅仅指DNS程序本身的,也有可能是机器或者网络其它的“问题点”。

    社会工程学手段  所有的系统都需要人的维护,而人永远是安全中最脆弱的一环。

    3.防御手段

    对于权威DNS来说,由于请求来源多是运营商或者公共DNS厂商的递归DNS,源IP相对比较固定,可以实施源IP白名单策略。该策略对于伪造源IP的攻击具有一定削弱作用。对于域名随机的攻击来说,如果权威DNS本身承载的域名量不是很大,可以考虑域名白名单策略。如果源IP就是运营商的,然后请求域名也是合法的,只能靠一定限速策略以及DNS服务器本身性能了。

    对于递归DNS来说,各种白名单策略误伤都会很严重,因此也主要靠DNS服务器本身性能了。

    高性能DNS服务器目前比较流行的做法是基于Intel DPDK来实施。

    另外一种推荐实施的策略是RRL(Response Rate Limit),该策略对于防御折射攻击/放大攻击有一定效果。尽管折射攻击的目标不是DNS本身,但是不防御的话如果把第三方打挂仍然会产生连带责任,因此建议实施RRL。

  • 相关阅读:
    Oracle 推出 ODAC for Entity Framework 和 LINQ to Entities Beta版
    Entity Framework Feature CTP 5系列文章
    MonoDroid相关资源
    MSDN杂志上的Windows Phone相关文章
    微软学Android Market推出 Web Windows Phone Marketplace
    使用 Visual Studio Agent 2010 进行负载压力测试的安装指南
    MonoMac 1.0正式发布
    Shawn Wildermuth的《Architecting WP7 》系列文章
    使用.NET Mobile API即51Degrees.mobi检测UserAgent
    MongoDB 客户端 MongoVue
  • 原文地址:https://www.cnblogs.com/xiongwei/p/15026739.html
Copyright © 2011-2022 走看看