CVE:CVE-2003-0609
CNNVD:CNNVD-200308-140
Solaris是一款由Sun Microsystems公司开发和维护的商业性质UNIX操作系统。
Solaris包含的实时连接器在处理LD_PRELOAD值时缺少正确的边界缓冲区检查，本地攻击者可以利用这个漏洞以root用户权限在系统上执行任意指令。
Solaris包含的实时连接器ld.so.1(1)，处理动态可执行文件和共享对象。一般的Solaris安装下几乎所有SUID/SGID程序动态连接方式运行。环境变量LD_PRELOAD用于ld.so.1在实时连接过程中装载指定库，如果setuid或者setgid程序被装载，此变量值会进行安全检查而防止恶意用户指定的库是否被连接。不过实时连接器没有对LD_PRELOAD变量值进行充分的边界检查。如果攻击者提供的LD_PRELOAD变量值以"/"符号开头和结尾，并其中包含1200字符，就可以导致触发缓冲区溢出，精心构建提交数据可能以root用户权限在系统上执行任意指令。
此漏洞只影响安装了如下特定补丁的系统：
SPARC平台
Solaris 2.6 使用了107733-10而没有采用107733-11补丁
Solaris 7 采用了106950-14到106950-22补丁而没有采用106950-23
Solaris 8 采用了109147-07到109147-24补丁而没有采用109147-25
Solaris 9 没有采用112963-09补丁
x86平台
Solaris 2.6 使用了107733-10而没有采用107733-11补丁
Solaris 7 采用了106950-14到106950-22补丁而没有采用106950-23
Solaris 8 采用了109147-07到109147-24补丁而没有采用109147-25
Solaris 9 没有采用112963-09补丁
solution:Upgrade sun solaris to a higher version than 2.6,7.0,8.0,9.0,and avoid the version 2.6,7.0,8.0,9.0; Upgrade sun sunos to a higher version than -,5.7,5.8,and avoid the version 5.7,5.8