涉及程序: Darwin Streaming Server 4.1.2/QuickTime Streaming Server 4.1.1 描述: QuickTime/Darwin 流服务器存在多个缺陷 详细: Apple Darwin 和QuickTime 流管理服务器是一款WEB服务程序,允许管理员管理Darwin 和QuickTime 流服务器。在缺省情况下,这些服务以root权限监听1220/TCP端口。QuickTime/Darwin 流服务器存在多个缺陷,任何攻击者利用WEB浏览器能在目标操作系统上执行任意代码。此外,QuickTime/Darwin 流服务器还存在下列缺陷: ·路径泄露缺陷 ·查询任意目录列表缺陷 ·跨站脚本执行缺陷 ·存在缓冲溢出缺陷导致本地权限提升缺陷 1、任意代码执行缺陷: Darwin 移动管理服务器利用parse_xml.cgi程序鉴别用户。该CGI由PERL编写,并且没有通过验证就输入open()函数中,当输入的代码中嵌入管道 \`|\`字符时,open() 函数将执行嵌入的命令。最新版本的Darwin管理服务器添加一个功能以检测是否存在template文件(例如:-e函数)。但是,攻击者在管道和命令最后一个字节之间嵌入NULL (0x00)字符,就能通过文件检测,导致攻击者能获得系统的完全控制权,并执行嵌入的代码。 2、路径泄露缺陷: 攻击者使用NULL作为文件名参数,将导致CGI程序泄露Darwin/QuickTime 管理服务器安装物理路径的信息。 3、任意目录列表查询缺陷: 由于Parse_xml.cgi程序错误的调用了open()函数,导致产生缺陷。攻击者可以使用这个函数来打开UNIX操作系统下的目录列表,造成信息泄露。攻击者利用该缺陷还能查看WEB脚本的源代码信息。 4、跨站脚本执行缺陷: 由于Parse_xml.cgi程序没有充分的检测不存在文件名参数,导致产生缺陷。攻击者通过向Parse_xml.cgi程序提供一个不存在的文件名,导致脚本产生错误消息并记录错误信息。如果攻击者提供的参数中包含恶意代码,当管理员通过WEB浏览器查看日志文件时,将导致在浏览器上执行恶意的脚本代码。 5、MP3 Broadcasting 模块存在缓冲溢出缺陷: 流服务器的MP3 Broadcasting 模块存在缓冲溢出缺陷,攻击者通过提供一个文件名超过256字节的MP3文件,将引发该缺陷。流服务器缺省为以root权限运行,利用该缺陷,能导致本地/FTP用户提升权限。 攻击方法: 暂无有效攻击代码 解决方案: 厂商已公布该缺陷补丁,请用户及时下载并升级: Mac OS X 服务器10.2.3版更新: http://www.info.apple.com/kbnum/n70171 Mac OS X 服务器10.2版,10.2.1版,10.2.2版更新: http://www.info.apple.com/kbnum/n70172 附加信息: CAN-2003-0050 CAN-2003-0051 CAN-2003-0052 CAN-2003-0053 CAN-2003-0054 CAN-2003-0055