【信息安全原理】——DNS安全(学习笔记)

这篇具有很好参考价值的文章主要介绍了【信息安全原理】——DNS安全(学习笔记)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

📖 前言:DNS是因特网运行的最重要的基础设施,因此也成为黑客的最主要攻击目标。DNS通信双方由于缺乏数据来源真实性和完整性的认证机制,系统无法确认数据发送方是否是合法的发送方,也无法验证数据报是否被篡改,攻击者很容易实现源地址和数据内容的欺骗,由此引发越来越多的网络安全问题。本篇首先简要介绍DNS的基本内容,然后详细分析DNS面临的安全威胁,最后介绍DNS安全扩展 DNSSEC。

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络


🕒 1. DNS面临的安全威胁

预备知识:
🔎 【网络协议详解】——DNS系统协议(学习笔记)

除了域名解析外,现代DNS还具有:

  • 应用层路由:DNS把用户的访问指向离用户最近的那个CDN服务器节点,负载均衡;Email服务器利用DNS服务器中的MX记录作为路由,找到企业内部真正的服务器
  • DNS作为信任的基础:防伪造邮件、域名作为验证证书申请者身份的信任基础
  • DNS作为PKI:防止CA在未经网站所有者授权的前提下签发非法的证书

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🕘 1.1 协议脆弱性

域名欺骗:域名系统(包括 DNS 服务器和解析器)接收或使用来自未授权主机的不正确信息,包含事务 ID 欺骗和缓存投毒

DNS缓存:
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🔎 一次dns缓存引发的惨案

🔎 针对DNS转发设备的缓存投毒攻击

🔎 真的黑客能让你分分钟开进沟里,但他们不屑于此

网络通信攻击:针对 DNS 的网络通信攻击主要是DDoS攻击、恶意网址重定向和中间人(man-in-the-middle, MITM)攻击
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

劫持解析路径,并伪装成指定的DNS应答:
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🔎 【PPT分享】清华大学刘保君——谁劫持了我的DNS:全球域名解析路径劫持测量与分析

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🕘 1.2 实现脆弱性

DNS 软件,BIND 的漏洞和缺陷无疑会给 DNS 系统带来严重的威胁,其缓冲区溢出漏洞一度占据 UNIX 及 Linux 操作系统相关安全隐患的首位。

🔎 国家漏洞库CNNVD:关于Dnsmasq多个缓冲区错误漏洞的通报

🕘 1.3 操作脆弱性

由于人为操作或配置错误所带来的安全隐患:域名配置攻击、域名注册攻击和信息泄漏

攻击目标网站域名注册服务提供商→修改目标网站域名记录→申请网站证书→伪装成目标网站
🔎 域名注册商GoDaddy客服被钓鱼攻击,多家公司域名解析被篡改

Q:如果美国在根域名服务器上把中国域名给封了,中国会从网络上消失吗?
A:不会。尽管IPv4的根域名服务器中有1个主根和9个副根在美国,但中国已经部署了28个根镜像,这些镜像的功能等同于根服务器,但它们共享13个IP。这意味着,中国境内对根的访问,最终会落到境内的那些根镜像上。因此,即使美国更改了根区的文件,中国仍可以选择不同步关于.cn的修改,这样一来,除了中国人自己,其他国家将无法访问.cn的网站,但中国的网络并不会瘫痪。此外,中国部署了4台IPv6根域名服务器。打破垄断、突破封锁,中国彻底打破了没有根服务器的困境。

🕒 2. DNSSEC

域名欺骗、恶意网址重定向和中间人攻击之所以能够成功,是因为DNS 解析的请求者无法验证它所收到的应答信息的真实性和完整性。为应对上述安全威胁,IETF提出了DNS安全扩展协议(DNSSEC)。

DNSSEC基本思想:

  • 依赖于数字签名和公钥系统去保护 DNS 数据的可信性和完整性:权威域名服务器用自身的私钥来签名资源记录,然后解析服务器用权威域名服务器的公钥来认证来自权威域名服务器的数据,如果认证成功,则表明接收到的数据确实来自权威域名服务器,则解析服务器接收数据,如果认证失败,则表明接收到的数据很可能是伪造的,则解析服务器抛弃数据
  • 尽管DNSSEC的原理比较简单,但其标准的制定和部署面临着巨大的挑战:域名软件之父保罗·维克多(Paul Vixie)的曲折经历

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
🔎 【PPT分享】清华大学郑晓峰: 端到端安全协议的威胁、演进和部署

