Public Vulnerability Reports

Buffer Overflow Vulnerability in Abuse

11.01.02

BACKGROUND

Abuse is a popular side-scrolling video game. More information can be found at http://jonathanclark.com/ and http://www.crack.com/.

DESCRIPTION

Exploitation of a locally exploitable parsing error in Abuse's "-net" command line option could allow attackers to gain root privileges on a targeted system. By supplying an overly long argument, the instruction pointer is overwritten, thereby allowing an attacker to seize
control of the executable. In a default abuse installation in Debian Linux, both abuse.console and abuse.x11R6 can be used in exploitation; both files are set group id games, and abuse.console is set user id root.

ANALYSIS

Exploitation allows a local attacker to gain super-user status and full control over the targeted system. Affected users should implement either of the two workarounds listed below.

DETECTION

Abuse 2.00, which is packaged and distributed with the x86 architecture of Debian Linux 3.0r0, is vulnerable. Other platforms and architectures may be vulnerable as well. To determine if a specific Abuse implementation is vulnerable, launch it with the following
command line:

$ /usr/lib/games/abuse/abuse.console -net 'perl -e 'print "A"x500''

If the application crashes with a "Segmentation fault", it is vulnerable.

WORKAROUND

Customers should consider implementing one of the two following workarounds:

1. Remove Abuse by issuing the following command:

# apt-get remove abuse

2. Remove the setuid bit from the binary by executing the following command:

# chmod -s /usr/lib/games/abuse/abuse.*

VENDOR RESPONSE

"Abuse has a number of other vulnerabilities and should never be installed on a multi-user system where security is a concern," said Jonathan Clark.

"Abuse allows alternate Lisp script files to be executed at startup via command line parameters.  Some script functions can execute abritrary commands or cause external files to modified."

CVE INFORMATION

The Mitre Corp.'s Common Vulnerabilities and Exposures (CVE) Project assigned the identification number CAN-2002-1250 to this issue.

DISCLOSURE TIMELINE

10/15/2002 Issue disclosed to iDEFENSE
10/31/2002 Author notified
10/31/2002 iDEFENSE clients notified
11/01/2002 Response received from Jonathan Clark (jc@jonathanclark.com)
11/01/2002 Public disclosure

CREDIT

Texonet (http://www.texonet.com) discovered this vulnerability.