• DNS (Domain Name System)域名系统工作原理


    DNS查询的工作过程
    假设你要访问百度(www.baidu.com)这个站点.
    其过过程如图:
    在这里插入图片描述

    (1)Web 用户使用浏览器访问百度网站,首先与本地的DNS服务器取得联系,定位WWW.baidu.com的IP地址。
    (2)本地DNS服务器检查缓存,找出该站点的IP地址
    (3)如果DNS服务器以前没有收到过访问www.baidu.com的请求,所以缓存中没有关于它的信息、这种情况下,本地DNS 服务器会与其他DNS服务器取得联系(一般情况下是一台根DNS服务器)来掌管baidu.com域的DNS服务器的IP地址
    (4)如果www.baidu.com的确存在,根DNS服务器就会反馈给掌管该所在域的DNS服务器的IP地址。
    (5)此时,本地DNS服务器就要求baidu.com所在域的DNS服务器返回站点www.baidu.com的IP地址。
    在baidu.com域的DNS服务器返回其IP地址后,本地DNS服务器最后将该IP地址反馈给请求的计算机,并将该IP存入缓存,以便日后其他用户快速引用该信息。

    DNS面临的安全问题
    (1)DNS欺骗
    DNS欺骗即域名信息欺骗是最常见的DNS安全问题。当一个DNS服务器掉入陷阱,使用了来自一个恶意DNS服务器的错误信息,那么该DNS服务器就被欺骗了。DNS欺骗会使那些易受攻击的DNS服务器产生许多安全问题,例如:将用户引导到错误的互联网站点,或者发送一个电子邮件到一个未经授权的邮件服务器。网络攻击者通常通过三种方法进行DNS欺骗。一个典型的DNS欺骗的示意图如图4-16所示。
    在这里插入图片描述
    ①缓存感染。黑客会熟练地使用DNS请求,将数据放入一个没有设防的DNS服务器的缓存当中。这些缓存信息会在客户进行DNS访问时返回给客户,从而将客户引导到入侵者所设置的运行木马的Web服务器或邮件服务器上,然后黑客从这些服务器上获取用户信息。
    ②DNS信息劫持。入侵者通过监听客户端和DNS服务器的对话,通过猜测服务器响应给客户端的DNS查询ID。每个DNS报文包括一个相关联的16位ID号,DNS服务器根据这个ID号获取请求源位置。黑客在DNS服务器之前将虚假的响应交给用户,从而欺骗客户端去访问恶意的网站。
    ③DNS复位定向。攻击者能够将DNS名称查询复位向到恶意DNS服务器。这样攻击者可以获得DNS服务器的写权限。

    (2)拒绝服务攻击
    黑客主要利用一些DNS软件的漏洞,如在BIND9版本(版本9.2.O以前的9系列)如果有人向运行BIND的设备发送特定的DNS数据包请求,BIND就会自动关闭。攻击者只能使BIND关闭,而无法在服务器上执行任意命令。如果得不到DNS服务,那么就会产生一场灾难:由于网址不能解析为IP地址,用户将无法访问互联网。这样,DNS产生的问题就好像是互联网本身所产生的问题,这将导致大量的混乱。
    (3)分布式拒绝服务攻击
    DDOS攻击通过使用攻击者控制的几十台或几百台计算机攻击一台主机,使得服务瘫痪。拒绝攻击更难以防范:使服务拒绝攻击更难以通过阻塞单一攻击源主机的数据流,来防范服务拒绝攻击。Syn Flood是针对DNS服务器最常见的分布式拒绝服务攻击。
    (4)缓冲区漏洞
    Bind软件的缺省设置是允许主机间进行区域传输(zone transfer)。区域传输主要用于主域名服务器与辅域名服务器之间的数据同步,使辅域名服务器可以从主域名服务器获得新的数据信息。一旦起用区域传输而不做任何限制,很可能会造成信息泄漏,黑客将可以获得整个授权区域内的所有主机的信息,判断主机功能及安全性,从中发现目标进行攻击。
    应对以上这些安全问题有两个比较有效方法:TSIG和DNSSEC技术

  • 相关阅读:
    opencv:从0到实现人脸识别
    王道链表综合题(下)
    shamir 秘密共享
    ElasticSearch从入门到精通:常用操作
    springboot+commons-pool2 连接池访问sftp
    中国高产水稻促粮食增产 国稻种芯:为碳减排做出重要贡献
    Vue2/3 父子组件传值
    MyBatis操作数据库(XML方式)
    Hadoop原理与技术——Hbase的基本操作
    高效数据通道支撑生产情况实时分析与可视化
  • 原文地址:https://blog.csdn.net/qq_43749666/article/details/126542587