版权声明:本文由腾讯云DNSPod团队原创文章,转载请注明出处: 
文章原文链接:https://www.qcloud.com/community/article/174

来源:腾云阁 https://www.qcloud.com/community

美国时间的10月21日清晨7点开始,美国Dynamic Network Service公司的DNS服务器遭受了大规模分布式拒绝式服务(DDos:Distributed Denial of Service)攻击,Dyn公司是美国的主要DNS服务商,DDos攻击导致Dyn的DNS解析服务瘫痪,用户无法解析到目标网站的IP地址,引起Twitter、Tumblr、Spotify、Airbnb、Github、PayPal等众多站点无法访问,美国国土安全局、FBI也开始调查此事。

来自智能设备的DDos攻击

DDos攻击是互联网中常见的一种攻击手段,黑客向某些服务器、个人PC、智能设备植入DDos攻击程序后,控制所有机器同一时间对目标网站发起流量攻击,被攻击的网站瞬间带宽被占用,正常用户则无法访问,此次Dyn公司遭受的攻击大量则来自物联网设备,日常生活中日益增多的智能设备,被黑客利用其中的安全漏洞作为DDos攻击中的肉鸡,攻击方式简单直接又野蛮粗暴,黑客作案成本低、门槛低,已经成为一条高度成熟的产业链。

各类型DNS服务的防攻击能力

目前国内提供域名授权解析服务主要的分为以下几种类型,每种类型都有各自的优缺点,这里主要谈论解析安全相关问题。

一.域名注册商附带DNS

授权DNS解析服务作为域名注册商的附带服务,一般只提供基本的解析服务,不会或很少提供附加服务,典型如新网、易名中国等,目前是主要存在以下特点。

  • 域名DNS受到攻击时不能提供抗攻击服务。
  • 稳定性难以保证,DNS解析服务经常出现异常。
  • 域名鱼龙混杂,受攻击可能性很高,可能会影响正规域名的解析。
  • 非核心业务,受重视程度不够,出现安全问题的响应不够及时。
  • 解析服务器配置存在安全隐患,如开启域传送、any查询等,容易造成内部信息泄露或被利用作为反射放大攻击。
    企业和开发者们,如果是为重要的业务进行解析,尽量不要选择这类型的DNS服务。

二.专业域名解析服务提供商

专注提供域名授权解析及相关服务的第三方企业,国内此类服务商腾讯云DNSPod、新万网解析、DNS.com、cloudxns等,此类企业因为专一性很高,所以针对DNS遇到的各类安全问题通常都有比较完善的解决方案,且有专业的DNS团队来解决突发的安全问题。
以腾讯云DNSPod为例,为近125万用户、1100万域名提供服务,日处理DNS请求超过350亿次,据统计,平均每日都会有超过30次的攻击,并且历经了各种类型的DNS攻击,所以针对DNS遇到的各类安全问题通常都有比较完善的解决方案,且有专业的DNS团队来解决突发的安全问题,下面介绍几个典型案例:

常规DDos攻击:2009年5.19断网

和这次Dyn攻击事件非常相似,当年由于暴风影音的DNS机制缺陷,解析失败会无限重试,而且全国装机量非常大,被DDos攻击后递归DNS失败,导致运营商DNS被压垮,南方大范围断网。
攻击类型:DNS FLOOD、SYN FLOOD等
首选策略:CNAME防护(主动探测)或IP重传(被动探测)
备选策略:IP限速、域名限速、黑名单等

DNS反射放大攻击:2013.3.19 欧洲反垃圾邮件组织Spamhaus攻击

攻击类型:ANY/TXT/MX等记录类型放大
首选策略:源端口过滤、源IP过滤/限速
备选策略:禁止any查询、黑名单等

递归DNS反射放大攻击:2014.12.10-12.12 国内递归DNS被大规模攻击

全国范围内的网络异常,攻击源有共同特征,包含大量物联网设备,和此次Dyn攻击事件的攻击源类似。
攻击类型:随机子域名方式
首选策略:域名响应限速、域名请求限速
备选策略:机器学习过滤随机域名、停止泛解析、源IP限速等

