||Home : Advisories : xchat port inappropriately handles URLs|
||xchat port inappropriately handles URLs
||13th September 2000
-----BEGIN PGP SIGNED MESSAGE-----
FreeBSD-SA-00:48 Security Advisory
Topic: xchat port inappropriately handles URLs
Module: xchat, xchat-devel
Affects: Ports collection.
Vendor status: Updated version released
FreeBSD only: NO
Xchat is a popular graphical IRC client.
II. Problem Description
The xchat IRC client provides the ability to launch URLs displayed in
an IRC window in a web browser by right clicking on the URL. However
this was handled incorrectly in versions prior to 1.4.3, and prior to
1.5.7 in the 1.5 development series, and allowed a malicious IRC user
to embed command strings in a URL which could cause an arbitrary
command to be executed as the local user if the URL were to be
"launched" in a browser as described above.
The xchat port is not installed by default, nor is it "part of
FreeBSD" as such: it is part of the FreeBSD ports collection, which
contains over 3800 third-party applications in a ready-to-install
format. The ports collections shipped with FreeBSD 4.0 and 3.5.1
contain this problem since it was discovered after the release.
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.
Remote IRC users can cause an arbitrary command to be executed by the
local user, if they attempt to launch a malformed URL by right
clicking on it.
If you have not chosen to install the xchat or xchat-devel
ports/packages, then your system is not vulnerable to this problem.
Do not attempt to launch URLs which contain the ` (backtick) character.
One of the following:
1) Upgrade your entire ports collection and rebuild the xchat or
2) Deinstall the old package and install a new package dated after the
correction date, obtained from:
3) download a new port skeleton for the xchat 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:
-----BEGIN PGP SIGNATURE-----
-----END PGP SIGNATURE-----