🕘 2.1 原理

DNSSEC可以防止针对DNS系统的缓存投毒,以得到广泛支持的RFC4033-4035版本为例简要介绍DNSSEC的基本内容

  • 提供数据来源验证:DNS数据来自正确的域名服务器;
  • 提供数据完整性验证:数据在传输过程中没有任何更改;
  • 提供否定存在验证:对否定应答报文提供验证信息

🕘 2.2 资源记录

DNSSEC中新增的四种类型的资源记录:DNSKEY (DNS Public Key)、RRSIG(Resource Record Signature)、DS (Delegation Signer)、NSEC (Next Secure)

🕤 2.2.1 DNSKEY

DNSKEY:存储服务器的公开密钥
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
例子中的前4个文本字段指定记录所有者名称(owner)为exmaple.com,TTL值为86400,DNS记录类别(class)为IN,表示该条记录是Internet类资源记录,资源记录类型(RR Type)此处为DNSKEY。标志字段的值为256,表示区密钥标志位为1。协议字段值是固定的值3。算法字段为5,表示使用的是RSA/SHA-1算法。括号中的字符串是Base64编码的RSA/SHA-1算法公钥

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

在 DNSSEC的实践中,权威域的管理员通常用两对密钥配合完成对区数据的签名

  • 第一对密钥用来对区内的DNS资源记录进行签名,称为区签名密钥(Zone Signing Key, ZSK),由权威认证服务器生成、签名。
  • 另一对称为密钥签名密钥(Key Signing Key, KSK)的公私钥对,用来对包含密钥(如 ZSK)的资源记录(DNSKEY)进行签名,并将签名结果放在DNSKEY的RRSIG记录中

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

