The gettext utility is vulnerable to symlink attacks, potentially allowing a local user to overwrite or change permissions on arbitrary files with the rights of the user running gettext, which could be the root user.
|Package||sys-devel/gettext on all architectures|
|Affected versions||< 0.14.1-r1|
|Unaffected versions||>= 0.14.1-r1, revision >= 0.12.1-r2|
gettext is a set of utilities for the GNU Translation Project which provides a set of tools and documentation to help produce multi-lingual messages in programs.
gettext insecurely creates temporary files in world-writeable directories with predictable names.
A local attacker could create symbolic links in the temporary files directory, pointing to a valid file somewhere on the filesystem. When gettext is called, this would result in file access with the rights of the user running the utility, which could be the root user.
There is no known workaround at this time.
All gettext users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=sys-devel/gettext-0.14.1-r1"