[LWN Logo]
[Timeline]
Date:         Mon, 14 Aug 2000 16:12:28 -0700
From: FreeBSD Security Advisories <security-advisories@FREEBSD.ORG>
Subject:      FreeBSD Ports Security Advisory: FreeBSD-SA-00:38.zope
To: BUGTRAQ@SECURITYFOCUS.COM

-----BEGIN PGP SIGNED MESSAGE-----

=============================================================================
FreeBSD-SA-00:38                                           Security Advisory
                                                                FreeBSD, Inc.

Topic:          zope port allows remote modification of DTML documents

Category:       ports
Module:         zope
Announced:      2000-08-14
Credits:        Unknown
Affects:        Ports collection prior to the correction date.
Corrected:      2000-08-05
Vendor status:  Patch released
FreeBSD only:   NO

I.   Background

zope is an object-based dynamic web application platform.

II.  Problem Description

To quote the vendor advisory about this problem:

> The issue involves an inadequately protected method in one of
> the base classes in the DocumentTemplate package that could allow
> the contents of DTMLDocuments or DTMLMethods to be changed
> remotely or through DTML code without forcing proper user
> authorization.

The zope port is not installed by default, nor is it "part of FreeBSD"
as such: it is part of the FreeBSD ports collection, which contains
nearly 3700 third-party applications in a ready-to-install format. The
ports collections shipped with FreeBSD 3.5 contains this problem, but
FreeBSD 4.1 did not ship with the proftpd package (and the port was
disabled to prevent building) because the vulnerability was known but
not yet fixed.

FreeBSD makes no claim about the security of these third-party
applications, although an effort is underway to provide a security
audit of the most security-critical ports.

III. Impact

Remote users can modify DTML documents without authorization.

If you have not chosen to install the zope port/package, then your
system is not vulnerable to this problem.

IV.  Workaround

Deinstall the zope port/package, if you you have installed it.

V.   Solution

One of the following:

1) Upgrade your entire ports collection and rebuild the zope port.

2) Deinstall the old package and install a new package dated after the
correction date, obtained from:

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/www/zope-2.2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/www/zope-2.2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/www/zope-2.2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/www/zope-2.2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/www/zope-2.2.0.tgz

NOTE: It may be several days before updated packages are available.

3) download a new port skeleton for the zope port from:

http://www.freebsd.org/ports/

and use it to rebuild the port.

4) Use the portcheckout utility to automate option (3) above. The
portcheckout port is available in /usr/ports/devel/portcheckout or the
package can be obtained from:

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/devel/portcheckout-2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/devel/portcheckout-2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-stable/devel/portcheckout-2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/devel/portcheckout-2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-5-current/devel/portcheckout-2.0.tgz

-----BEGIN PGP SIGNATURE-----
Version: 2.6.2

iQCVAwUBOZh1lFUuHi5z0oilAQFsowP+JE+R5hHUpY0pDfNl9Dd/ai354XJh8PYG
X5DlmdMTMiByXkR0KMZBMB9SuRljuqBsknc8L3KB8UIyMUccnN0IhsFqZ2WEYiY4
EAgS7I5EPTf/4y6g81Vt4g+s3l2XXu845kOv92hwJxFgUMINVXrIduJpdICAgcpr
rcw+4BM/Www=
=AoKX
-----END PGP SIGNATURE-----