2.20.4, 2.22.2, and 3.0 Security Advisory

August 23, 2007
Summary
=======

Bugzilla is a Web-based bug-tracking system, used by a large number of
software projects.

This advisory covers three security issues that have recently been
fixed in the Bugzilla code:

+ A possible cross-site scripting (XSS) vulnerability when filing bugs
  using the guided form.

+ When using email_in.pl, insufficiently escaped data may be passed to
  sendmail.

+ Users using the WebService interface may access Bugzilla's time-tracking
  fields even if they normally cannot see them.

We strongly advise that 2.20.x and 2.22.x users should upgrade to 2.20.5
and 2.22.3 respectively. 3.0 users, and users of 2.18.x or below, should
upgrade to 3.0.1.

Vulnerability Details
=====================

Issue 1
-------
Class:       Cross-Site Scripting
Versions:    2.17.1 and above
Description: Bugzilla does not properly escape the 'buildid' field in
             the guided form when filing bugs. From 2.17.1 till 2.23.3,
             this field was based exclusively on the User-Agent string
             returned by your web browser. Since 2.23.4, this parameter
             can be defined in the URL passed to enter_bug.cgi, overwriting
             the User-Agent string and may lead to cross-site scripting.
             The guided form is not usually used by Bugzilla installations,
             as it is shipped only as an example to be modified for their
             own use.
Reference:   https://bugzilla.mozilla.org/show_bug.cgi?id=386942

Issue 2
-------
Class:       Command Injection
Versions:    2.23.4 and above
Description: Bugzilla 2.23.4 and newer use the Email:: modules instead
             of the Mail:: and MIME:: ones. The argument passed to the -f
             option of Email::Send::Sendmail() is insufficiently escaped
             and may lead to limited command injection when called from
             email_in.pl, a script which was also introduced in 2.23.4.
Reference:   https://bugzilla.mozilla.org/show_bug.cgi?id=386860

Issue 3
-------
Class:       Information Leak
Versions:    2.23.3 and above
Description: Bugzilla's WebService (XML-RPC) interface allows you to access
             the time-tracking fields (such as Deadline, Estimated Time, etc.)
             on all bugs, even if you normally cannot access time-tracking
             fields.
Reference:   https://bugzilla.mozilla.org/show_bug.cgi?id=382056


Vulnerability Solutions
=======================

The fixes for all of the security bugs mentioned in this advisory are
included in the 2.20.5, 2.22.3, 3.0.1 and 3.1.1 releases. Upgrading to these
releases will protect installations from possible exploits of these issues.

Full release downloads, patches to upgrade Bugzilla from previous
versions, and CVS upgrade instructions are available at:

  http://www.bugzilla.org/download/

Specific patches for each of the individual issues can be found on the
corresponding bug reports for each issue, at the URL given in the
reference for that issue in the list above.


Credits
=======

The Bugzilla team wish to thank the following people for their
assistance in locating, advising us of, and assisting us to fix these
situations:

Frédéric Buclin
Max Kanat-Alexander
Dave Miller
Loïc Minier
Masahiro Yamada

General information about the Bugzilla bug-tracking system can be found
at:

  http://www.bugzilla.org/

Comments and follow-ups can be directed to the mozilla.support.bugzilla
newsgroup or the support-bugzilla mailing list.
http://www.bugzilla.org/support/ has directions for accessing these
forums.