安全研究

安全漏洞
FreeBSD telnetd守护程序远程代码执行漏洞

发布日期:2009-02-14
更新日期:2009-02-19

受影响系统:
FreeBSD FreeBSD 7.1
FreeBSD FreeBSD 7.0
描述:
BUGTRAQ  ID: 33777
CVE(CAN) ID: CVE-2009-0641

FreeBSD就是一种运行在Intel平台上、可以自由使用的开放源码Unix类系统。

telnet协议允许传送telnet通讯中的环境变量并分配给tcp连接的另一端。FreeBSD的telnet守护程序在执行/bin/login之前没有检查LD_* (如LD_PRELOAD)环境变量,因此攻击者可以在传送的环境变量中包含LD_PRELOAD标识和文件系统上带有恶意代码的预编译库值。在以用户id和组id 0(root)执行/bin/login时,就会通过telnet环境定义预加载远程连接所设置的库并执行。

能够向目标系统放置特制文件(通过合法的登录到系统或利用系统上的其他服务)可以以运行telnet守护程序(通常为root)用户的权限执行任意代码。

<*来源:Kingcope (kingcope@gmx.net
  
  链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-09:05.telnetd.asc
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

http://www.milw0rm.com/exploits/8055

建议:
厂商补丁:

FreeBSD
-------
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-09:05)以及相应补丁:
FreeBSD-SA-09:05:telnetd code execution vulnerability
链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-09:05.telnetd.asc

补丁下载:

1) 将有漏洞的系统升级到7-STABLE,或修改日期之后的RELENG_7_1或RELENG_7_0安全版本。

2) 为当前系统打补丁:

以下补丁确认可应用于FreeBSD 7.0和7.1系统。

a) 从以下位置下载相关补丁,并使用PGP工具验证附带的PGP签名。

# fetch http://security.FreeBSD.org/patches/SA-09:05/telnetd.patch
# fetch http://security.FreeBSD.org/patches/SA-09:05/telnetd.patch.asc

b) 以root执行以下命令:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/lib/bind
# make obj && make depend && make && make install
# cd /usr/src/usr.sbin/named
# make obj && make depend && make && make install
# /etc/rc.d/named restart

c) 安装并使用FreeBSD移植集的修复版本BIND。

浏览次数:3466
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障