OpenSSH缓冲区管理操作远程溢出漏洞

漏洞信息详情

OpenSSH缓冲区管理操作远程溢出漏洞

漏洞简介

OpenSSH是一种开放源码的SSH协议的实现,初始版本用于OpenBSD平台,现在已经被移植到多种Unix/Linux类操作系统下。
3.7版本之前的OpenSSH包含一个缓冲区管理错误,远程攻击者可能利用这个漏洞进行拒绝服务或者可能以OpenSSH进程权限在系统上执行任意指令。
当OpenSSH接收到一个长度超过已分配缓冲区大小的数据包时会试图重新分配一块大的内存,这时记录当前缓冲区大小的变量值会相应增加,新长度值会被检查是否符合要求,如果检查失败会调用fatal()来清理并退出,在某些情况下,执行清理工作的代码可能会按新缓冲区长度的大小去释放那个实际并没有扩大的缓冲区,结果导致缓冲区外的数据被重写为NULL值。这样可能造成拒绝服务攻击或执行任意指令。

漏洞公告

临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:

* 在边界或者主机防火墙上过滤不可信任IP对SSH服务的访问请求,通常是22/TCP端口。

* 使用权限分隔来使影响最小化

运行OpenSSH 3.2或更高版本的系统管理员可以通过在sshd配置文件中使用”UsePrivilegeSeparation”配置选项来降低这个漏洞的影响。一般来讲,可以通过创建privsep用户,设置受限制的(chroot)环境,然后向/etc/ssh/sshd_config中添加以下命令行来实现上述操作:

UsePrivilegeSeparation yes

这个临时解决方案不能防止攻击者利用这个漏洞,但由于权限分隔机制,攻击者会被局限在仅有受限权限的受限制的chroot环境中。这个临时解决方案不能防止漏洞导致拒绝服务。不是所有的操作系统厂商都执行了权限分隔代码,在某些操作系统中代码还可能限制OpenSSH的功能。
厂商补丁:
Debian
——
Debian已经为此发布了一个安全公告(DSA-382-1)以及相应补丁:

DSA-382-1:OpenSSH buffer management fix

链接:http://www.debian.org/security/2002/dsa-382” target=”_blank”>
http://www.debian.org/security/2002/dsa-382

补丁下载:

Source archives:

http://security.debian.org/pool/updates/main/o/openssh/openssh_3.4p1-1.1.diff.gz” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/openssh_3.4p1-1.1.diff.gz

Size/MD5 checksum: 36506 9defe00f0297a22395b2f17e34bae852

http://security.debian.org/pool/updates/main/o/openssh/openssh_3.4p1-1.1.dsc” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/openssh_3.4p1-1.1.dsc

Size/MD5 checksum: 1338 8fc3790171311bcf8fe202edf884e000

alpha architecture (DEC Alpha)

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_alpha.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_alpha.deb

Size/MD5 checksum: 849796 9125f955f4649ee1d8ec942b051f67e1

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_alpha.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_alpha.deb

Size/MD5 checksum: 35724 93863e66e77fc7c6cca09636e01fce96

arm architecture (ARM)

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_arm.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_arm.deb

Size/MD5 checksum: 658012 21675964771355a0ae456fc5927245b2

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_arm.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_arm.deb

Size/MD5 checksum: 34958 6abebe99d34e7c4a1bbcddcffe50ca6e

hppa architecture (HP PA RISC)

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_hppa.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_hppa.deb

Size/MD5 checksum: 35318 b3bc13ec29b99687e8165a8250695e3c

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_hppa.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_hppa.deb

Size/MD5 checksum: 755464 100a06cde2e02486502fef1283777102

i386 architecture (Intel ia32)

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_i386.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_i386.deb

Size/MD5 checksum: 642460 ee27cd953e87b32e6b1c1b09fcdb7aa2

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_i386.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_i386.deb

Size/MD5 checksum: 35236 caf803cd286646300d68576724cf236a

ia64 architecture (Intel ia64)

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_ia64.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_ia64.deb

Size/MD5 checksum: 36728 90006b98e1a29a9e631ee335f9596262

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_ia64.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_ia64.deb

Size/MD5 checksum: 1002494 9bf4331e06a35a025ee8617fece7fa4c

mips architecture (MIPS (Big Endian))

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_mips.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_mips.deb

Size/MD5 checksum: 35246 866ebeefc0d64307f78c0aa49f2eb470

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_mips.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_mips.deb

Size/MD5 checksum: 729782 67b72adc6041f24eeeb0d35cb37a27e6

mipsel architecture (MIPS (Little Endian))

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_mipsel.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_mipsel.deb

Size/MD5 checksum: 35208 bf5051b7e2f41ce571f5161578db62f9

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_mipsel.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_mipsel.deb

Size/MD5 checksum: 727196 96122a4ac373f66b2218ec4febecff27

