Portage: Untrusted search path local root vulnerability

ID GLSA-200810-02
Type gentoo
Reporter Gentoo Foundation
Modified 2008-10-09T00:00:00



Portage is Gentoo's package manager which is responsible for installing, compiling and updating all packages on the system through the Gentoo rsync tree.


The Gentoo Security Team discovered that several ebuilds, such as sys-apps/portage, net-mail/fetchmail or app-editors/leo execute Python code using "python -c", which includes the current working directory in Python's module search path. For several ebuild functions, Portage did not change the working directory from emerge's working directory.


A local attacker could place a specially crafted Python module in a directory (such as /tmp) and entice the root user to run commands such as "emerge sys-apps/portage" from that directory, resulting in the execution of arbitrary Python code with root privileges.


Do not run "emerge" from untrusted working directories.


All Portage users should upgrade to the latest version:

 # cd /root
 # emerge --sync
 # emerge --ask --oneshot --verbose ">=sys-apps/portage-"

NOTE: To upgrade to Portage using or prior, you must run emerge from a trusted working directory, such as "/root".