DNSSEC信任根信息可以查IANA的网站(https://www.iana.org/dnssec/files)

🕤 2.2.2 RRSIG

域名服务器中的资源记录(Resource Record,RR)包含和域名相关的各项数据,资源记录包含很多种类,但常用的是Internet类(IN类),这种类包含多种不同的数据类型。

类型 描述
SOA 开始授权
A 由域名获得IPv4地址记录
AAAA 由域名获得IPv6地址记录
MX 域内邮件服务器地址记录
NS 域内权威域名服务器地址记录
CNAME 查询规范名称

RRSIG:存储对资源记录集合(RR Sets)的数字签名
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
例子中的前4个文本字段指定记录所有者名称为host.exmaple.com,TTL值为86400,DNS记录类别(class)为IN,资源记录类型(RR Type)为RSIG。然后是类型覆盖字段,此例为”A”,表示主机IPv4地址资源记录。表示签名算法的字段值等于5。即签名算法为RSA/SHA1。3表示被签名的资源域名记录所有者(host.example.com)中的标签数量,如本例中为3,*.example.com.为2,“.”的标签数量为0,签名有效期在 20030220173103和20030322173103之间。密钥标签值为2642。签名者的名字为“example.com”,在其后就是采用RSA/SAH1算法运算得到的签名

🕤 2.2.3 NSEC

NSEC:为了应答那些不存在的资源记录而设计

在区数据签名时,NSEC记录会自动生成。如在vpn.test.net和xyz.test.net之间会插入下面的两条记录
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
DNSSEC采用的方法如下:将所有者的域名看作是一个个独立的无符号左对齐的8位字节的字符串(unsigned left-justified octet strings)进行按右优先(rightmost)的排序,并将所有大写字母转换成小写字母进行排序,详细的排序方法可参考RFC 4034

🕤 2.2.4 DS

DS :记录存储DNSKEY的散列值,用于验证DNSKEY的真实性,从而建立一个信任链
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

例子中的DS记录的前4个文本字段指定记录所有者名称为dskey.exmaple.com,TTL值为86400,DNS记录类别(class)为IN,资源记录类型(RR Type)为DS。DS 之后的字段依次是密钥标签(Key Tag),此处为60485;算法字段,表示所有者(dskey.example.com)用来签名的算法,此例为5, 表示RSA;散列算法字段,此例为1, 表示使用的报文摘要算法为SHA-1。最后括号中是所有者(dskey.example.com)使用散列算法(SHA-1)计算得到的16进制表示的摘要信息。Example.com必须为这个记录进行数字签名,以证实这个DNSKEY的真实性
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🕘 2.3 DNSSEC对DNS协议的修改

DNSSEC新增的4种资源记录,这些记录的长度远远超过了最初的DNS协议标准规定的512字节,而要求DNS报文大小必须达到1220字节,甚至是4096字节。因此DNS服务器如果要支持DNSSEC,则首先需要支持扩展DNS机制(Extension Mechanisms for DNS, EDNS

  • 1987年的RFC 1035限制了DNS 报文大小、新功能
  • EDNS扩展DNS格式和功能
    • IPv6、DNSSEC、ECS等
    • 向后兼容的 Workaround尝试
    • 服务器不支持或被防火墙过滤
  • DNS Flag day: dnsflagday.net
    • 2019/2/1日后,对EDNS实现不标准的授权服务器,Google等公共DNS将不再尝试访问,可能导致解析失败

伪资源记录:
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
为了保持向后兼容性,更改已有的DNS协议格式是不可能的,所以只能在DNS协议的数据部分进行扩展。EDNS中引入了一种新的伪资源记录OPT RR(Pseudo-RR)。之所以称之为伪资源记录是因为它不包含任何DNS数据,并且不能被缓存、不能被转发、不能被存储在区(zone)文件中。OPT被放在DNS通信双方DNS消息的Additional data区域中。

DNSSEC在协议报文头中增加了三个标志位:

  • DO(DNSSEC OK, 参见RFC3225)标志位:支持DNSSEC标志位
  • AD(Authentic Data)标志位:认证数据标志
  • CD (Checking Disabled)标志: 关闭检查标志位

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
图示的是报文中的RRSIG记录。RRSIG记录中可以看出签名者的名字是ietf.org,签名算法为RSA/SHA1。同时,在发送RRSIG记录的DNS消息的附加区域有一条OPT记录。

多选题:以下说法错误的是()
A. DNSSEC可以解决DNS报文保密性问题
B. DNSSEC对DNS报文没有进行改造
C. 90%的域名服务器部署了DNSSEC
D. EDNS是对DNS的扩展
解析:A:DNSSEC解决的是认证性的问题,解决保密性的应该是DoT(DNS over TLS)/ DoH(DNS over HTTPS);B:有改造的;C:全球也仅有23%比例部署。答案是ABC。

🕘 2.4 DNSSEC递归解析过程

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

步骤 查询-响应(Query-response) 可选的 DNSSEC 数据(Optional DNSSEC data)
DNS 客户发送 DNS 请求给递归服务器 DNS 客户将 DO 比特置 1,表示它支持DNSSEC (DNSSEC-aware)
递归服务器收到客户请求后向根和顶级 DNS 服务器 (TLD) 发送 DNS 查询请求 递归服务器将 DO 比特置 1, 表示它支持DNSSEC (DNSSEC-aware)
TLD 服务器给递归 DNS 服务器返回 DNS 响应, 包括请求区的权威 DNS 服务器的 IP 地址。 父区的权威 DNS 服务器指示子区用 DNSSEC签名, 并且包括一个安全的代理 (DS 记录)
递归 DNS 服务器发送一个 DNS 查询到该区的权威 DNS 服务器 递归服务器将 DO 比特置 1,表示它支持DNSSEC (DNSSEC-aware);将 CD 比特置1表示其能够验证响应中的签名的资源记录
权威 DNS 服务器返回一个包含资源记录的 DNS 响应给递归服务器。 权威 DNS 服务器在响应中加入 RRSIG 记录格式的 DNSSEC 签名
递归 DNS 服务器将包含资源记录数据的 DNS 响应发送给 DNS 客户 递归服务器用AD标志告知 DNS 客户 DNS 响应是否已验证

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
查看DNSSEC域名解析过程:
支持dig查询的Web网站(https://www.diggui.com/)

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络
在Linux系统中直接用dig查询:
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🕘 2.5 DNSSEC安全性分析

  • DNSSEC的安全性取决于 PKI 所用密钥的安全性
    • DNSSEC 选择RSA/SHA-n 加密算法,即首先将要传送的数据通过 SHA-n 算法进行安全散列变换,然后利用RSA 算法生成的私钥进行数字签名
       时间   安全强度(bit)   数字签名算法   散列算法  2010  年之前  80  RSA 1024   SHA-1  2010 − 2030  年  112  RSA 2048   SHA-256  2030  年之后  128  RSA 3072   SHA-256/512  \begin{array}{|c|c|c|c|} \hline \text { 时间 } & \text { 安全强度(bit) } & \text { 数字签名算法 } & \text { 散列算法 } \\ \hline 2010 \text { 年之前 } & 80 & \text { RSA 1024 } & \text { SHA-1 } \\ \hline 2010-2030 \text { 年 } & 112 & \text { RSA 2048 } & \text { SHA-256 } \\ \hline 2030 \text { 年之后 } & 128 & \text { RSA 3072 } & \text { SHA-256/512 } \\ \hline \end{array}  时间 2010 年之前 20102030  2030 年之后  安全强度(bit) 80112128 数字签名算法  RSA 1024  RSA 2048  RSA 3072  散列算法  SHA-1  SHA-256  SHA-256/512 
  • DNSSEC通过数字签名保证域名信息的真实性和完整性,防止对域名服务信息的伪造、篡改
  • DNSSEC并不保证机密性,因为它不对DNS记录进行加密,也解决不了DNS服务器本身的安全问题,如被入侵、存储的Zone数据被篡改、拒绝服务攻击、DNS软件的实现问题等
    由于DNSSEC的报文长度增加和解析过程繁复,在面临DDoS攻击时,DNS服务器承受的负担更为严重,抵抗攻击所需的资源要成倍增加

DNS加密(DNSCrypt)

【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

🕒 3. DNSSEC部署

DNSSEC的部署也面临着巨大挑战。1999年RFC 2535发布后的近10年间,DNSSEC受限于技术、成本、网络性能等多方面因素的影响,一直未得到各方面的充分重视,部署进展缓慢。BIND 9的开发主要用于支持 DNSSEC协议。2000年,瑞典在其国家顶级域中首次尝试部署 DNSSEC协议,但发现存在隐私和扩展方面的问题。随后几年,DNSSEC协议修修补补,部署实施进展缓慢。

DNSSEC协议设计时并没有考虑增量式部署的情况,其安全功能是基于所有DNS服务器全部采用DNSSEC协议这一假设的,在DNSSEC完全部署到位之前,会造成“安全孤岛”现象。

如何判断一个域名服务器是否支持DNSSEC?
🔎 Internet.nl
【信息安全原理】——DNS安全(学习笔记),网络安全详解,安全,学习,笔记,网络

DNSSEC、DNS Encrypt 就安全了吗?

🔎 Encrypted DNS =⇒ Privacy?
A Traffic Analysis Perspective

域名解析的依赖关系有时并不取决于域名所在的层次,比如CERNET.NET的域名的解析依赖于.CN、.HK和.DE。根据2015年的测试结果,CERNET.NET的域名解析可能依赖于24个域名
🔎 段海新:互联网基础设施安全依赖性研究


OK,以上就是本期知识点“DNS安全”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页文章来源地址https://www.toymoban.com/news/detail-772558.html

到了这里,关于【信息安全原理】——DNS安全(学习笔记)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全B模块(笔记详解)- MYSQL信息收集

    1.通过渗透机场景Kali中的渗透测试工具对服务器场景MySQL03进行服务信息扫描渗透测试(使用工具Nmap,使用必须要使用的参数),并将该操作显示结果中数据库版本信息作为Flag提交; Flag:MySQL 5.5.12 2.通过渗透机场景Kali中的渗透测试工具对服务器场景MySQL03的数据库进行暴力破

    2024年01月16日
    浏览(45)
  • 网络安全B模块(笔记详解)- Web信息收集

    1.通过Kali对服务器场景Linux进行Web扫描渗透测试(使用工具nikto,查看该命令的完整帮助文件),并将该操作使用命令中固定不变的字符串作为Flag提交; Flag:nikto -H 2.通过Kali对服务器场景Linux进行Web扫描渗透测试(使用工具nikto,扫描目标服务器8080端口,检测其开放状态),

    2024年01月20日
    浏览(59)
  • 【信息安全案例】——网络攻击分析(学习笔记)

    📖 前言:随着信息技术的发展,网络空间的斗争可谓是兵家必争之地,网络攻击的事件层出不穷。道高一尺魔高一丈,了解常见的网络攻击类型有利于我们日后工作生活的安全稳定。 🔎 记一次Vulnstack靶场内网渗透(二) 🕤 1.2.1 欺骗攻击 利用TCP/IP协议本身的一些缺陷对

    2024年02月08日
    浏览(43)
  • DNS、DNS劫持与HTTPDNS:原理、应用与安全分析(1),网络安全培训那里好

    二、DNS劫持的场景和原因分析 2.1 场景 2.2 原因分析 三、HTTPDNS的应用场景 3.1 应用场景 3.2 HTTPDNS服务商 四、总结 DNS(Domain Name System,域名系统)是互联网的一项核心服务,负责将人类可读的域名(如www.example.com)解析为计算机可识别的IP地址(如192.0.2.1)。DNS通过层级式的分

    2024年04月25日
    浏览(39)
  • 网络安全入门学习第十课——DNS欺骗

    域名系统(英文:Domain Name System,缩写:DNS) 是互联网的一项服务。 作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。 我们本地的计算机在接入网络的时候,都会自动分配一个DNS服务器的IP地址,这个DNS服务器叫做本地

    2024年02月06日
    浏览(51)
  • 信息安全-网络安全漏洞防护技术原理与应用

    网络安全漏洞: 又称为脆弱性,简称漏洞。 漏洞 一般是 致使网络信息系统安全策略相冲突的缺陷 ,这种缺陷通常称为 安全隐患 安全漏洞的影响: 主要有机密性受损、完整性破坏、可用性降低、抗抵赖性缺失、可控制性下降、真实性不保等 根据已经公开的漏洞信息,网络

    2024年02月11日
    浏览(53)
  • 网络安全/信息安全(黑客技术)自学笔记

    了解了计算机的硬件、软件、操作系统和网络结构等基础知识,可以帮助您更好地理解网络安全的概念和技术。 了解了网络的结构、协议、服务和安全问题,可以帮助您更好地解决网络安全的原理和技术。 了解了安全的概念、原则、威吓和攻击方式,可以帮助您更好地理解

    2024年02月15日
    浏览(42)
  • 信息安全概论之《密码编码学与网络安全----原理与实践(第八版)》

    前言:在信息安全概论课程的学习中,参考了《密码编码学与网络安全----原理与实践(第八版)》一书。以下内容为以课件为主要参考,课本内容与网络资源为辅助参考,学习该课程后作出的总结。 该课程不是密码学编程,也不是网络安全攻防课程,而是学生进入信息安全

    2024年02月10日
    浏览(41)
  • 机器学习和深度学习检测网络安全课题资料:XSS、DNS和DGA、恶意URL、webshell

    XSS 机器学习识别XSS实践 使用深度学习检测XSS 使用深度学习检测XSS(续) DNSDGA检测 使用CNN检测DNS隧道 探秘-基于机器学习的DNS隐蔽隧道检测方法与实现 DNS Tunnel隧道隐蔽

    2024年02月02日
    浏览(45)
  • 准大一信息安全/网络空间安全专业学习规划

    如何规划? 学习需要一个良好的学习习惯,建议刚开始一定要精通一项程序语言,学习其他的就会一通百通。过程中是按步骤学习,绝不半途看见苹果丢了梨,一定要强迫自己抵制新鲜技术的诱惑。 网络安全其实是个广而深的领域,可以细分为网络爬虫、web安全、渗透测试

    2024年02月15日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包