什么是DNS

DNS即地址解析协议,域名系统以分布式数据库的形式将域名和IP地址相互映射。
解析过程:
假如我们要访问 www.baidu.com ,首先要向本地DNS服务器发出DNS请求,查询 www.baidu.com 的IP地址;
如果本地DNS服务器没有在自己的DNS缓存表中发现该网址的记录,就会向根服务器发起查询,根服务器收到请求后,将com域服务器的地址返回给本地DNS服务器;
本地DNS服务器则继续向com域发出查询请求,域服务器将 baidu.com 授权域名服务器的地址返回给本地DNS服务器,本地DNS服务器继续向 baidu.com 发起查询,得到www.baidu.com 的IP地址。

本地DNS服务器得到 www.baidu.com 对应的IP地址后以dns应答包的方式传递给用户,并且在本地建立DNS缓存表。

DNS欺骗

DNS欺骗就是利用了DNS协议设计时的一个非常严重的安全缺陷。

首先欺骗者向目标机器发送构造好的ARP应答数据包,ARP欺骗成功后,嗅探到对方发出的DNS请求数据包,分析数据包取得***ID和端口号***后,向目标发送自己构造好的一个DNS返回包,对方收到DNS应答包后,发现ID和端口号全部正确,即把返回数据包中的域名和对应的IP地址保存进DNS缓存表中,而后来的当真实的DNS应答包返回时则被丢弃。

假设嗅探到目标靶机发出的DNS请求包有以下内容:

// 假设嗅探到目标靶机发出的DNS请求包有以下内容:
Source address : 192.168.1.57
Destination address : ns.baidu.com
Source port : 1234
Destination port : 53 (DNS port)
Data : www.baidu.com
//我们伪造的DNS应答包如下:
// An highlighted block
Source address : ns.baidu.com
Destination address : 192.168.1.57
Source port : 53 (DNS port)
Destination port : 1234
Data : www.baidu.com 192.168.1.59;

目标靶机收到应答包后把域名以及对应IP保存在了DNS缓存表中,这样www.baidu.com的地址就被指向到了192.168.1.59上。

DNS解析过程及欺骗原理相关推荐

  1. DNS解析过程及工作原理

    看了一些相关文章,总感觉每篇文章在论述过程的时候都缺了些东西,要不就是没说清楚迭代查询和递归查询,要不就是没说缓存,要不就是缓存没说全.当然看了这么多文章,确实让我收获了很多知识,所以在自己的理解上, ...

  2. DNS那些事——从浏览器输入域名开始分析DNS解析过程

    我们就从在浏览器输入域名开始分析. 文章目录 1. DNS服务器有哪些? 2. 从浏览器输入https://abc13.ban2.lcy0000.top/,DNS如何解析? 3. hosts文件是什么 ...

  3. K8S DNS解析过程和延迟问题

    一.Linux DNS查询解析原理(对于调用glibc库函数gethostbyname的程序) 我们在浏览器访问www.baidu.com这个域名,dns怎么查询到这台主机呢? 1.在浏览器中输入ww ...

  4. DNS 解析过程详解

    1. DNS解析过程 1).在浏览器中输入www.magedu.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析. 2).如果 ...

  5. DNS解析过程中不得不知道的那些事

    DNS解析过程中不得不知道的那些事 0x01 定义 0x02 域名结构 0x03 DNS查询方式 1.从查询方式分类 2.从查询内容: 0x04 常见的DNS资源记录 1.A/AAAA记录 2.CNA ...

  6. Android DNS解析过程

    前言 一次排查接口404问题,引伸的Android DNS解析过程,简单分析总结一下 1.首先明白DNS解析流程 操作系统检查自身本地的hosts文件是否有这个网址的映射关系,如果有,直接返回完成域名 ...

  7. dns解析过程_DNS原理总结及其解析过程

    点击上方蓝色字体,关注我们 前言 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库,使人更方便地访问互联网.DN ...

  8. DNS解析过程详解【转】

    转自:http://blog.chinaunix.net/uid-28216282-id-3757849.html 先说一下DNS的几个基本概念: 一. 根域 就是所谓的".",其 ...

  9. 从Chrome源码看DNS解析过程

    DNS解析的作用是把域名解析成相应的IP地址,因为在广域网上路由器需要知道IP地址才知道把报文发给谁.DNS是Domain Name System域名系统的缩写,它是一个协议,在RFC 1035具体描 ...

最新文章

  1. MLIR中间表示和编译器框架
  2. 基于Java语言构建区块链(一)—— 基本原型
  3. Chrome 中的 JavaScript 断点设置和调试技巧
  4. 跨域解决方案之CORS
  5. MongoDB索引实战技巧
  6. 通过powerdns实现主机名解析
  7. 楼宇计算机网络是如何工作的,【干货】建筑楼宇智能化如何应用 4C 技术
  8. c# rar解压大小_Linux压缩解压指令-bzip2、xz、compress、rar
  9. datagrid在MVC中的运用05-加入时间搜索条件,枚举填充下拉框
  10. 基于DenseNet的图像识别
  11. excel常用函数公式
  12. scara机器人用户坐标系标定与工具坐标(TCP)标定
  13. c#文件排序和文件夹排序
  14. Intel CPU 微架构的演进与发展
  15. echarts实现词云图表,及参数配置详解
  16. 客户机是计算机网络硬件吗,计算机网络中硬件连接设备有哪些?
  17. 【前端面试】Part 1:2020届初级前端校招笔试题及面经总结 —— 基础知识题
  18. MOEAD原理及Python实现、MOEAD实现、基于分解的多目标进化、 切比雪夫方法-(python完整代码)
  19. 如何实现复制文本到剪贴板?
  20. 云科技时代力作:《读懂新基建,数字技术带来全民机遇》上市

热门文章

  1. 全能赛道、热门方向、稀缺数据,“嬴彻-清华AIR杯”自动驾驶技术大赛火热开赛中
  2. matlab伺服电机仿真,PMSM转塔伺服电机控制系统建模与Matlab仿真
  3. 到底什么是开源协议和ARM授权模式?
  4. 微信要做“刷掌支付”?网友吵翻,腾讯回应
  5. 二十四节气表顺口溜(快速记忆的口诀)
  6. 计算机绘图综合训练铣刀头实训报告,典型零件测量与计算机绘图
  7. php怎样判断数组是否为空,PHP判断数组是否为空的5大方法
  8. 重磅!德勤TMT行业2019十大预测,遍地黄金的中国机会
  9. [USACO09OCT]Even? Odd? G
  10. nginx正向代理http,nginx正向代理https