RHEL/CentOS/OEL5/6.x高危漏洞修补

  1. 云栖社区>
  2. 博客>
  3. 正文

RHEL/CentOS/OEL5/6.x高危漏洞修补

技术小胖子 2017-11-11 22:15:00 浏览1670
展开阅读全文

本文只是仅针对绿盟漏洞扫描结果,在RHEL/CentOS/OEL5.x x64位版本中会存在如下高危漏洞,这里整理解决办法,经过再次漏洞扫描,漏洞已修补。

高危
 OpenSSH X11 Cookie本地绕过认证漏洞
 OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)
 OpenSSH 拒绝服务漏洞
 OpenSSH sshd 权限许可和访问控制漏洞(CVE-2015-5600)
 OpenSSH sshd Privilege Separation Monitor 未明漏洞
 OpenSSH‘hash_buffer’函数缓冲区溢出漏洞(CVE-2014-1692)
 OpenSSH GSSAPI 处理远端代码执行漏洞
GNU Bash 环境变量远程命令执行漏洞(CVE-2014-6271)
GNU Wget符号链接漏洞(CVE-2014-4877)

中危
 OpenSSH 权限许可和访问控制漏洞(CVE-2008-4109)
 OpenSSH 权限许可和访问控制漏洞(CVE-2014-2532)
 OpenSSH 远程拒绝服务漏洞(CVE-2010-5107)
 OpenSSH X连接会话劫持漏洞
 OpenSSH sshd monitor.c文件权限许可和访问控制漏洞(CVE-2015-6564)
 OpenSSH GSSAPI认证终止信息泄露漏洞
 OpenSSH 'ChrootDirectory'选项本地特权提升漏洞(CVE-2009-2904)
 OpenSSH OPIE安全漏洞(CVE-2007-2768)
 OpenSSH glob表达式拒绝服务漏洞(CVE-2010-4755)
 OpenSSH S/Key 远程信息泄露漏洞
 OpenSSH 拒绝服务漏洞(CVE-2016-1907)


一、RHEL/CentOS/OEL5/6.x x64位版本,操作系统高威漏洞升级openssh到6.6p1, 会消除如下高中危漏洞,低危漏洞可以忽略掉了。 

需要升级openssh7.2p2,最新版本,见第二部分。


(1) 采用原源包安装
(2) 采用rpm安装包进行升级安装,这里采用rpm包升级补丁。

查看openssh包
rpm  -qa|grep openssh

一个个卸载
rpm -e openssh --nodeps
rpm -e openssh-server --nodeps
rpm -e openssh-clients --nodeps
rpm -e openssh-askpass

或一次性卸载,可以在线打。
rpm -e --nodeps `rpm -qa |grep openssh`

复制如下安装包:
安装包下载地址:http://down.51cto.com/data/2135008

rpm -ivh openssh-6.6.1p1-2.gf.el5.x86_64.rpm openssh-askpass-6.6.1p1-2.gf.el5.x86_64.rpm openssh-clients-6.6.1p1-2.gf.el5.x86_64.rpm openssh-server-6.6.1p1-2.gf.el5.x86_64.rpm libedit-20090923-3.0_1.el5.rf.x86_64.rpm

# ssh -V
OpenSSH_6.6.1p1, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

重启ssh服务:
# service sshd restart


2. bash漏洞检测
GNU Bash 环境变量远程命令执行漏洞(CVE-2014-6271)

(1) bash漏洞检测方法和修复更新包
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

如果出现以下结果,就必须立即打上补丁修复。
vulnerable
this is a test

如果出现以下结果,则表明漏洞修复成功
this is a test

(2) 下载rpm包,注网站是有效的,如果不能下载,需要进入目录中找到同名最新安装包下载即可。
CentOS 5 
http://mirrors.pubyun.com/centos/5/updates/x86_64/RPMS/bash-3.2-33.el5_11.4.x86_64.rpm 
CentOS 6
http://mirrors.pubyun.com/centos/6/updates/x86_64/Packages/bash-4.1.2-15.el6_5.2.x86_64.rpm
Centos 7 
http://mirrors.pubyun.com/centos/7.0.1406/updates/x86_64/Packages/bash-4.2.45-5.el7_0.4.x86_64.rpm

# rpm -Uvh bash-3.2-33.el5_11.4.x86_64.rpm 
采用升级方式安装即可。


3. GNU Wget符号链接漏洞(CVE-2014-4877)
两个方法,一是直接卸载掉不用,第二个方式就是采用源码安装。
下载wget源码包:
# wget http://ftp.gnu.org/gnu/wget/wget-1.17.tar.gz

直接卸载掉
# rpm -e --nodeps wget
# tar zxvf wget-1.17.tar.gz
# ./configure
# make && make install


二、更新到openssh7.2p2

注:openssh补丁当前需要打到openssh7.2p2补丁

openssh升级注意事项:

1), 确认需要安装如下安装包

yum -y install telnet telnet-server openssl openssl-devel zlib zlib-devel pam-devel


1, RHEL5.x 需要升级openssl,否则无法安装openssh,具体方式就是编译方式安装openssl后,再编译安装openssh7.2p2

rpm -ihv openssl-devel-0.9.8e-22.el5.x86_64.rpm  krb5-devel-1.6.1-70.el5.x86_64.rpm e2fsprogs-devel-1.39-33.el5.x86_64.rpm keyutils-libs-devel-1.2-1.el5.x86_64.rpm libselinux-devel-1.33.4-5.7.el5.x86_64.rpm libsepol-devel-1.15.2-3.el5.x86_64.rpm zlib-devel-1.2.3-4.el5.x86_64.rpm openssl-devel-0.9.8e-22.el5.i386.rpm pam-devel-0.99.6.2-6.el5_5.2.x86_64.rpm

指定ssl库的位置:

tar zxvf openssh-7.2p2.tar.gz
cd openssh-7.2p2
./configure --prefix=/usr --sysconfdir=/etc/ssh  --with-zlib --with-ssl-dir=/usr/local/ssl  --with-md5-passwords --mandir=/usr/share/man --with-pam
make && make install


2. RHEL6.x 不需要升级openssl的openssh编译安装

编译安装openssh

tar zxvf openssh-7.2p2.tar.gz
cd openssh-7.2p2
./configure --prefix=/usr --sysconfdir=/etc/ssh  --with-zlib --with-ssl  --with-md5-passwords --mandir=/usr/share/man --with-pam

make && make install


3、启动openssh服务

编译安装好后,可以通过sshd -d 进行验证,如果没有报错就可以重新启用openssh了

cp -p contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
chkconfig --add sshd
cp sshd_config /etc/ssh/sshd_config 
cp sshd /usr/sbin/sshd 
cp ssh-keygen /usr/bin/ssh-keygen
cp sftp-server /usr/libexec/


4. 配置允许root登陆(openssh7.2默认不允许root密码登录)

vim /etc/ssh/sshd_config

添加以下参数:
PermitRootLogin yes

启动sshd服务
service sshd start



本文转自 koumm 51CTO博客,原文链接:http://blog.51cto.com/koumm/1727828,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
技术小胖子
+ 关注