Gentoo Logo

GNU shtool, ocaml-mysql: Insecure temporary file creation


1.  Gentoo Linux Security Advisory

Version Information

Advisory Reference GLSA 200506-08 / GNU shtool
Release Date June 11, 2005
Latest Revision June 11, 2005: 01
Impact normal
Exploitable local
Package Vulnerable versions Unaffected versions Architecture(s)
dev-util/shtool < 2.0.1-r2 >= 2.0.1-r2 All supported architectures
dev-ml/ocaml-mysql < 1.0.3-r1 >= 1.0.3-r1 All supported architectures

Related bugreports: #93782, #93784


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

2.  Impact Information


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


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).


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.

3.  Resolution Information


There is no known workaround at this time.


All GNU shtool users should upgrade to the latest version:

Code Listing 3.1: Resolution

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

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

Code Listing 3.2: Resolution

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

4.  References


Page updated June 11, 2005

Summary: This is a Gentoo Linux Security Advisory

Security Team
Contact Address

Donate to support our development efforts.

Copyright 2001-2015 Gentoo Foundation, Inc. Questions, Comments? Contact us.