【DNS】DNS劫持与DNS污染

0x01 DNS

什么是DNS呢?DNS全称“Domain Name Server”,中文域名服务,通常我们会叫它域名解析协议。那么DNS用来干什么的呢?正如它的名字一样,用来解析域名的。我们平时访问一个网页,例如百度,我们会在地址栏中输入www.baidu.com,这个就是域名,但是对于计算机来说,它们工作的时候用的是ip地址,ip地址简单的说就是一串很长的数字,那么对于人来说很难记住,为了方便记住网址,域名就由此而来了。

而DNS就是把域名转换为ip地址的一种服务也好,协议也罢,大概就是那种概念吧。

0x02 DNS工作流程

DNS的工作流程是怎样的呢?

  1. 当我们在地址栏中输入一个网址,并按下回车,域名解析的过程就开始了
  2. 计算机首先会在查找本地的HOSTS文件,如果有的话,就直接引用HOSTS文件中的域名对应的ip地址,那么本次域名解析的过程就结束了。
  3. 但是如果本地的HOSTS文件里没有对应的ip地址,那么就会看你的计算机有没有设置DNS服务器,如果没有设置,那么就没办法了,浏览器会报错,说网站的域名无法解析,本次解析过程就结束了。
  4. 如果设置了DNS服务器,那么计算机就会那着我们输入的网址到那个DNS服务器去查找,如果去查找的DNS服务器的过程中有服务器挂掉了,那么还是没办法,浏览器还是会报错。
  5. 如果没有错误,正常查询到了对应的ip,那么浏览器就会拿着这个ip地址来访问正常的web服务,本次解析过程结束。

0x03 DNS劫持

通过上面说的过程,我们知道,一个域名解析的过程就是送计算机得到域名到远端的DNS服务器把结果给我们返回过来,因此这个过程如果有一个中间人,他截获了我们的DNS请求,然后返回一个恶意的ip地址给我们,那么我们的计算机就会把这个恶意的ip地址当作我们想要访问的域名的对应ip,那么每次我们想访问这个网站的时候就会访问那个恶意的ip,如果那个中间人制作了一个和我们想要访问的网址一样的前端界面,就很有可能完成一次钓鱼攻击。

0x04 DNS污染

DNS污染通常还有说法叫做DNS投毒之类的,就是DNS查询的这个过程里,如果有人在你查询结果返回给你之前先一步将一个错误的ip给你,那么真正的查询结果返回的时候就会被忽略,那么你永远只能使用那个错误的ip来进行访问了,GFW的原理就是这个。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能...
    一直在努力hard阅读 4,708评论 3 19
  • 1. 概述 在网络环境中一般用户只需要在浏览器中输入url如www.sunny.com就可以到对应服务器获取相应的...
    ghbsunny阅读 2,995评论 0 7
  • DNS 是什么 DNS (Domain Name System), 也叫网域名称系统,是互联网的一项服务。它实质上...
    interstellar多米诺阅读 2,876评论 0 6
  • 从上大学以来,独自经历过许多事儿,于是我的小脑袋转动的飞快。我有很多思考,也有很多疑问。对于疑问,我有时能自问自答...
    懒小妹阅读 339评论 2 1
  • 在第一次写出2000字的文章以前,我只记得自己曾经最多写过500字的文章。要不是在写作这件事上,强制性的给自己设置...
    六点菇凉阅读 454评论 6 9