首页 -> 安全研究
安全研究
安全漏洞
多家厂商rpc.ypupdated远程可执行任意命令漏洞
发布日期:1995-12-19
更新日期:2008-03-24
受影响系统:
Multiple Vendor rpc.ypupdated描述:
- HP HP-UX 10.20
- HP HP-UX 10.10
- HP HP-UX 10.1
- IBM AIX 4.1
- IBM AIX 3.2
- SGI IRIX 6.0.1XFS
- SGI IRIX 6.0.1
- SGI IRIX 6.0
- SGI IRIX 5.3XFS
- SGI IRIX 5.3
- SGI IRIX 5.2
- SGI IRIX 5.1.1
- SGI IRIX 5.1
- SGI IRIX 5.0.1
- SGI IRIX 5.0
- SGI IRIX 4.0.5IPR
- SGI IRIX 4.0.5H
- SGI IRIX 4.0.5G
- SGI IRIX 4.0.5F
- SGI IRIX 4.0.5E
- SGI IRIX 4.0.5D
- SGI IRIX 4.0.5A
- SGI IRIX 4.0.5(IOP)
- SGI IRIX 4.0.5
- SGI IRIX 4.0.4T
- SGI IRIX 4.0.4B
- SGI IRIX 4.0.4
- SGI IRIX 4.0.3
- SGI IRIX 4.0.2
- SGI IRIX 4.0.1T
- SGI IRIX 4.0.1
- SGI IRIX 4.0
- SGI IRIX 3.3.3
- SGI IRIX 3.3.2
- SGI IRIX 3.3.1
- SGI IRIX 3.3
- SGI IRIX 3.2
- Sun SunOS 4.1PSR_A
- Sun SunOS 4.1.4-JL
- Sun SunOS 4.1.4
- Sun SunOS 4.1.3_U1
- Sun SunOS 4.1.3c
- Sun SunOS 4.1.3
- Sun SunOS 4.1.2
- Sun SunOS 4.1.1
- Sun SunOS 4.1
BUGTRAQ ID: 1749
CVE(CAN) ID: CVE-1999-0208
rpc.ypupdated RPC守护进程是Network Information Service (NIS)的一个组件,它使NIS客户端更新自己的NIS数据库。
rpc.ypupdated守护进程实现上存在输入验证漏洞,远程攻击者可能利用此漏洞以root用户的权限在主机上执行任意命令。
当守护进程收到一个Yello Pages的更新请求,它会调用Bource Shell执行'make'命令来重新计算数据库,由于没有对用户输入进行充分过滤和检查,远程攻击者可以在输入中插入某些Shell转义符来执行攻击者指定的命令。
<*来源:Josh D. (mcpheea@cadvision.com)
链接:http://secunia.com/advisories/29454/
ftp://patches.sgi.com/support/free/security/advisories/19951201-01-P
http://www.cert.org/advisories/CA-1995-17.html
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
建议:
厂商补丁:
SGI
---
SGI已经为此发布了一个安全公告(19951201-01-P)以及修补建议:
19951201-01-P:Avalon Security Research - rpc.ypupdate slammer exploit CERT CA-95:17 rpc.ypupdated Vulnerability
链接:ftp://patches.sgi.com/support/free/security/advisories/19951201-01-P
修补建议:
1. 变成root用户
% /bin/su
Password:
#
2. 查看机器上是否运行了ypupdated服务,如果没有返回东西,则可能ypupdated处于关闭状态,但为了完全起见还是建议执行接下来的操作。
# rpcinfo -p localhost | grep ypupdate
100028 tcp 206 ypupdated
#
3. 编辑/usr/etc/inetd.conf (3.x and 4.x)或/etc/inetd.conf (5.0.x, 5.1.x, and 5.2),在有ypupdate那行前面加个"#"字符将其注释掉。
# vi /usr/etc/inetd.conf
找到如下这行:
ypupdated/1 stream rpc/tcp wait root /usr/etc/rpc.ypupdated ypupdated
在其前面加"#":
#ypupdated/1 stream rpc/tcp wait root /usr/etc/rpc.ypupdated ypupdated
存盘退出。
4.重启inetd
# /etc/killall -HUP inetd
5. 验证ypupdate已经不再运行了
# rpcinfo -p localhost | grep ypupdate
#
6. 返回普通用户状态
# exit
$
浏览次数:7481
严重程度:0(网友投票)
绿盟科技给您安全的保障