DNS域传送漏洞

0x00 相关背景介绍

Dns是整个互联网公司业务的基础,目前越来越多的互联网公司开始自己搭建DNS服务器做解析服务,同时由于DNS服务是基础性服务非常重要,因此很多公司会对DNS服务器进行主备配置而DNS主备之间的数据同步就会用到dns域传送,但如果配置不当,就会导致任何匿名用户都可以获取DNS服务器某一域的所有记录,将整个企业的基础业务以及网络架构对外暴露从而造成严重的信息泄露,甚至导致企业网络被渗透。

0x01 成因

DNS服务器的主备数据同步,使用的是域传送功能。 域传送关键配置项为:

allow-transfer {ipaddress;}; 通过ip限制可进行域传送的服务器

allow-transfer { key transfer; }; 通过key限制可进行域传送的服务器

设置方式为两种:一种设置在options配置域;一种设置在zone配置域。优先级为如果zone没有进行配置,则遵守options的设置。如果zone进行了配置,则遵守zone的设置。

options配置如下:

options {

listen-on { 1.1.1.1; };

listen-on-v6 { any; };

directory "/bind";

pid-file "/bind/run/pid";

dump-file "/bind/data/named_dump.db";

statistics-file "/bind/data/named.stats";

 

allow-transfer { any; };

allow-query {any;};

 

 

};

zone配置如下:

zone "wooyun.org" {

type master;

file "/bind/etc/wooyun.org.conf";

allow-transfer {any;};

};

笔者测试版本为BIND 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.6,默认安装完毕后,配置项没有allow-transfer 项。如果直接使用默认配置文件进行配置的话(不手动添加allow-transfer项),就会存在dns 域传送漏洞。

0x02 攻击方式及危害

恶意用户可以通过dns域传送获取被攻击域下所有的子域名。会导致一些非公开域名(测试域名、内部域名)泄露。而泄露的类似内部域名,其安全性相对较低,更容易遭受攻击者的攻击,比较典型的譬如内部的测试机往往就会缺乏必要的安全设置。

攻击者进行测试的成本很低,如dns服务器IP1.1.1.1 测试域名为wooyun.org,测试命令如下:

# dig @1.1.1.1 wooyun.org axfr  #就可以看到返回结果类似如下:

; <<>> DiG 9.7.3 <<>> @1.1.1.1 wooyun.org axfr

 

; (1 server found)

;; global options: +cmd

wooyun.org. 86400 IN SOA wooyun.org. rname.invalid. 0 86400 3600 604800 10800

wooyun.org. 86400 IN NS wooyun.org.

wooyun.org. 86400 IN A 127.0.0.1

wooyun.org. 86400 IN AAAA ::1

test.wooyun.org. 86400 IN A 1.1.1.1

xxx.wooyun.org. 86400 IN A 2.2.2.2

wooyun.org. 86400 IN SOA wooyun.org. rname.invalid. 0 86400 3600 604800 10800

0x03 实际案例

WooYun: 优酷 DNS 域传送漏洞

WooYun: 去哪儿DNS域传送漏洞

WooYun: IT168.com DNS 域传送漏洞

0x04 修复方案

解决域传送问题非常简单,只需要在相应的zoneoptions中添加allow-transfer限制可以进行同步的服务器就可以了,可以有两种方式:限制IP、使用key认证。

 

举个实例

漏洞详情

披露状态:

2015-05-25 细节已通知厂商并且等待厂商处理中
2015-05-30
厂商已经主动忽略漏洞,细节向公众公开

简要描述:

DNS配置不当,造成一些非公开域名泄露

详细说明:

0x00.恶意用户可以通过dns域传送获取被攻击域下所有的子域名。会导致一些非公开域名(测试域名、内部域名)泄露。而泄露的类似内部域名,其安全性相对较低,更容易遭受攻击者的攻击,比较典型的譬如内部的测试机往往就会缺乏必要的安全设置.

该配置不当的DNS Server为:dns2.etone.edu.cn

漏洞证明:

code 区域

shop.edu.cn. IN AXFR

;ANSWER

shop.edu.cn. 86400 IN SOA shop.edu.cn. qikw.cernet.com. 2015052201 86400 3600 604800 10800

shop.edu.cn. 86400 IN MX 10 mail.shop.edu.cn.

shop.edu.cn. 86400 IN NS dns1.etone.edu.cn.

shop.edu.cn. 86400 IN NS dns2.etone.edu.cn.

