2010/12/02
tags: linux vmware vmware-mount vulnerability CVE-2010-4296
Attack on the shared library loading mechanism in setuid root
vmware-mount
utility enables local attacker to gain root
privilege. Affects VMWare Workstation 6.5, 7 and VMWare Fusion
2.0, 3.0.
vmware-mount
is a setuid root utility shipped with some number of
VMware products. It reads a user configuration file ~/.vmware
. In
that file one can configure a libdir
parameter from which shared objects
are loaded (dlopen()
ed). In particular vmware-mount
tries to load the
OpenSSL libraries (libssl.so
, libcrypto.so
) by
first searching the libdir
directory and then calling functions defined
in these libraries (eg SSL_library_init()
). Privileges have not been
completely dropped at this point (saved UID is zero) so it is trivial
to generate spoof shared objects from the list of exported function
symbols in the legitimate libraries. Running vmware-mount
with
any two (even invalid) arguments is enough to then gain root.