1.查询补丁版本信息

(1) rpm -qa|grep bind

(2) dig @localhost version.bind

2.下载安装

BIND最新漏洞和升级解决办法
现在有非常多的公司的都有自己的DNS服务器,也有非常多的公司使用BIND搭建智能DNS服务器。如果bind服务器挂掉那么公司的所有网站都可能会无法访问,那么BIND的安全就至关重要了,如何能通过技术手段加强bind的安全呢?我们这里要介绍的是通过定期查看权威漏洞网站来加固我们的bind服务器,当发现严重的漏洞时能及时的将漏洞补上,加强bind服务器的安全和稳定。
http://sebug.net权威漏洞网站上查看到,服务器目前使用的bind版本9.9.0b2存在几个比较严重的远程拒绝服务漏洞,这些漏洞包括: CVE-2012-3817、CVE-2012-3868、CVE-2012-1667,这两个漏洞的等级都为高。以下是对几个漏洞的介绍:
CVE-2012-3817漏洞:
Ø  影响版本:
BIND 9.6-ESV-R1至9.6-ESV-R7-P1、BIND 9.7.1至9.7.6-P1、BIND 9.8.0至9.8.3-P1、BIND 9.9.0至9.9.1-P1版本
Ø  漏洞描述:
攻击者可利用此漏洞造成指定进程中的断言失败,拒绝服务合法用户,也可能泄露某些内存信息到客户端。
Ø  漏洞解决办法:
升级版本至9.6-ESV-R7-P2、9.7.6-P2、9.8.3-P2、9.9.1-P2。
CVE-2012-3868漏洞
Ø  影响版本:
BIND 9.9.0到9.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技术人员能够引起注意。

更新补丁Bind的更多相关文章

  1. Win10 PC一周年更新正式版14393.447 32位/64位更新补丁KB3200970下载 Flash补丁Kb3202790下载

    微软在今天凌晨推送了Win10 PC一周年更新正式版14393.447,本次更新补丁代号为KB3200970,面向Win10一周年更新正式版的PC用户. 更新日志 • 提升了多媒体音频.远程桌面以及I ...

  2. win10系统更新补丁时进度条一直卡在0%不动的解决方案

    为了能够让win10系统更加安全稳定,很多用户都会时不时为自己的电脑安装补丁.不过,部分用户在为win10系统更新补丁时,却会遇到进度条一直卡在0%不动的问题.这该怎么办呢?下面,小编就告诉大家解决该 ...

  3. win10 更新系统更新补丁后无法启动处理办法

    win10无法启动不用怕!WinRE恢复环境轻松修复win10系统 Win10技术预览版发布至今,已经整整过去十天时间.经过这段时间的使用体验,小伙伴们有没有遇到一些问题,导致系统出错甚至无法启动呢? ...

  4. win10系统怎样手动安装cab更新补丁

    win10系统怎样手动安装cab更新补丁 1. 把所有补丁放进一个文件夹 例如 C:\UPDATE2. 以管理员运行命令提示符 3. 输入以下命令後按 Enterdism /online /add-p ...

  5. 系统装更新补丁出现“正在此计算机上搜索更新”,有时等待N长时间也没有反应

    系统装更新补丁出现“正在此计算机上搜索更新”,有时等待N长时间也没有反应 管理员身份运行 net stop wuauserv net stop CryptSvc ren %windir%\system ...

  6. Weblogic 升级更新补丁操作步骤

    转至:https://blog.csdn.net/allway2/article/details/91424413 Weblogic 升级更新补丁操作步骤: 1.上传补丁包2.kill weblogi ...

  7. Win10更新补丁失败后出现无法更新正在撤销 解决办法

    系统更新失败,反复重启还是不行,那是不是下载下来的补丁没用了呢??所以我们先要删除Windows更新的缓存文件!在做以下操作之前,首先我们要确认系统内的windows update & BIT ...

  8. Windows Server 2012更新补丁后导致Micosoft ODBC for Oracle出现问题

    上周由于WannaCry勒索病毒肆虐全球,14号系统管理员更新了一系列补丁后,导致一Windows Server 2012服务器上面部署的一些老旧的应用无法使用Microsoft ODBC for O ...

  9. ESXi 更新补丁 暂时未测试 等有时间尝试一下.

    下载地址: https://my.vmware.com/group/vmware/patch 使用操作图: 选择相应的zip包下载即可 更新方式: 命令方式升级ESXi主机补丁包 1.进入VMware ...

随机推荐

  1. JAVA之Socket编程

    网上对Socket的诠释很多,也很全,在这里我就不多说了,总之,现在的网络处处都在使用Socket.本帖是一个Socket的例子,用来模拟一个简单的登录系统,只有核心代码,访问数据库.输入神马的统统没 ...

  2. Ruby中Block, Proc, 和Lambda

    Block Blocks就是存放一些可以被执行的代码的块,通常用do...end 或者 {}表示 例如: [1, 2, 3].each do |num| puts num end [1, 2, 3]. ...

  3. 【C语言入门教程】7.5 枚举

    在实际应用中,有的变量只有几种可能取值.如人的性别只有两种可能取值,星期只有七种可能取值.在 C 语言中对这样取值比较特殊的变量可以定义为枚举类型.所谓枚举是指将变量的值一一列举出来,变量只限于列举出 ...

  4. CSS中font-size、font-family、line-height顺序以及简写属性

    顺序: font-size       line-height       font-family body { font-size: 12px}; h1 { font: bold 200%/1.2 ...

  5. mongodb windows install &python

    安装mongo http://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/ 其中修改: echo logpath=C:\mo ...

  6. 支付宝Payto接口的C#.net实现方法

    例一: using System; using System.Data; using System.Configuration; using System.Collections; using Sys ...

  7. 《C和指针(Pointer on c)》 学习笔记(转自:http://dsqiu.iteye.com/blog/1687944)

    首先本文是对参考中三个连接的博客进行的整理,非常感谢三位博主的努力,每次都感叹网友的力量实在太强大了…… 第一章 快速上手 1.  在C语言中用/*和*/来注释掉这段代码,这个实际上并不是十分的安全, ...

  8. Intellij IDEA使用总结

    查询快捷键CTRL+N   查找类CTRL+SHIFT+N  查找文件CTRL+SHIFT+ALT+N 查 找类中的方法或变量CIRL+B   找变量的来源CTRL+ALT+B  找所有的子类CTRL ...

  9. Window 下 Qt5 使用QMediaplayer 进行视频播放 流播放问题

    int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget *widget = new QWidget; widget ...

  10. <转>VPN技术原理

    原文地址:VPN技术原理 VPN,Virtual Private Network(虚拟专用 网络),被定义为通过一个公用网络(通常是因特网)建立一个临时的.安全的连接,是一条穿过公用网络的安全.稳定的 ...