shop.edu.cn. 86400 IN TXT "v=spf1 ip4:59.64.112.160 59.64.112.161 -all"

shop.edu.cn. 86400 IN A 117.79.83.205

852214867.shop.edu.cn. 86400 IN CNAME domains.live.com.

default._domainkesy.shop.edu.cn. 86400 IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQC82/U8cXL5DKtFf9XTBSJTWUWnpGjzBf5da5TTdhL11OEhU6MorlH0iCgd8P6M9X8i4wQFk1nDvrsKdEdGWxLW4BaGko5b7eIDzI9lfeqWV2zrfJ6DB4zcca4AVgZBLhB757kq475508LWD1zIqRAQSVC4cJgMTywIDAQAB"

abc.shop.edu.cn. 86400 IN MX 10 1882003221.pamx1.hotmail.com.

all.shop.edu.cn. 86400 IN A 117.79.83.206

api.shop.edu.cn. 86400 IN A 117.79.83.205

api2.shop.edu.cn. 86400 IN A 117.79.83.205

修复方案:

使用IP或者Key设置allow-transfer ACL

 

实例二

漏洞详情

披露状态:

2015-05-21: 细节已通知厂商并且等待厂商处理中
2015-05-26: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

gzhtcm.edu.cn DNS服务器配置不当,导致信息泄露。

详细说明:

 

 

 

转载于:https://www.cnblogs.com/h4ck0ne/p/5154651.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256015.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

封装之--通过类中公有方法访问私有成员变量

如何在ClassB中访问ClassA的私有成员变量&#xff1f;&#xff08;典型的封装案例&#xff09; 通过在ClassA中定义公有的成员方法&#xff0c;然后&#xff0c;在ClassB中通过ClassA的对象调用ClassA中的公有方法&#xff0c;来访问ClassA中的私有成员变量。 转载于:https://w…

匹配物镜放大倍数与相机像元尺寸

通常来说&#xff0c;相机内部的CCD或者CMOS传感器上都有感光阵列&#xff0c;由一个一个的感光元件构成&#xff0c;每一个感光元件负责完成光电转换的过程。简单理解&#xff0c;一个感光元件可以认为就是一个像素(pixel)或像元(pel)。像元具有一定尺寸&#xff0c;如果像的尺…

2016/11/10 kettle概述

