DNS协议工作过程;DNS的安全隐患
DNS协议工作过程
下面以域名为m.xyz.com的主机欲通过另一个主机的域名y.abc.com的IP地址为例,简述DNS协议过程。
- 主机m.xyz.com先向其本地服务器dns.xyz.com进行递归查询。
- 本地域名服务器先查询高速缓存,如果不久前已经查询过域名y.abc.com的IP,那么本地域名服务器就不必向根域名服务器查询,而是直接把高速缓存中存放的上次查询的结果(即y.abc.com的IP地址)告诉用户。
- 本地域名服务器采用迭代查询。他先向一个根域名服务器查询。
- 根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器dns.com的IP地址。
- 本地域名服务器向顶级域名服务器dns.com进行查询。
- 顶级域名服务器dns.com告诉本地域名服务器,下一次应查询的权限域名服务器dns.abc.com的IP地址。
- 本地域名服务器向权限域名服务器dns.abc.com进行查询。
- 权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的ip地址。
- 本地域名服务器最后把查询的结果告诉主机m.xyz.com。
安全隐患
由于DNS本身的设计缺陷,没有提供适当的信息保护和认证机制,使得DNS很容易受到攻击。比如DNS Spoofing(DNS欺骗)、Cache Poisoing(缓存中毒),Server Compromising(服务器中毒),DoS。DNS Spoofing(DNS欺骗)、Cache Poisoing(缓存中毒)是其中最容易实现,且危害最大的两个攻击。DNS欺骗能够实现的成因是,在DNS报文中只使用一个序列号来进行有效性鉴别,加之DNS客户端简单地信任首先到达的应答包而丢弃所有后到达的应答包,使得攻击者很容易监听到查询请求并伪造应答包给DNS客户端。缓存中毒的成因也是由于DNS协议没有提供恰当的认证机制。在已知端口号的前提下,利用“生日攻击”,通过发送大量的DNS应答包来猜测攻击目标的DNS请求包的ID号,如果所发送的伪造应答包中存在和请求包的ID一致的情况,也就是产生了所谓的“碰撞”,则欺骗成功。
消除DNS安全隐患
- 对少数信息安全级别要求高的网站避免使用DNS。可以直接通过IP地址访问,绕开DNS服务。
- 防范ARP攻击。因为DNS欺骗需要以ARP欺骗为基础。避免了ARP攻击的可能,自然无法进行DNS欺骗。
- 发送DNS请求时采用随机端口,降低“碰撞”成功的可能性。
- 为信息安全要求高的网站建立标准的IP映射表。为少部分网站(比如设计私密信息的网站或经常访问的网站)制作静态标准DNS映射表。
- 被动检测。针对攻击往往在短时间内发送大量针对同一个域名的请求包的特点,进行检测或者限制发送的请求包的数量。
DNS协议工作过程;DNS的安全隐患的更多相关文章
- 第一天开通博客,就粗略写一下刚了解TCP/IP协议工作过程
Tcp/Ip协议分为四层:底层到高层顺序 链路层(硬件,网卡这些) 网络层(选择一条传输路径,如何从一台计算机请求另一条计算机) 传输层(遵循TCP(传输控制协议),UDP(用户数距协议)这些协议) ...
- TLS协议工作过程;如何应用TLS/SSL协议为WEB流量提供安全
SSL/TLS协议的基本过程是这样的: 客户端向服务器端索要并验证公钥. 双方协商生成"对话密钥". 双方采用"对话密钥"进行加密通信. 上面过程的前两 ...
- 通过wireshark,以及python代码收发邮件,了解smtp协议,pop协议工作过程
40返回连接server成功 41.43发送ehlo命令查询server支持命令 返回250 44.46请求认证 server响应235认证成功 47.49发送mail命令发送者邮箱 返回250 ...
- H3C OSPF协议工作过程概述
- 应用层协议FTP、DNS协议、HTTP协议分析
分析所用软件下载:Wireshark-win32-1.10.2.exe 一.阅读导览 1.分析FTP协议 2.分析DNS协议 3. 分析HTTP协议 二.分析要求 (1)ftp部分: 学习 Serv- ...
- 利用WireShark进行DNS协议分析
一.准备工作 系统是Windows 8.1Pro 分析工具是WireShark1.10.8 Stable Version 使用系统Ping命令发送ICMP报文. 二.开始工作 打开CMD.exe键入: ...
- (转)协议森林13 9527 (DNS协议)
协议森林13 9527 (DNS协议) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在周星驰的电影<唐伯虎点秋香> ...
- 超详细 DNS 协议解析
尽人事,听天命.博主东南大学研究生在读,热爱健身和篮球,正在为两年后的秋招准备中,乐于分享技术相关的所见所得,关注公众号 @ 飞天小牛肉,第一时间获取文章更新,成长的路上我们一起进步 本文已收录于 C ...
- Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS
一.搭建单区域DNS服务器 目标: 本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站.测试阶段主要提供以下正向记录: svr7.tedu.cn ---> ...
随机推荐
- MySQL 设置密码有效时间
mysql> alter user 'xuaiqi'@'%' PASSWORD EXPIRE INTERVAL 30 DAY;
- 第5章 IP地址和子网划分(2)_IP地址分类和NAT技术
3. IP地址的分类 (1)五类IP地址 (2)数轴表示法 4. 保留地址 (1)网段的地址:主机ID全0.如192.168.100.0/24,其中的192.168.10.0指的是网段. (2)广播地 ...
- web前端 3大储存 Cookie、localStorge、sessionStorage
Cookie: //setCookie function setCookie(name,value){ var Days = 30; var exp = new Date(); exp.setTime ...
- Windows下sbt安装配置
1.下载sbt1.2.8 官网:https://sbt-downloads.cdnedge.bluemix.net/releases/v1.2.8/sbt-1.2.8.tgz 2.配置环境 #SBT_ ...
- CF1017G The Tree
/* 这是什么神仙题目QAQ 首先考虑在序列上的问题 先不考虑修改成白色, 一个白点能r被染成黑色 意味着能够找到一个l使得在l-r中的操作1次数大于等于 r - l + 1 我们把初始值覆盖成-1就 ...
- hive使用map字段
create table role_bigtable(table_name string, record_date string, server_id string, map_col map<s ...
- 为DOM节点添加或者删除class
项目中如果应用了常用的javascript类库,多数情况下,这些已经封装好的类库,都会封装一个类似于addClass和removeClass的方法,以便于我们对DOM节点的class进行操作. 以jQ ...
- 【Selenium-WebDriver问题篇】Selenium实现元素的拖拽(java版)(转)
https://blog.csdn.net/u010503127/article/details/51381284 Selenium实现元素的拖拽(java版) [前言] 自从淘宝网登陆页出现滑块验证 ...
- 《机器学习实战》AdaBoost算法(手稿+代码)
Adaboost:多个弱分类器组成一个强分类器,按照每个弱分类器的作用大小给予不同的权重 一.Adaboost理论部分 1.1 adaboost运行过程 注释:算法是利用指数函数降低误差,运行过程通过 ...
- SAPCertifiedTechnologyAssociate-SystemAdministration(SAPHANAasaDatabase)
C_TADM55_75 SAP Certified Technology Associate - System Administration (SAP HANA as a Database) with ...