dispatch-conf (included in Portage) and qpkg (included in Gentoolkit) are vulnerable to symlink attacks, potentially allowing a local user to overwrite arbitrary files with the rights of the user running the script.
Package | sys-apps/portage on all architectures |
---|---|
Affected versions | <= 2.0.51-r2 |
Unaffected versions | >= 2.0.51-r3 |
Package | app-portage/gentoolkit on all architectures |
---|---|
Affected versions | <= 0.2.0_pre10 |
Unaffected versions | >= 0.2.0_pre10-r1 revision >= 0.2.0_pre8-r1 |
Portage is Gentoo's package management tool. The dispatch-conf utility allows for easy rollback of configuration file changes and automatic updates of configurations files never modified by users. Gentoolkit is a collection of Gentoo specific administration scripts, one of which is the portage querying tool qpkg.
dispatch-conf and qpkg use predictable filenames for temporary files.
A local attacker could create symbolic links in the temporary files directory, pointing to a valid file somewhere on the filesystem. When an affected script is called, this would result in the file to be overwritten with the rights of the user running the dispatch-conf or qpkg, which could be the root user.
There is no known workaround at this time.
All Portage users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=sys-apps/portage-2.0.51-r3"
All Gentoolkit users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=app-portage/gentoolkit-0.2.0_pre8-r1"