ETL(Extract-Transform-Load&#xff0c;即抽取&#xff0c;转换&#xff0c;加载)&#xff0c;数据仓库技术&#xff0c;是用来处理将数据从来源&#xff08;以前做的项目&#xff09;经过抽取&#xff0c;转换&#xff0c;加载到达目的端&#xff08;正在做的项目&#xff09…

【深度学习】——非极大值抑制(nms/soft-nms)

目录 一、相关概念 1、iou 1&#xff09;理论计算 2&#xff09;Python代码&#xff08;代码参考yolov3模型util.py文件&#xff09; 2、nms 1)基本思路 2&#xff09;标准nms和soft-nms 3&#xff09;Python代码实现&#xff08;yolov3中util.py文件&#xff0c;增加了…

移动服务安全现状分析!

2019独角兽企业重金招聘Python工程师标准>>> 由于Android开源的环境&#xff0c;导致Android的整体环境都存在很多不安全的因素&#xff0c;同时用户在移动APP客户端的便捷应用&#xff0c;也给用户带来了巨大的安全隐患。未经过移动服务安全加固的APP存在被静态反编…

封装不同类模板的随机数生成器

最近准备刷题&#xff0c;打算简单封装下随机数生成器&#xff0c;方便产生测试数据。C11的STL提供了很多分布类型&#xff0c;我比较常用的是均匀分布&#xff0c;均匀分布的值有两种类型&#xff0c;一类是整数&#xff0c;另一类是浮点数&#xff0c;STL根据值的类型定义了两…

Log4j详细设置说明

1. 动态的改变记录级别和策略&#xff0c;即修改log4j.properties,不需要重启Web应用&#xff0c;这需要在web.xml中设置一下。2. 把log文件定在 /WEB-INF/logs/ 而不需要写绝对路径。3. 可以把log4j.properties和其他properties一起放在/WEB-INF/ &#xff0c;而不是Class-Pat…

【机器学习】——卷积神经网络(Keras)修改学习率(定值+自适应)

目录 1、直接获取现有模型的学习率 2、打印显示学习率 3、调整学习率 1&#xff09;1.LearningRateScheduler 2&#xff09;ReduceLROnPlateau 利用tensorflow的Keras模块我们可以建立我们自己定义的卷积神经网络模型&#xff0c;但是一般不会触碰到学习率这个问题&#x…

使用Docker构建你的第一个服务

1. 感受一下Docker的便捷 项目源码 https://github.com/MoonShining/dockernize-grape-helloworld clone下来以后运行,cd到项目目录下&#xff0c;运行 docker build -t api-sample . docker run -p 8080:8080 api-sample:latest 复制代码就可以访问localhost:8080看到效果了. …

MyEclipse连接MySQL

在官网http://www.mysql.com/downloads/下载数据库连接驱动 本文中使用驱动版本为mysql-connector-java-5.1.40 一、创建一个java测试项目MySQLConnectorsTest 在项目下穿件一个lib文件夹用来存放MySQL驱动包。 右键驱动包build path进行add添加操作&#xff0c;打开Referenced…

在Windows系统中配置Google AddressSanitizer

Google AddressSanitizer简介 AddressSanitizer (ASan) 是 C 和 C 的内存错误检测软件&#xff0c;它可以检测&#xff1a; 释放指针后继续使用堆缓冲区溢出栈缓冲区溢出全局缓冲区溢出返回后继续使用在范围之外继续使用初始化顺序的bug内存泄漏 在 Windows 系统中&#xff…

【剑指offer】——求出一个正整数的质数因子(Python)

目录 一、题目描述 二、思路 1、短除法 2、平方根法 一、题目描述 功能:输入一个正整数&#xff0c;按照从小到大的顺序输出它的所有质因子&#xff08;重复的也要列举&#xff09;&#xff08;如180的质因子为2 2 3 3 5 &#xff09; 最后一个数后面也要有空格 输入描述…

Python字符串笔录

python字符串操作实方法&#xff0c;包括了几乎所有常用的python字符串操作&#xff0c;如字符串的替换、删除、截取、复制、连接、比较、查找、分割等 1、去空格及特殊符号 >>> s 123 >>> s.strip() # 去除所有空格123 >>> s1 123 >>&…

第九周进度条

第六周学习进度条 星期一 星期二 星期三 星期四 星期五 星期六 星期日 所花时间 &#xff08;包括上课&#xff09; 无 上午8:00-9:50 无 无 下午4:00-5:00 下午3&#xff1a;00-5&#xff1a;30 代码量&#xff08;行&#xff09; 0行 260行 0行 0行 0行 0…

C++ STL实现的优先队列( priority_queue )

本文参考的源码版本&#xff1a;gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)。 priority_queue 本质是容器适配器&#xff0c;它对内部容器的元素有自己的管理方式&#xff0c;而 priority_queue 实际维护的是一个二叉堆。STL中 priority_queue 的…

【Python函数】——sort,sorted

1、sorted和sort的常规使用 2、关于自定义比较函数 3、试验 from functools import cmp_to_key ll [(2,3,10),(1,2,3),(5,6,7),(2,5,10),(2,4,10)]# 根据一个维度进行排序&#xff0c;这里根据第一维排序 ll1 sorted(ll,key lambda x:x[0]) print(根据一个维度进行排序&a…

生成相关矩阵

U是X&#xff08;差异矩阵&#xff09;各列向量取方向后形成的矩阵&#xff0c;CU^T * U 即相关矩阵&#xff0c;即各列向量两两的夹角&#xff0c;&#xff08;夹角越小说明关联度越高&#xff09; clc avg_e66;avg_m66;avg_s76; x1[61 63 78 65 63] -avg_e; x2[53 73 61 84 5…

Java关于Properties用法的总结(一)

最近项目中有一个这样的需求&#xff0c;要做一个定时任务功能&#xff0c;定时备份数据库的操表&#xff0c;将表数据写入txt文件。因为文件的读写路径可能需要随时改动&#xff0c;所以写死或者写成静态变量都不方便&#xff0c;就考虑使用配置文件&#xff0c;这里总结些配置…

【tensorflow】——tensorboard可视化计算图以及参数曲线图loss图

参考文献&#xff1a; https://zhuanlan.zhihu.com/p/71328244 目录 1.可视化计算图 2.可视化参数 3. 远程tensorboard 4、报错 真是出来混迟早是要还的&#xff0c;之前一直拒绝学习Tensorboard&#xff0c;因为实在是有替代方案&#xff0c;直到发现到了不得不用的地步…