Portable OpenSSH: Dangerous AIX linker behavior (aixgcc.adv)

Shiva Persaud shivapd at us.ibm.com
Fri May 2 04:06:29 EST 2003

Hash: SHA1

Taken from IBM's AIX vendor response (http://lists.insecure.org/lists/bugtraq/2000/Mar/0184.html) to this issue when discussed in 2000:

The AIX version 4 linker has always documented the -blibpath option as a
mechanism for removing build environment dependencies from a runtime
environment. Applications that gain privilege should always use this
option to remove library search paths that may not/should not exist on
customer machines.

The use of relative library paths is also highly discouraged. While
they can be useful, the -blibpath option should also be used to not only
avoid these types of security issues, but to remove the possibility of
finding (or not finding at all) the wrong relative directory, since
relative paths at runtime will be based upon the current working

These and any other AIX security vulnerabilities can be reported to
security-alert at austin.ibm.com.
Version: GnuPG v1.2.1 (MingW32)


Shiva Persaud
AIX Security Developer

                      Damien Miller                                                                                                    
                      <djm at mindrot.org>        To:       BUGTRAQ at securityfocus.com, <openssh-unix-dev at mindrot.org>,                    
                                                <openssh-unix-announce at mindrot.org>                                                    
                      04/29/2003 10:39         cc:                                                                                     
                      PM                       Subject:  Portable OpenSSH: Dangerous AIX linker behavior (aixgcc.adv)                  

2. Description:

             The default behavior of the runtime linker on AIX is to search

             the current directory for dynamic libraries before searching
             system paths. This is done regardless of the executable's
             set[ug]id status.

             This behavior is insecure and extremely dangerous. It allows
             attacker to locally escalate their privilege level through the

             use of replacement libraries.

             Portable OpenSSH includes configure logic to override this
             broken behavior, but only for the native compiler. gcc uses a
             different command-line option (without changing the dangerous
             default behavior).

More information about the openssh-unix-dev mailing list