聊一聊DNS劫持那些事

作为《DNS攻击防范科普系列》的最后一篇,今天我们来好好聊聊DNS劫持。先回顾一下DNS劫持的概念?DNS劫持即通过某种技术手段,篡改正确域名和IP地址的映射关系,使得域名映射到了错误的IP地址,因此可以认为DNS劫持是一种DNS重定向攻击。DNS劫持通常可被用作域名欺诈,如在用户访问网页时显示额外的信息来赚取收入等;也可被用作网络钓鱼,如显示用户访问的虚假网站版本并非法窃取用户的个人信息。
那DNS劫持到底有多大的危害呢?我们来看两个真实的大事件:

DNS劫持大事记

事件1、《AWS route53 BGP路由泄漏事件》

 事件危害:据不完全统计,DNS劫持导致两个小时内有多个用户的以太坊钱包被转账清空,共计至少13000美元的资产被黑客盗取。
 事件还原: 事件发生在2018年4月24日。黑客针对四段分配给AWS,本应作为AWS route53 DNS服务器服务地址的IP空间(205.251.192.0/23, 205.251.194.0/23, 205.251.196.0/23, 205.251.198.0/23)发布了虚假的BGP路由,导致在BGP泄漏的两个小时期间,本应该AWS route53 DNS服务器的DNS查询都被重定向到了黑客的恶意DNS服务器。且黑客DNS劫持的目标十分明确,恶意DNS服务器只响应对myetherwallet.com的查询,其他域名的查询均返回SERVFAIL。一旦用户没有注意“网站不安全”的提示而访问myetherwallet.com登录自己的以太坊钱包,黑客就可以轻易获取用户的私钥进而窃取用户的数字货币资产。正常情况的DNS,和劫持后的DNS的情况,请参考如下攻击示意图(来自cloudflare博客):
正常情况:

BGP泄漏后:

事件2、《巴西银行钓鱼事件》

 事件危害:黑客诱导原本想访问正常银行网站的受害者访问到钓鱼网站,并恶意窃取受害者的银行账目密码信息。
 事件还原:事件发生在2018年。黑客利用D-Link路由器的漏洞,入侵了至少500个家用路由器。黑客入侵后更改受害者路由器上的DNS配置,将受害者的DNS请求重定向到黑客自己搭建的恶意DNS服务器上。黑客入侵后更改受害者路由器上的DNS配置,将受害者的DNS请求重定向到黑客自己搭建的恶意DNS服务器上,最终诱导原本想访问正常银行网站的受害者访问到钓鱼网站,并恶意窃取受害者的银行账目密码信息。

上面两个案例都是触目惊心啊。接下来我们来介绍一下黑客们是怎么做到DNS劫持的?

DNS解析原理

介绍劫持原理前,你需要先了解典型的DNS解析流程。

客户端发起递归DNS请求,本地递归DNS(大多数情况下为运营商DNS)或者公共DNS通过迭代查询请求多级的DNS权威服务器,并最终将查询结果返回给客户端。可以看到,一次完整的DNS查询:
• 链路长。查询过程包含多次,多级的网络通信。
• 参与角色多。查询过程涉及客户端,DNS递归服务器,权威服务器等角色。 在一次完整DNS查询链路的各个环节,其实都有可能被DNS劫持,下面的章节会逐一分析各种类型的DNS劫持。

DNS劫持分类

我们按照客户端侧--递归DNS服务器--权威DNS服务器的路径,将DNS劫持做如下分类:

【一、本地DNS劫持】

客户端侧发生的DNS劫持统称为本地DNS劫持。本地DNS劫持可能是:

  1. 黑客通过木马病毒或者恶意程序入侵PC,篡改DNS配置(hosts文件,DNS服务器地址,DNS缓存等)。
  2. 黑客利用路由器漏洞或者破击路由器管理账号入侵路由器并且篡改DNS配置。
  3. 一些企业代理设备(如Cisco Umbrella intelligent proxy)针对企业内部场景对一些特定的域名做DNS劫持解析为指定的结果。

【二、DNS解析路径劫持】

DNS解析过程中发生在客户端和DNS服务器网络通信时的DNS劫持统一归类为DNS解析路径劫持。通过对DNS解析报文在查询阶段的劫持路径进行划分,又可以将DNS解析路径劫持划分为如下三类:

• DNS请求转发

通过技术手段(中间盒子,软件等)将DNS流量重定向到其他DNS服务器。
案例:


图片来自《巫俊峰, 沈瀚. 基于旁路抢答机制的异网DNS管控实践. 电信技术[J]》

• DNS请求复制

利用分光等设备将DNS查询复制到网络设备,并先于正常应答返回DNS劫持的结果。
案例:一个DNS查询抓包返回两个不同的应答。

• DNS请求代答

网络设备或者软件直接代替DNS服务器对DNS查询进行应答。
案例:一些DNS服务器实现了SERVFAIL重写和NXDOMAIN重写的功能。

【三、篡改DNS权威记录】

