3571e53040
patches for easier mirroring, to eliminate a special copy, to make www.freebsd.org/security a full copy of security.freebsd.org and be eventually be the same. For now files are just sitting there. The symlinks are missing. Discussed on: www (repository location) Discussed with: simon (so)
143 lines
5.6 KiB
Text
143 lines
5.6 KiB
Text
-----BEGIN PGP SIGNED MESSAGE-----
|
|
Hash: SHA1
|
|
|
|
=============================================================================
|
|
FreeBSD-SA-06:01.texindex Security Advisory
|
|
The FreeBSD Project
|
|
|
|
Topic: Texindex temporary file privilege escalation
|
|
|
|
Category: contrib
|
|
Module: texinfo
|
|
Announced: 2006-01-11
|
|
Credits: Frank Lichtenheld
|
|
Affects: All FreeBSD releases.
|
|
Corrected: 2006-01-11 08:02:16 UTC (RELENG_6, 6.0-STABLE)
|
|
2006-01-11 08:03:18 UTC (RELENG_6_0, 6.0-RELEASE-p2)
|
|
2006-01-11 08:03:55 UTC (RELENG_5, 5.4-STABLE)
|
|
2006-01-11 08:04:33 UTC (RELENG_5_4, 5.4-RELEASE-p9)
|
|
2006-01-11 08:05:54 UTC (RELENG_5_3, 5.3-RELEASE-p24)
|
|
2006-01-11 08:06:47 UTC (RELENG_4, 4.11-STABLE)
|
|
2006-01-11 08:07:18 UTC (RELENG_4_11, 4.11-RELEASE-p14)
|
|
2006-01-11 08:08:08 UTC (RELENG_4_10, 4.10-RELEASE-p20)
|
|
CVE Name: CAN-2005-3011
|
|
|
|
For general information regarding FreeBSD Security Advisories,
|
|
including descriptions of the fields above, security branches, and the
|
|
following sections, please visit
|
|
<URL:http://www.freebsd.org/security/>.
|
|
|
|
0. Revision History.
|
|
|
|
v1.0 2006-01-11 Initial release.
|
|
v1.1 2006-01-11 Corrected instructions for rebuilding texindex.
|
|
|
|
I. Background
|
|
|
|
TeX is a document typesetting system which is popular in the mathematics,
|
|
physics, and computer science realms because of its ability to typeset
|
|
complex mathematical formulas. texindex(1) is a utility which is often
|
|
used to generate a sorted index of a TeX file.
|
|
|
|
II. Problem Description
|
|
|
|
The "sort_offline" function used by texindex(1) employs the "maketempname"
|
|
function, which produces predictable file names and fails to validate that
|
|
the paths do not exist.
|
|
|
|
III. Impact
|
|
|
|
These predictable temporary file names are problematic because they
|
|
allow an attacker to take advantage of a race condition in order to
|
|
execute a symlink attack, which could enable them to overwrite files
|
|
on the system in the context of the user running the texindex(1) utility.
|
|
|
|
IV. Workaround
|
|
|
|
No workaround is available, but the problematic code is only executed
|
|
if the input file being processed is 500kB or more in length; as a
|
|
result, users working with documents of less than several hundred pages
|
|
are very unlikely to be affected.
|
|
|
|
V. Solution
|
|
|
|
Perform one of the following:
|
|
|
|
1) Upgrade your vulnerable system to 4-STABLE, 5-STABLE, or 6-STABLE,
|
|
or to the RELENG_6_0, RELENG_5_4, RELENG_5_3, RELENG_4_11, or
|
|
RELENG_4_10 security branch dated after the correction date.
|
|
|
|
2) To patch your present system:
|
|
|
|
The following patches have been verified to apply to FreeBSD 4.10,
|
|
4.11, 5.3, 5.4, and 6.0 systems.
|
|
|
|
a) Download the relevant patch from the location below, and verify the
|
|
detached PGP signature using your PGP utility.
|
|
|
|
[FreeBSD 4.x and 5.x]
|
|
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:01/texindex5x.patch
|
|
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:01/texindex5x.patch.asc
|
|
|
|
[FreeBSD 6.x]
|
|
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:01/texindex.patch
|
|
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:01/texindex.patch.asc
|
|
|
|
b) Execute the following commands as root:
|
|
|
|
# cd /usr/src
|
|
# patch < /path/to/patch
|
|
# cd /usr/src/gnu/usr.bin/texinfo/libtxi
|
|
# make obj && make depend && make
|
|
# cd /usr/src/gnu/usr.bin/texinfo/texindex
|
|
# make obj && make depend && make && make install
|
|
|
|
VI. Correction details
|
|
|
|
The following list contains the revision numbers of each file that was
|
|
corrected in FreeBSD.
|
|
|
|
Branch Revision
|
|
Path
|
|
- -------------------------------------------------------------------------
|
|
RELENG_4
|
|
contrib/texinfo/util/texindex.c 1.1.1.3.2.4
|
|
RELENG_4_11
|
|
src/UPDATING 1.73.2.91.2.15
|
|
src/sys/conf/newvers.sh 1.44.2.39.2.18
|
|
contrib/texinfo/util/texindex.c 1.1.1.3.2.3.6.1
|
|
RELENG_4_10
|
|
src/UPDATING 1.73.2.90.2.21
|
|
src/sys/conf/newvers.sh 1.44.2.34.2.22
|
|
contrib/texinfo/util/texindex.c 1.1.1.3.2.3.4.1
|
|
RELENG_5
|
|
contrib/texinfo/util/texindex.c 1.1.1.7.4.1
|
|
RELENG_5_4
|
|
src/UPDATING 1.342.2.24.2.18
|
|
src/sys/conf/newvers.sh 1.62.2.18.2.14
|
|
contrib/texinfo/util/texindex.c 1.1.1.7.8.1
|
|
RELENG_5_3
|
|
src/UPDATING 1.342.2.13.2.27
|
|
src/sys/conf/newvers.sh 1.62.2.15.2.29
|
|
contrib/texinfo/util/texindex.c 1.1.1.7.6.1
|
|
RELENG_6
|
|
contrib/texinfo/util/texindex.c 1.1.1.8.2.1
|
|
RELENG_6_0
|
|
src/UPDATING 1.416.2.3.2.7
|
|
src/sys/conf/newvers.sh 1.69.2.8.2.3
|
|
contrib/texinfo/util/texindex.c 1.1.1.8.4.1
|
|
- -------------------------------------------------------------------------
|
|
|
|
VII. References
|
|
|
|
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-3011
|
|
|
|
The latest revision of this advisory is available at
|
|
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-06:01.texindex.asc
|
|
-----BEGIN PGP SIGNATURE-----
|
|
Version: GnuPG v1.4.2 (FreeBSD)
|
|
|
|
iD8DBQFDxNZZFdaIBMps37IRAkQ5AKCayEHnnoglWAyY2wA22huF9xmIxgCdFwpn
|
|
ePrdykp4BUjKqAMYCUupMK8=
|
|
=q74p
|
|
-----END PGP SIGNATURE-----
|