AUSCERT External Security Bulletin Redistribution
                      ESB-2000.039 -- FreeBSD-SA-00:05
              MySQL allows bypassing of password authentication
                                07 March 2000


FreeBSD have released the following advisory describing a vulnerability
in the MySQL package which is part of the FreeBSD ports collection and also
a commonly installed database package.

This vulnerability may give an intruder the ability to modify, add or delete
records in MySQL databases.

- --------------------------BEGIN INCLUDED TEXT--------------------


FreeBSD-SA-00:05                                           Security Advisory
                                                                FreeBSD, Inc.

Topic:          MySQL allows bypassing of password authentication

Category:       ports
Module:         mysql322-server
Announced:      2000-02-28
Affects:        Ports collection before the correction date.
Corrected:      2000-02-15
FreeBSD only:   NO

I.   Background

MySQL is a popular SQL database client/server distributed as part of the
FreeBSD ports collection.

II.  Problem Description

The MySQL database server (versions prior to 3.22.32) has a flaw in the
password authentication mechanism which allows anyone who can connect to
the server to access databases without requiring a password, given a valid
username on the database - in other words, the normal password
authentication mechanism can be completely bypassed.

MySQL is not installed by default, nor is it "part of FreeBSD" as such: it
is part of the FreeBSD ports collection, which contains over 3100
third-party applications in a ready-to-install format.

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

The successful attacker will have all of the access rights of that
database user and may be able to read, add or modify records.

If you have not chosen to install the mysql322-server port/package, then
your system is not vulnerable.

IV.  Workaround

Use appropriate access-control lists to limit which hosts can initiate
connections to MySQL databases - see:


for more information. If unrestricted remote access to the database is not
required, consider using ipfw(8) or ipf(8), or your network perimeter
firewall, to prevent remote access to the database from untrusted machines
(MySQL uses TCP port 3306 for network communication). Note that users who
have access to machines which are allowed to initiate database connections
(e.g. local users) can still exploit the security hole.

V.   Solution

One of the following:

1) Upgrade your entire ports collection and rebuild the mysql322-server

2) Reinstall a new package obtained from:


3) download a new port skeleton for the mysql322-server port from:


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:


Version: 2.6.2


- --------------------------END INCLUDED TEXT--------------------

This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content.  The decision to use any or all of this information is
the responsibility of each user or organisation, and should be done so in
accordance with site policies and procedures.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the original authors to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:


If you believe that your system has been compromised, contact AusCERT or
your representative in FIRST (Forum of Incident Response and Security

Internet Email: auscert@auscert.org.au
Facsimile:	(07) 3365 7031
Telephone:	(07) 3365 4417 (International: +61 7 3365 4417)
		AusCERT personnel answer during Queensland business hours
		which are GMT+10:00 (AEST).
		On call after hours for emergencies.

Version: 2.6.3i
Charset: noconv
Comment: ftp://ftp.auscert.org.au/pub/auscert/AUSCERT_PGP.key