zoukankan      html  css  js  c++  java
  • 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服务器配置不当,导致信息泄露。

    详细说明:

     

     

     

  • 相关阅读:
    MIPS——分支语句
    MIPS简单入门
    迷宫问题——最短路
    用dfs遍历联通块(优化)
    用protractor測试canvas绘制(二)
    android 用java代码设置布局、视图View的宽度/高度或自适应
    HBase编程实例
    Top10Servlet
    Delete Node in a Linked List
    atitit.html5动画特效----打水漂 ducks_and_drakes
  • 原文地址:https://www.cnblogs.com/h4ck0ne/p/5154651.html
Copyright © 2011-2022 走看看