[Full-disclosure] DLL hijacking on Linux
mihai.dontu at gmail.com
Wed Aug 25 10:38:37 BST 2010
On Wednesday 25 August 2010 02:26:22 Tim Brown wrote:
> If you've seen the recent Microsoft advisory. I put together a nice post
> on a similar DLL hijacking issue that affects Linux (and other
> POSIX-alikes). You can read the full details on my blog (http://www.nth-
> dimension.org.uk/blog.php?id=87) but the key point is that an empty
> directory specification statement in LD_LIBRARY_PATH, PATH (and probably
> others) is equivalent to $CWD. That is to say that
> LD_LIBRARY_PATH=":/lib" is equivalent to LD_LIBRARY_PATH=".:/lib". It can
> occur when a script has
> LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/lib" or similar and LD_LIBRARY_PATH
> hasn't previously been defined. It's worth checking for this kind of
> thing in scripts that may be run via sudo/su when auditing hosts. I don't
> believe it's a vulnerability per se, but particular instances of broken
> scripts may well be.
"Note that the dynamic linker on most operating systems will remove variables
that can control dynamic linking from the environment of setuid executables,
including sudo. Depending on the operating system this may include _RLD*,
DYLD_*, LD_*, LDR_*, LIBPATH, SHLIB_PATH, and others. These type of variables
are removed from the environment before sudo even begins execution and, as
such, it is not possible for sudo to preserve them."
Full-Disclosure is hosted and sponsored by Secunia.