iDefense Security Advisory 02.24.06 - Local exploitation of an access validation error in SCO Unixware allows attackers to gain root privileges. The vulnerability specifically exists due to a failure to check permissions on traced executables. The ptrace() system call provides an interface for debugging other processes on the system. SCO Unixware's implementation of the ptrace system call fails to check for setuid permissions on binaries before attaching to the process. This results in the complete control of memory and execution for the traced process with root privileges. Attackers can inject data into the running setuid process and execute arbitrary code with root permissions. iDefense has confirmed the existence of this vulnerability in SCO Unixware versions 7.1.3 and 7.1.4. All previous versions of SCO Unixware are suspected to be vulnerable.
6eaaa424b75ac17dcb4ec8cdd9b4609599cfbdd9bbe9aea98a0e116202a59614
SCO Unixware Setuid ptrace Local Privilege Escalation Vulnerability
iDefense Security Advisory 02.24.06
http://www.idefense.com/intelligence/vulnerabilities/display.php?id=395
February 24, 2006
I. BACKGROUND
SCO Unixware is a Unix operating system that runs on many OEM platforms.
More information about the product is available from:
http://www.caldera.com/products/unixware714/
II. DESCRIPTION
Local exploitation of an access validation error in SCO Unixware allows
attackers to gain root privileges.
The vulnerability specifically exists due to a failure to check
permissions on traced executables. The ptrace() system call provides an
interface for debugging other processes on the system. SCO Unixware's
implementation of the ptrace system call fails to check for setuid
permissions on binaries before attaching to the process. This results
in the complete control of memory and execution for the traced process
with root privileges. Attackers can inject data into the running setuid
process and execute arbitrary code with root permissions.
III. ANALYSIS
Exploitation of this vulnerability is trivial. Simply placing shellcode
in the environment and changing the instruction pointer via ptrace() is
enough to elevate privileges.
IV. DETECTION
iDefense has confirmed the existence of this vulnerability in SCO
Unixware versions 7.1.3 and 7.1.4. All previous versions of SCO Unixware
are suspected to be vulnerable.
V. WORKAROUND
It is not possible to reduce the impact of this vulnerability other
than to restrict access to the affected systems.
VI. VENDOR RESPONSE
The vendor has released the following advisory to address this issue:
ftp://ftp.sco.com/pub/updates/UnixWare/SCOSA-2006.9/SCOSA-2006.9.txt
VII. CVE INFORMATION
The Common Vulnerabilities and Exposures (CVE) project has assigned the
name CAN-2005-2934 to this issue. This is a candidate for inclusion in
the CVE list (http://cve.mitre.org), which standardizes names for
security problems.
VIII. DISCLOSURE TIMELINE
09/15/2005 Initial vendor notification
10/13/2005 Initial vendor response
02/24/2006 Public disclosure
IX. CREDIT
The discoverer of this vulnerability wishes to remain anonymous.
Get paid for vulnerability research
http://www.iDefense.com/poi/teams/vcp.jsp
Free tools, research and upcoming events
http://labs.iDefense.com
X. LEGAL NOTICES
Copyright © 2006 iDefense, Inc.
Permission is granted for the redistribution of this alert
electronically. It may not be edited in any way without the express
written consent of iDefense. If you wish to reprint the whole or any
part of this alert in any other medium other than electronically, please
email customerservice@iDefense.com for permission.
Disclaimer: The information in the advisory is believed to be accurate
at the time of publishing based on currently available information. Use
of the information constitutes acceptance for use in an AS IS condition.
There are no warranties with regard to this information. Neither the
author nor the publisher accepts any liability for any direct, indirect,
or consequential loss or damage arising from use of, or reliance on,
this information.