m68k architecture (Motorola Mc680x0)

http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_m68k.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh-askpass-gnome_3.4p1-1.1_m68k.deb

Size/MD5 checksum: 35166 2f6b556a3c3a18ccf31933976ef48186

http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_m68k.deb” target=”_blank”>
http://security.debian.org/pool/updates/main/o/openssh/ssh_3.4p1-1.1_m68k.deb

Siz

补丁安装方法:

1. 手工安装补丁包:

首先,使用下面的命令来下载补丁软件:

# wget url (url是补丁下载链接地址)

然后,使用下面的命令来安装补丁:

# dpkg -i file.deb (file是相应的补丁名)

2. 使用apt-get自动安装补丁包:

首先,使用下面的命令更新内部数据库:

# apt-get update

然后,使用下面的命令安装更新软件包:

# apt-get upgrade
FreeBSD
——-
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-03:12)以及相应补丁:

FreeBSD-SA-03:12:OpenSSH buffer management error

链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:12.openssh.asc

已确认以下补丁已被应用到更正日期之前的FreeBSD 4.x和FreeBSD 5.x系统中。

从以下位置下载合适的补丁及相关的PGP签名,并使用PGP工具验证签名。

[FreeBSD 4.3到4.5]

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:12/buffer45.patch

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:12/buffer45.patch.asc

[FreeBSD 4.6 and later, FreeBSD 5.0 and later]

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:12/buffer46.patch

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:12/buffer46.patch.asc

以root执行以下命令:

# cd /usr/src

# patch < /path/to/sshd.patch

# cd /usr/src/secure/lib/libssh

# make depend && make all install

# cd /usr/src/secure/usr.sbin/sshd

# make depend && make all install

# cd /usr/src/secure/usr.bin/ssh

# make depend && make all install

确认在升级后重启`sshd’。

# kill `cat /var/run/sshd.pid`

# (. /etc/rc.conf && ${sshd_program:-/usr/bin/sshd} ${sshd_flags})

[对于OpenSSH port]

执行以下步骤之一:

1) 升级你的全部port集合并重建OpenSSH port。

2) 卸载旧的软件包并安装以下目录中的新软件包:

[i386]

ftp://ftp.FreeBSD.org/pu


参考网址

来源:US-CERT Vulnerability Note: VU#333628
名称: VU#333628
链接:http://www.kb.cert.org/vuls/id/333628

来源:CERT/CC Advisory: CA-2003-24
名称: CA-2003-24
链接:http://www.cert.org/advisories/CA-2003-24.html

来源: BUGTRAQ
名称: 20030916 OpenSSH Buffer Management Bug Advisory
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106373247528528&w=2

来源: XF
名称: openssh-packet-bo(13191)
链接:http://xforce.iss.net/xforce/xfdb/13191

来源: REDHAT
名称: RHSA-2003:280
链接:http://www.redhat.com/support/errata/RHSA-2003-280.html

来源: www.openssh.com
链接:http://www.openssh.com/txt/buffer.adv

来源: DEBIAN
名称: DSA-383
链接:http://www.debian.org/security/2003/dsa-383

来源: DEBIAN
名称: DSA-382
链接:http://www.debian.org/security/2003/dsa-382

来源: SUNALERT
名称: 1000620
链接:http://sunsolve.sun.com/search/document.do?assetkey=1-77-1000620.1-1

来源: BUGTRAQ
名称: 20030917 [OpenPKG-SA-2003.040] OpenPKG Security Advisory (openssh)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106381409220492&w=2

来源: TRUSTIX
名称: 2003-0033
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106381396120332&w=2

来源: BUGTRAQ
名称: 20030916 [slackware-security] OpenSSH Security Advisory (SSA:2003-259-01)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106374466212309&w=2

来源: REDHAT
名称: RHSA-2003:279
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106373546332230&w=2

来源: BUGTRAQ
名称: 20030916 OpenSSH Buffer Management Bug Advisory
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106373247528528&w=2

来源: FULLDISC
名称: 20030916 The lowdown on SSH vulnerability
链接:http://lists.grok.org.uk/pipermail/full-disclosure/2003-September/010146.html

来源: FULLDISC
名称: 20030915 openssh remote exploit
链接:http://lists.grok.org.uk/pipermail/full-disclosure/2003-September/010135.html

来源: FULLDISC
名称: 20030915 new ssh exploit?
链接:http://lists.grok.org.uk/pipermail/full-disclosure/2003-September/010103.html

来源: MANDRAKE
名称: MDKSA-2003:090
链接:http://www.mandriva.com/security/advisories?name=MDKSA-2003:090

来源: US Government Resource: oval:org.mitre.oval:def:447
名称: oval:org.mitre.oval:def:447
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:447

来源: US Government Resource: oval:org.mitre.oval:def:2719
名称: oval:org.mitre.oval:def:2719
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:2719

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享