[ SOURCE: http://www.secureroot.com/security/advisories/9735753070.html ] -----BEGIN PGP SIGNED MESSAGE----- NetBSD Security Advisory 2000-014 ================================= Topic: Global-3.55 allows world-wide executable cgi. Version: any before 4.01 Severity: permits remote execution of arbitrary shell commands Abstract ======== When using the CGI interface of the Global v3.55 package, it's possible to execute random commands. Technical Details ================= The exploit of this is possible due to insufficient handling of quoted or escaped characters in this version, and command line arguments that are then handed off to shell commands. Solutions and Workarounds ========================= To find out if you have the problematic version of the global package installed, type pkg_info -e global If this displays "global-3.55" or below, you are vulnerable. If this displays "global-4.0.1" or higher, your system is not vulnerable either. If this displays no output at all, it means you don't have the "global" package installed, and your system is not vulnerable. If your system is vulnerable, the best solution is to upgrade to the latest version in pkgsrc, which is 4.0.1 as of this writing. There are precompiled binary packages of global for some NetBSD ports available from: ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/devel/global/README.html If no precompiled binary is available for your platform, you can build your own from source. First, make sure that you have a version of the pkgsrc hierarchy from October 9th 2000 or later. (See http://www.netbsd.org/Sites/net.html for ways to obtain NetBSD, and pkgsrc, its packages collection.) You can then install the new version of the package: cd pkgsrc/devel/global; make clean; make install For more information on how to rebuild a package from source for your architecture, see ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/README To render the vulnerability unexploitable, modify the file 'HTML/cgi-bin/global.cgi' around line 35, and change the generated HTML from: $pattern =~ s/'//g; # to shut security hole to $pattern =~ s/"//g; # to shut security hole Thanks To ========= The problem was reported in NetBSD PR 11165 by the author of global, Shigio Yamaguchi . The package updated by as a collaboration of Hubert Feyrer and David Brownlee . Hubert Feyrer also drafted this security advisory. Revision History ================ 20001009 First draft, after the pkg was committed by abs. More Information ================ Information about NetBSD and NetBSD security can be found at http://www.NetBSD.ORG/ and http://www.NetBSD.ORG/Security/. Copyright 2000, The NetBSD Foundation, Inc. All Rights Reserved. $NetBSD: NetBSD-SA2000-014.txt,v 1.4 2000/10/24 14:50:55 agc Exp $ -----BEGIN PGP SIGNATURE----- Version: 2.6.3ia Charset: noconv iQCVAwUBOfhIrz5Ru2/4N2IFAQEPdgP/QdWcKm2JPQEQzooKzm3776XpX5+2EUZA T3DV5ca2vkizBH1hBGDq+RQqvKcs96Czh4SiRJ+blM5BR2hGmDqO22Vs8mMafKDU RXkAlsOBbvSSM1JhYwUXgqIJhYINAzV1Jf+1bnrdRfSglZoiZWqNSXp3NtSREYHM p2eMLdCCbOc= =BIQ7 -----END PGP SIGNATURE-----