篡改DNS权威记录 我们这里指的黑客非法入侵DNS权威记录管理账号,直接修改DNS记录的行为。
案例:
黑客黑入域名的管理账户,篡改DNS权威记录指向自己的恶意服务器以实现DNS劫持。

黑客黑入域名的上级注册局管理账户,篡改域名的NS授权记录,将域名授权给黑客自己搭建的恶意DNS服务器以实现DNS劫持。

黑客黑入域名的上级注册局管理账户,篡改域名的NS授权记录,将域名授权给黑客自己搭建的恶意DNS服务器以实现DNS劫持。(以上参考fireeye博客)

DNS劫持应对策略

DNS劫持在互联网中似乎已经变成了家常便饭,那么该如何应对各种层出不穷的DNS劫持呢?如果怀疑自己遇到了DNS劫持,首先要做的事情就是要确认问题。

如何确认DNS劫持

查看路由器DNS配置是否被篡改。
可以使用一些全网拨测的工具确认DNS劫持和其影响范围。在此隆重介绍一下,阿里的DNS域名检测工具于国庆后已经正式上线,地址是:https://zijian.aliyun.com/#/domainDetect 

.

通过工具查看回复DNS应答的DNS服务器,确认DNS解析是否被重定向。
• whatismydnsresolver http://whatismydnsresolver.com/
移动端可以安装一些DNS相关的测试工具进行排查:
• 安卓 ping & dns
• IOS IOS iNetTools

DNS劫持防范

• 安装杀毒软件,防御木马病毒和恶意软件;定期修改路由器管理账号密码和更新固件。
• 选择安全技术实力过硬的域名注册商,并且给自己的域名权威数据上锁,防止域名权威数据被篡改。
• 选择支持DNSSEC的域名解析服务商,并且给自己的域名实施DNSSEC。DNSSEC能够保证递归DNS服务器和权威DNS服务器之间的通信不被篡改。阿里云DNS作为一家专业的DNS解析服务厂商,一直在不断完善打磨产品功能,DNSSEC功能已经在开发中,不日就会上线发布。
• 在客户端和递归DNS服务器通信的最后一英里使用DNS加密技术,如DNS-over-TLS,DNS-over-HTTPS等。
在此《DNS攻击防范科普系列》已经完结,欢迎大家给我们留意反馈自己对DNS攻击防范对看法。


原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517702.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nacos集成dubbo实现远程服务调用多服务端2

文章目录一、版本选取、需求和项目简述1. 版本选取2. 项目模块说明2. 需求说明二、需求实战-依赖初始化2.1. 创建maven父工程EShopParent2.2. 创建子模块DubboApi2.3. 创建服务端Stock-serv2.4. 创建服务端product-serv2.5. 创建消费端端Order-serv三、需求实战-代码编写3.1. 创…

避开这2个误区,测试目标 KPI 不再难设

阿里妹导读:好的开始是成功的一半!工作中,目标的设置是最不能马虎的事情。今天,我们请来孙阳(阿里巴巴测试开发专家),他从11年入职至今已有8年。在测试技术目标的KPI设置上,他有一些…

程序员工作3年只涨2千,你不知道程序员有多难!

最近在职业论坛看到这样一个热门的帖子:工作3年,薪资涨了2k。大家都在吐槽公司的不公,却忽略了从另一个角度看待问题:是不是因为我们本身做的不够好?越来越发现,很多人之所以很久没有涨薪,是因为…

蚂蚁金服OceanBase挑战TPCC丨TPC-C基准测试之链路层优化

导语 在 TPC-C 标准定义中,测试系统分为 RTE(Remote Terminal Emulator)和 SUT 两部分。在实际的 TPC-C 测试流程中,不只是对 DB 端能力的考验,对链路中的所有组件都存在极大的资源消耗和压力。以这次 6088万 tpmC 测…

由于找不到msvcp140.dll无法继续执行代码

下载安装微软常用运行库合集即可解决 https://www.cr173.com/soft/106037.html

知己知彼,百战百胜!如何做好干系人管理

作者|章冀灶(晟远) 出品|阿里巴巴新零售淘系技术部 众所周知,高效的沟通是项目成败重要的影响因素。沟通在项目管理过程中扮演了极其重要的作用,而沟通对象又是完整的基于项目干系人,所以在项目管理过程中干系人管理就显得尤为重要&#xff…

彻底弄懂为什么不能把栈上分配的数组(字符串)作为返回值

背景 最近准备一个教程&#xff0c;案例的过程中准备了如下代码碎片&#xff0c;演示解析http scheme #include <stdio.h> #include <stdlib.h> #include <string.h>char *parse_scheme(const char *url) {char *p strstr(url,"://");return st…

健壮F.T.+新裸金属重磅发布!全新升级版ZStack加速新基建!

6月2日&#xff0c;以“健壮F.T.新裸金属 新基建下的新IaaS”为主题的2020年ZStack新品线上超级发布会引爆了企业级云市场。面向新基建发展契机&#xff0c;致力于普惠云计算的ZStack与英特尔、阿里云等伙伴强势携手发布2大重磅新品&#xff1a;首个采用了F.T.技术的ZStack Min…

