漏洞名称:OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)
漏洞说明:OpenSSH是SSH协议组的实现,可为各种服务提供加密的认证传输,包括远程shell访问。当J-PAKE启用时,OpenSSH 5.6及之前版本不能正确验证J-PAKE协议中的公共参数。远程攻击者可以通过发送每一轮协议中的特制值绕过共享秘密信息的需求,并成功获得认证。
解决方法:卸载系统的OpenSSH服务,安装最新版本的OpenSSH。
解决方法步骤:
1.检查openssl 版本在0.9.6以上
rpm –qa |grep openssl
2.检查zlib版本在1.2.1.2以上
rpm –qa |grep zlib
3.使用root用户登录系统进入到/root 上传openssh-6.6p1.tar.gz到该目录下
Cp /mnt/openssh-6.6p1.tar.gz /root
4.备份原rpm启动脚本到当前路径下
cp /etc/init.d/sshd ./
5.停止ssh服务
/etc/init.d/sshd stop
6.删除原rpm openssh软件包
rpm -e openssh-server openssh-5.3p1 openssh-clients openssh-askpass --nodeps
7.解压源码补丁安装包
tar -zxvf openssh 6.0p1.tar.gz
8.进入该目录
cd /root/openssh6.0p1
9.配置yum
新建ISO挂载目录
Mkdir /localyum
将ISO文件挂载到新建的目录(如果是光盘:mount -a /dev/cdrom /localyum
Mount -o loop /mnt/rhel-server-6.5-x86_64-dvd.iso /localyum
新建repo文件
Vim /etc/yum.repo/localyum.repo
内容如下:
[localyum]
name=local
baseurl=file:///localyum/Server
enabled=1
gpgcheck=0
10.安装gcc、zlib、openssl等编译需用的程序
Yum -y install gcc-*
Yum -y install zlib-*
Yum -y install openssl-*
11.配置指定安装目录 同时不检查zlib版本(节省时间如果zlib版本过低那么就会造成openssh的源文件无法编译成功)
./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check
make && make install
12.检查是否升级成功
ssh –V
13.拷贝启动脚本到/etc/init.d/下
cp /root/sshd /etc/init.d/
14.开启服务
/etc/init.d/sshd start
15.设置SSHD服务为开机启动
chkconfig --add sshd
chkconfig sshd ono
16检查端口是否正常
netstat -an |grep :22
17.修改ssh配置文件
vim /etc/ssh/sshd_config 修改配置文件
sshd配置文件路径/etc/ssh/sshd_config
Protocol 2 #为使用的协议
X11Forwarding yes #允许窗口图形传输使用ssh加密 yes允许
IgnoreRhosts yes #完全禁止sshd使用.rhosts文件 yes禁止
RhostsAuthentication no #不设置使用基于rhosts的安全验证
RhostsRSAAuthentication no #不设置使用RSA算法的基于rhosts的安全认证
HostbasedAuthentication no #不允许基于主机白名单的方式认证
PermitEmptyPasswords no #不允许空密码
给以下增加注释
#GSSAPICleanupCredentials no 是否在用户退出登录后自动销毁用户凭证缓存。默认值是"yes"。仅用于SSH-2
#GSSAPIAuthentication 是否允许使用基于 GSSAPI 的用户认证。默认值为"no"。仅用于SSH-2。
#USEPAM=YES 使用pam认证 NO