并且通过多年的防攻击历史经验,腾讯云DNSpood沉淀了丰富的技术方案:

  • 自主研发第六代DNS服务器(DKDNS),辅以强大的Intel 82599EB 10GE网卡和DPDK开发套件,单机测试最高性能达到了1820万QPS,线上性能1100万QPS,并以8台服务器为一组组成了多个四层负载均衡集群,专制各种DDoS。
  • 针对DDos攻击,建立了包括大带宽、大规模分布式部署、专用防护设备、多种针对性防护策略、高性能DNS服务处理程序在内的防护体系,针对同时多个域名攻击支持高达200G的域名攻击防护能力, 历史处理域名攻击峰值超过600G,针对单域名攻击的DDoS防护能力超过1T
  • 宙斯盾防护系统全覆盖,并创建了多种专利防护算法,对不同的攻击形式采用针对性的防护策略和算法

三.企业自建DNS

目前规模较大、资源充足的公司会选择自建DNS,仅供本公司业务使用,不会被其他域名的DNS攻击影响,目前BIND(Berkeley Internet Name Domain)是目前世界上应用最为广泛的开放源码的DNS服务器软件。
关注DNS安全的开发者可能已经了解到,近期DNS服务器软件BIND的CVE-2016-2776漏洞被发现会导致远程拒绝式服务(Dos:Denial of Service)攻击,上个月才得以修复,而利用该漏洞构建特定的访问却能导致BIND主进程的崩溃。所以自建DNS也有一定的安全风险,需要关注以下几点:

  • 增加基础设施和安全设施的投入,增加带宽,部署更多的防护设备,以应对更大和更复杂的攻击。
  • 有条件的尽量开启DNSSEC支持,防止被劫持和修改
  • 关闭域传送,防止内部解析信息泄露
  • 使用开源解析软件的需要隐藏版本号和操作系统版本信息等,尽量使用最新的稳定版本,减少受攻击的可能性。
  • 各地运营商的递归DNS设置访问地区限制,减少被利用进行攻击的可能。
    然而关键仍然是有自己的DNS维护团队,进行专业的维护。

总结:DNS行业正在面临越来越严重的安全威胁,我们应积极采取措施进行应对,最后,仍然是需要完善法律法规,并对进行攻击者加大打击力度,必要时进行法律制裁。

