一:漏洞分析
最近进行linux系统安全加固分析,进行漏洞扫描扫描分析,不扫不知道,一扫吓一跳,linux系统服务器的
OPENSSH存在3大安全漏洞,祥如下:
1:OpenSSH GSSAPI 处理远端代码执行漏洞
漏洞分类 守护进程类
危险级别 高
影响平台 OpenSSH OpenSSH < 4.4
详细描述 OpenSSH 4.3 之前的 portable 版本存在远端代码执行漏洞. 攻击者可以利用race 无法处理特别制作
的 signal handler 而导致阻断服务. 如果通过 GSSAPI 认证,攻击者可以在系统上执行任意代码.
修补建议 以下措施进行修补以降低威胁: 升级至 OpenSSH 4.4 或最新版本的 OpenSSH. OpenSSH 4.4
released ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/
参考网址 # MLIST:[openssh-unix-dev] 20060927 Announce: OpenSSH 4.4 released #
URL:http://marc.theaimsgroup.com/?l=openssh-unix-dev&m=115939141729160&w=2
2:OpenSSH GSSAPI认证终止信息泄露漏洞
漏洞编号 000a03fa
漏洞分类 守护进程类
危险级别 中
详细描述 OpenSSH portable 版本 GSSAPI 认证存在信息泄露漏洞. 远端攻击者可以利用GSSAPI 认证终止回传
不同的错误讯息和确认 usernames 非特定的平台进而攻击,攻击者可以获得 usernames 的信息.
修补建议 升级至 OpenSSH 4.4 或最新版本的 OpenSSH. OpenSSH 4.4 released
http://www.openssh.com/txt/release-4.4
参考网址 * BUGTRAQ:20061005 rPSA-2006-0185-1 gnome-ssh-askpass openssh openssh-client openssh-
server * URL:http://www.securityfocus.com/archive/1/archive/1/447861/100/200/threaded
3:OpenSSH X连接会话劫持漏洞
漏洞分类 守护进程类
危险级别 中
影响平台 OpenSSH < 4.3p2
详细描述 在通过启用了X11转发的SSH登录时,sshd(8)没有正确地处理无法绑定到IPv4端口但成功绑定到IPv6端
口的情况。在这种情况下,使用X11的设备即使没有被sshd(8)绑定也会连接到IPv4端口,因此无法安全的进行转
发。 恶意用户可以在未使用的IPv4端口(如tcp 6010端口)上监听X11连接。当不知情的用户登录并创建X11转
发时,恶意用户可以捕获所有通过端口发送的X11数据,这可能泄露敏感信息或允许以使用X11转发用户的权限执
行命令。
修补建议 建议您采取以下措施进行修补以降低威胁: OpenSSH已经提供更新的下载地址: # OpenSSH
openssh-3.9p1-skip-used.patch http://cvs.fedora.redhat.com/viewcvs/rpms/openssh/devel/openssh-
3.9p1-
skip-used.patch?rev=1.1&view=markup
参考网址 * BUGTRAQ:20080325 rPSA-2008-0120-1 gnome-ssh-askpass openssh openssh-client openssh-
server * URL:http://www.securityfocus.com/archive/1/archive/1/490054/100/0/threaded
#################################################################################
二:漏洞修复
我的修复步骤!
通过以上的统计分析,我的第一想法就是升级OPENSSH 堵住安全漏洞,下面是我的升级方法步骤:
1
wget http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/openssh-5.8p2.tar.gz
现在高版本OPENSSH安装程序,现在最高版本是6.0,还是安全起见,不使用最新版本,我选择5.8P2下载安装。
2
tar xvf openssh-5.8p2.tar.gz #不解释
3
cd openssh-5.8p2 #不解释
4
./configure --prefix=/usr --sysconfdir=/etc/ssh
下载的是源码包要编译一下,注意我的编译路径,我是讲OPENSSH安装在,原来的路径下,这样后面安装完成后
就不用在从新copy SSHD服务到/etc/init.d/下了!,可以根据实际情况定制安装路径。
5
make #不解释
6
mv /etc/ssh/* /etc/sshbak/
由于我使安装在原路径下,所以我将就的配置文件挪了一下位置,不然make install 会报错!
7
make install #不解释
8
/etc/init.d/sshd restart
这里注意安全,如果你前面编译报错了,还强制安装,SSHD服务可能就起不来了,后果你懂得!
9
chkconfig --add sshd #不解释
10
chkconfig sshd on #不解释
如果你的sshd服务正常启动,那么恭喜你!
使用ssh -V 命令查看一下
[health@jumpserver-12 ~]$ ssh -V
OpenSSH_5.8p2, OpenSSL 1.0.0-fips 29 Mar 2010
已经成功升级至5.8版本!
三:故障排查
故障排查:
./configure 之后报错报错排查,
安装 gcc-4.5.1.tar.bz2 和 openssl-devel