DNS污染与劫持
之前一直有听说过什么 DNS 污染 DNS 劫持什么的,却不知道到底是什么东西,今天来研究一下
什么是 DNS
DNS 是 Domain Name System 的缩写,中文叫做域名系统。
我们平时上网访问网站,比如输入 www.google.com
,记住这些好记的域名比记住一串数字要容易得多。但是,电脑在网络上互相交流是需要使用IP 地址的,就像每个人都有一个独特的电话号码一样。
DNS 的作用
DNS 的主要作用就是把人类可读的域名(比如 www.google.com
)转换成机器可读的 IP 地址(比如 172.217.160.142
)。
当你输入一个域名时,DNS 系统就会:
- 查找:你的设备(电脑、手机)会向 DNS 服务器发送查询请求。
- 解析:DNS 服务器会像查电话簿一样,找到这个域名对应的 IP 地址。
- 返回:把查到的 IP 地址返回给你的设备。
- 连接:你的设备拿到 IP 地址后,就能准确地找到并连接到目标网站的服务器了。
为什么需要 DNS?
- 方便记忆:我们更容易记住像
baidu.com
这样的名字,而不是一长串的数字。 - 灵活性:如果一个网站的 IP 地址改变了,用户不需要知道新的 IP 地址,DNS 会自动更新映射关系,你仍然可以通过域名访问。
- 分布式:DNS 是一个庞大的、分布式的系统,全球有无数的 DNS 服务器协同工作,确保解析效率和稳定性。
DNS 劫持
DNS 劫持,就是通过劫持 DNS 服务器,通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址,从而实现窃取资料或者破坏原有正常服务的目的。
DNS劫持症状:在某些地区的用户在成功连接宽带后,首次打开任何页面都指向ISP提供的“电信互联星空”、“网通黄页广告”等内容页面。还有就是曾经出现过用户访问Google域名的时候出现了百度的网站。这些都属于DNS劫持。
DNS 污染
DNS污染,又称为域名服务器缓存污染(DNS cache pollution)或者域名服务器快照侵害(DNS cache poisoning)。 DNS污染是指一些刻意制造或无意中制造出来的域名服务器分组,把域名指往不正确的IP地址。它是一种让一般用户由于得到虚假目标主机IP而不能与其通信的方法,是一种DNS缓存投毒攻击(DNS cache poisoning)。其工作方式是:由于通常的DNS查询没有任何认证机制,而且DNS查询通常基于的UDP是无连接不可靠的协议,因此DNS的查询非常容易被篡改,通过对UDP端口53上的DNS查询进行入侵检测,一经发现与关键词相匹配的请求则立即伪装成目标域名的解析服务器(NS,Name Server)给查询者返回虚假结果。DNS污染是发生在用户请求的第一步上,直接从协议上对用户的DNS请求进行干扰。
DNS污染症状:目前一些被禁止访问的网站很多就是通过DNS污染来实现的,例如YouTube、Facebook等网站。