美国半个互联网瘫痪对开发者使用DNS的启发的更多相关文章

  1. 美图App的移动端DNS优化实践:HTTPS请求耗时减小近半

    本文引用了颜向群发表于高可用架构公众号上的文章<聊聊HTTPS环境DNS优化:美图App请求耗时节约近半案例>的部分内容,感谢原作者. 1.引言 移动互联网时代,APP 厂商之间的竞争非常 ...

  2. 全球2/3的DNS瘫痪 顶级域名根服务器故障

    1月21日下午消息,据多家DNS服务商透露,今日下午3点,全国所有通用顶级域的根出现异常,导致部分国内用户无法访问.com域名网站,对全国互联网链接造成系统性影响.   根服务器主要用来管理互联网的主 ...

  3. 互联网从此没有 BAT

    根据 Wind 数据截止2019年8月30日,中国十大互联网上市公司排名中,百度排名第 6 位市值 365 亿美元,阿里巴巴排名第一市值高达 4499 亿美元,腾讯排名第二市值 3951 亿美元. 1 ...

  4. 开发者应该掌握 WebSocekt 协议的知识

    文章介绍 WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它的出现使客户端和服务器之间的数据交换变得更加简单.WebSocket 通常被应用在实时性要求较高的场景,例如赛事数据. ...

  5. 搭乘“AI大数据”快车,肌肤管家,助力美业数字化发展

    经过疫情的发酵,加速推动各行各业进入数据时代的步伐.美业,一个通过自身技术.产品让用户变美的行业,在AI大数据的加持下表现尤为突出. 对于美妆护肤企业来说,一边是进入存量市场,一边是疫后的复苏期,一边 ...

  6. 谈互联网开放平台:“去中心化”大势所趋 zz

    文/磐石之心 几天前与好友聊到众筹咖啡馆的事情,他向我讲述了一个非常具有特色的众筹咖啡馆案例.而这个案例也引发我对当前互联网开放.去中心和集权的一些思考,今天就简单写出来与大家分享. 一个无赚钱目的的 ...

  7. 【Sharing】开发与研发

    [声明]此文为转载,只为收藏. 按:这几天我一直在写这篇东西,本来是胸有成竹,没想到后来越写越发现自己在这个题目下有太多话想说,而以我现在的能力又不能很好地概括总结,以至于越写越长,文章结构也变得混乱 ...

  8. 真实世界里的钢铁侠-特斯拉汽车创始人埃隆&#183;马斯克(Elon Musk)

    真实世界里的钢铁侠--特斯拉汽车公司和SpaceX公司总裁马斯克(31岁).当我们得意于「站在山上踢几块石头下去」或是「站在风口上的猪」的成功理论的时候,我们真的成功了吗?我们到底创造了什么?改变了什 ...

  9. 补习系列(12)-springboot 与邮件发送【华为云技术分享】

    目录 一.邮件协议 关于数据传输 二.SpringBoot 与邮件 A. 添加依赖 B. 配置文件 C. 发送文本邮件 D.发送附件 E. 发送Html邮件 三.CID与图片 参考文档 一.邮件协议 ...

随机推荐

  1. IOSanimationDidStop

    -animationDidStop:finished: 方法中的flag参数表明了动画是自然结束还是被打断,我们可以在控制台打印出来.如果你用停止按钮来终止动画,它会打印NO,如果允许它完成,它会打印 ...

  2. R 给data.frame(dataframe)添加一列

    x<-data.frame(apple=c(1,4,2,3),pear=c(4,8,5,2)) x # apple pear # 1 1 4 # 2 4 8 # 3 2 5 # 4 3 2 x$ ...

  3. Django——model字段类型 2

    Django 通过models实现数据库的创建.修改.删除等操作,Django中model作为数据资源指定了字段以及一些相应的功能,通常每个model对应数据库中的一张表,(每个model都是从dja ...

  4. 访问者模式,visitor

    定义: 表示作用于某对象结构中的各个元素的操作. 可以在不改变各元素的类的前提下定义作用于这些元素的新操作. 前提: 适用于数据结构(Element)相对稳定的系统,这样visitor中的方法就是稳定 ...

  5. 使用httpclient时候,出现“Too many open files”问题

    最近接触的sendHttpPostRequest的问题比较多,近期碰到了关于 "java.net.SocketException: Too many open files" 的问题 ...

  6. Simulating a Freight robot in Gazebo

    Installation Before installing the simulation environment, make sure your desktop is setup with a st ...

  7. T-SQL排名函数

    提到排名函数我们首先可能想到的是order by,这个是排序,不是排名,排名需要在前面加个名次序号的,order by是没有这个功能的.还可能会想到identity(1,1),它也给了一个序号,但是不 ...

  8. git fork

    http://help.github.com/fork-a-repo/ 概要: 克隆别人的代码库到自己的项目中,可以作为子模块的形式使用,或二次开发 操作流程: 在开源项目中点击fork按钮,稍等一会 ...

  9. android上让我放弃使用wstring来操作中英文字符串 转

    android上让我放弃使用wstring来操作中英文字符串 2013-08-07 16:37:24|  分类: cocos2d|举报|字号 订阅     项目需要,需要对中英文字符串进行遍历修改等, ...

  10. 使用Maven构件Web应用

    一个典型的WAR文件会有如下目录结构: Maven的WEB项目结构: jetty-maven-plugin默认很好地支持了Maven的项目结构.在通常情况下,我们只需要直接在IDE中修改源码,IDE能 ...