使用datax同步cassandra数据

DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台&#xff0c;实现各种异构数据源之间高效的数据同步功能。最近&#xff0c;阿里云cassandra团队为datax提供了cassandra读写插件&#xff0c;进一步丰富了datax支持的数据源&#xff0c;可以很方便实现cassandra之间以…

整理了一份 Docker系统知识,从安装到熟练操作看这篇就够了 | 原力计划

作者 | IronmanJay责编 | 王晓曼出品 | CSDN博客Docker 基础介绍下图为 Docker 图标&#xff08;是一个鲸鱼上面是集装箱&#xff09;。1、我们为什么要使用Docker当我们在工作中&#xff0c;一款产品从开发设计到上线运行&#xff0c;其中需要开发人员和运维工程师&#xff0c…

阿里巴巴的云原生与开发者

摘要&#xff1a;利用云原生技术构建应用简便快捷&#xff0c;部署应用轻松自如&#xff0c;运行应用按需伸缩。如今&#xff0c;云原生已经成为下一代技术发展的趋势。在 2019 杭州云栖大会开发者峰会上&#xff0c;阿里巴巴资深技术专家李响就为大家分享了阿里巴巴的云原生技…

(企业案例)使用Nacos持久化规则,改造sentinel-dashboard

文章目录一、前言1. 版本选取2. 克隆代码3. 导入 IDEA二、全局修改2.1. 修改 POM2.2. 修改配置文件三、后端代码修改3.1. 包结构部分3.2. nacos 配置文件四、创建规则与 Nacos 交互类4.1. 创建授权规则与 Nacos 交互类4.2. 创建降级规则与 Nacos 交互类4.3. 创建流控规则与 Nac…

如何基于 Nacos 和 Sentinel ,实现灰度路由和流量防护一体化

Nepxion Discovery框架在实现灰度发布和路由功能前提下&#xff0c;结合Nacos和Sentinel&#xff0c;对流量再实施一层防护措施&#xff0c;更能达到企业级的流量安全控制的目的。它的功能包括&#xff1a; 封装远程配置中心和本地规则文件的读取逻辑&#xff0c;即优先读取远…

神操作!一行Python代码搞定一款游戏?给力!

来源&#xff1a;pypl编程榜一直以来Python长期霸占编程语言排行榜前三位&#xff0c;其简洁&#xff0c;功能强大的特性使越来越多的小伙伴开始学习Python 。甚至K12的同学都开始学习Python 编程。新手入门的时候趣味性其实最重要的。那么一行Python 代码到底能玩出什么花样&a…

详解阿里云数据中台,一篇文章全面了解大数据“网红”

一直想写一篇关于数据中台正面文章&#xff0c;现在有闲时做些总结&#xff0c;想充分诠释一下DT内部人如何看待数据中台。 数据中台的概念是最早由阿里巴巴首次提出&#xff0c;是为了应对内部众多业务部门千变万化的数据需求和高速时效性的要求而成长起来的&#xff0c;它既要…

云原生时代,蚂蚁金服公开了新的金融混合云架构

蚂蚁金服在过去十五年重塑支付改变生活&#xff0c;为全球超过十二亿人提供服务&#xff0c;这些背后离不开技术的支撑。在 2019 杭州云栖大会上&#xff0c;蚂蚁金服将十五年来的技术沉淀&#xff0c;以及面向未来的金融技术创新和参会者分享。我们将其中的优秀演讲整理成文并…

Python 薪资降温?不存在的

当你学习编程时&#xff0c;最先被困扰在哪一步&#xff1f;是不是很容易陷入在语法之类的细节而忽视基础概念&#xff1f;解决当前任务的最佳方法是什么&#xff1f;在多种编程语言之间来回切换&#xff0c;却感觉不到效率的提高&#xff1f;0 基础学习编程&#xff0c;最先入…

隐私与AI兼得,蚂蚁金服是如何做到的?

蚂蚁金服在过去十五年重塑支付改变生活&#xff0c;为全球超过十二亿人提供服务&#xff0c;这些背后离不开技术的支撑。在 2019 杭州云栖大会上&#xff0c;蚂蚁金服将十五年来的技术沉淀&#xff0c;以及面向未来的金融技术创新和参会者分享。我们将其中的优秀演讲整理成文并…

Nacos配置中心规范

文章目录一、版本选取和概念理解1. 版本选择2.Namespace3. 如何进行配置和服务的管理、隔离&#xff08;Group&#xff09;二、方案选取1. 命名空间创建2. Namespace实施方案三、nacos配置实战3.1. dev环境配置创建3.2. test环境配置创建四、代码coding实战4.1. 创建2项目4.2. …

干货|Flutter 原理与闲鱼深度实践

王康&#xff08;正物&#xff09;—— Flutter 官方成员 阿里巴巴技术专家&#xff0c;之前主要负责 Flutter 在闲鱼中的混合开发体系&#xff0c;目前重点关注 Flutter 深入度以及生态相关的工作。本文将分享三方面内容&#xff0c; Flutter 的原理、 Flutter 在闲鱼中的应用…