Xsun是Solaris平台上的Xwindow 服务器(for X11)。它被安装在/usr/openwin/bin/下。在SPARC平台下,它被设置了setgid root属性,在x86平台下,它被设置了setuid root属性。 Xsun支持一个命令行参数:\"-co\",用来指定颜色数据库文件。由于没有对用户输入的文件名长度进行检查,攻击者可能引发一个堆溢出。小心地构造溢出数据,攻击者可以以root用户或者权限执行任意代码。 如果攻击者为\"-co\"参数提供一个超长的参数(例如,超过6000字节长),就可能溢出一个动态分配的缓冲区,通过覆盖相邻的动态内存块边界数据结构,就可能利用malloc()/free()实现的一些特性来重写任意内存地址,例如保存的返回地址、函数指针等等。 在SPARC平台下,攻击者可能获取root组权限。在x86平台下,攻击者可能获取root用户权限。
Xsun是Solaris平台上的Xwindow 服务器(for X11)。它被安装在/usr/openwin/bin/下。在SPARC平台下,它被设置了setgid root属性,在x86平台下,它被设置了setuid root属性。 Xsun支持一个命令行参数:\"-co\",用来指定颜色数据库文件。由于没有对用户输入的文件名长度进行检查,攻击者可能引发一个堆溢出。小心地构造溢出数据,攻击者可以以root用户或者权限执行任意代码。 如果攻击者为\"-co\"参数提供一个超长的参数(例如,超过6000字节长),就可能溢出一个动态分配的缓冲区,通过覆盖相邻的动态内存块边界数据结构,就可能利用malloc()/free()实现的一些特性来重写任意内存地址,例如保存的返回地址、函数指针等等。 在SPARC平台下,攻击者可能获取root组权限。在x86平台下,攻击者可能获取root用户权限。