GNU shtool, ocaml-mysql: Insecure temporary file creation — GLSA 200506-08

GNU shtool and ocaml-mysql are vulnerable to symlink attacks, potentially allowing a local user to overwrite arbitrary files.

Affected packages

dev-util/shtool on all architectures
Affected versions < 2.0.1-r2
Unaffected versions >= 2.0.1-r2
dev-ml/ocaml-mysql on all architectures
Affected versions < 1.0.3-r1
Unaffected versions >= 1.0.3-r1

Background

GNU shtool is a compilation of small shell scripts into a single shell tool. The ocaml-mysql package includes the GNU shtool code.

Description

Eric Romang has discovered that GNU shtool insecurely creates temporary files with predictable filenames (CAN-2005-1751). On closer inspection, Gentoo Security discovered that the shtool temporary file, once created, was being reused insecurely (CAN-2005-1759).

Impact

A local attacker could create symbolic links in the temporary files directory, pointing to a valid file somewhere on the filesystem. When a GNU shtool script is executed, this would result in the file being overwritten with the rights of the user running the script, which could be the root user.

Workaround

There is no known workaround at this time.

Resolution

All GNU shtool users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-util/shtool-2.0.1-r2"

All ocaml-mysql users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-ml/ocaml-mysql-1.0.3-r1"

References

Release date
June 11, 2005

Latest revision
June 11, 2005: 01

Severity
normal

Exploitable
local

Bugzilla entries