zoukankan      html  css  js  c++  java
  • BIND最新漏洞和升级解决办法

    BIND最新漏洞和升级解决办法
    现在有非常多的公司的都有自己的DNS服务器,也有非常多的公司使用BIND搭建智能DNS服务器。如果bind服务器挂掉那么公司的所有网站都可能会无法访问,那么BIND的安全就至关重要了,如何能通过技术手段加强bind的安全呢?我们这里要介绍的是通过定期查看权威漏洞网站来加固我们的bind服务器,当发现严重的漏洞时能及时的将漏洞补上,加强bind服务器的安全和稳定。
    http://sebug.net权威漏洞网站上查看到,服务器目前使用的bind版本9.9.0b2存在几个比较严重的远程拒绝服务漏洞,这些漏洞包括: CVE-2012-3817CVE-2012-3868CVE-2012-1667,这两个漏洞的等级都为高。以下是对几个漏洞的介绍:
    CVE-2012-3817漏洞:
    Ø  影响版本:
    BIND 9.6-ESV-R19.6-ESV-R7-P1BIND 9.7.19.7.6-P1BIND 9.8.09.8.3-P1BIND 9.9.09.9.1-P1版本
    Ø  漏洞描述:
    攻击者可利用此漏洞造成指定进程中的断言失败,拒绝服务合法用户,也可能泄露某些内存信息到客户端。
    Ø  漏洞解决办法:
    升级版本至9.6-ESV-R7-P29.7.6-P29.8.3-P29.9.1-P2
    CVE-2012-3868漏洞
    Ø  影响版本:
    BIND 9.9.09.9.1-P1版本
    Ø  漏洞描述:
    BIND 9加载大量的TCP查询存在安全漏洞,允许攻击者提交大量请求触发内存泄露,使名字服务程序停止响应,造成拒绝服务攻击。
    Ø  漏洞解决办法:
    BIND版本升级至9.6-ESV-R7-P1, 9.7.6-P1, 9.8.3-P1, 9.9.1-P1或者9.9.1-P2
    CVE-2012-1667漏洞:
    Ø  影响版本:
    9.0.x -> 9.6.x, 9.4-ESV->9.4-ESV-R5-P1, 9.6-ESV->9.6-ESV-R7,9.7.0->9.7.6, 9.8.0->9.8.3, 9.9.0->9.9.1
    Ø  漏洞描述:
    在处理DNS资源记录时存在错误,可被利用通过包含零长度rdata的记录造成递归服务器崩溃或泄漏某些内存到客户端,导致敏感信息泄漏或拒绝服务。
    Ø  漏洞解决办法:
    升级到BIND 9.9.1-P2版本
     
        知道了BIND服务器存在的漏洞,那么我们就可以很好的来避免危险的发生了。接下来我就来详细介绍如何将BIND版本9.9.0b2升级到 BIND 9.9.1-P2版本。不过有的朋友可能也不清楚自己的bind用的什么什么版本,我们可以采用如下命令来查看:
    /usr/local/bind/sbin/named –V
    BIND 9.9.0b2 built with '--with-dlz-mysql=/usr/local/mysql/' '--enable-largefile' '--enable-threads=no' '--prefix=/usr/local/bind' '--with-openssl=yes'
    using OpenSSL version: OpenSSL 0.9.8e-rhel5 01 Jul 2008
    using libxml2 version: 2.6.26
    这个命令可以返回bind的版本、编译参数、openssl版本、libxml2的版本。
    升级BIND主要包含如下步骤:
    1.   备份bind目前的版本数据
    cp -ar /usr/local/bind /data/backup/bind_20120827
    2.   下载bind-9.9.1-P2版本
    wget http://ftp.isc.org/isc/bind9/cur/9.9/bind-9.9.1-P2.tar.gz
    3.   安装bind-9.9.1-P2版本
    tar xzvf bind-9.9.1-P2.tar.gz
    cd bind-9.9.1-P2
    #编译的时候的参数最好和老版本的一致
    ./configure --with-dlz-mysql=/usr/local/mysql/ --enable-largefile --enable-threads=no --prefix=/usr/local/bind --with-openssl=yes
    make 
    make install
    4.   重启bind
    #杀掉named进程后启动新版本bind
    kill -9 `ps aux | grep named|grep -v "grep" | awk '{print $2}'`
    /usr/local/bind/sbin/named -c /usr/local/bind/etc/named.conf
    5.   查看版本情况
    /usr/local/bind/sbin/named –V
    #此时我们已经可以看到新版本的bind信息了
    BIND 9.9.1-P2 built with '--with-dlz-mysql=/usr/local/mysql/' '--enable-largefile' '--enable-threads=no' '--prefix=/usr/local/bind' '--with-openssl=yes'
    using OpenSSL version: OpenSSL 0.9.8e-rhel5 01 Jul 2008
    using libxml2 version: 2.6.26
    6.   测试解析是否正常
    dig @119.135.22.32 www.baidu.com
    此时如果dns解析正常的话,整个升级过程就完成了。

    总结:作为一个系统管理员或者网络管理员,我们应该定期地去权威的漏洞网站,查看我们线上使用的软件以及系统是否存在严重的安全漏洞,一经发现则要提高安全意识,尽快的将漏洞补上,减少安全事件的发生。sebug.net是一个很好的权威漏洞网站,大家没事的时候可以多去逛逛。对于以上的几个bind的安全漏洞也希望广大的IT技术人员能够引起注意。

  • 相关阅读:
    caffe常用层: batchNorm层和scale层
    简述configure、pkg-config、pkg_config_path三者的关系
    python删除list中元素的三种方法
    Leetcode 872. Leaf-Similar Trees
    Leetcode 508. Most Frequent Subtree Sum
    Leetcode 572. Subtree of Another Tree
    Leetcode 894. All Possible Full Binary Trees
    Leetcode 814. Binary Tree Pruning
    Leetcode 557. Reverse Words in a String III
    python 多维list声明时的小问题
  • 原文地址:https://www.cnblogs.com/feihongwuhen/p/7169798.html
Copyright © 2011-2022 走看看