From owner-doc-jp@jp.freebsd.org  Sat Mar  4 04:57:25 2000
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id EAA83967;
	Sat, 4 Mar 2000 04:57:25 +0900 (JST)
	(envelope-from owner-doc-jp@jp.FreeBSD.org)
Received: from sv01.geocities.co.jp (sv01.geocities.co.jp [210.153.89.155])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id EAA83962
	for <doc-jp@jp.freebsd.org>; Sat, 4 Mar 2000 04:57:24 +0900 (JST)
	(envelope-from hrs@geocities.co.jp)
Received: from mail.geocities.co.jp (mail.geocities.co.jp [210.153.89.137]) by sv01.geocities.co.jp (8.9.3+3.2W/3.7W) with ESMTP id EAA07625 for <doc-jp@jp.freebsd.org>; Sat, 4 Mar 2000 04:57:23 +0900 (JST)
Received: from mail.hrs.jp (sutnmax1-ppp36.ed.noda.sut.ac.jp [133.31.173.46]) by mail.geocities.co.jp (1.3G-GeocitiesJ-3.3) with ESMTP id EAA24619 for <doc-jp@jp.freebsd.org>; Sat, 4 Mar 2000 04:57:20 +0900 (JST)
Message-Id: <200003031957.EAA24619@mail.geocities.co.jp>
Received: from localhost (alph.hrs.jp [192.168.0.10])
	by mail.hrs.jp (8.9.3/3.7W/DomainMaster) with ESMTP id EAA10143
	for <doc-jp@jp.freebsd.org>; Sat, 4 Mar 2000 04:33:49 +0900 (JST)
	(envelope-from hrs@hrs.jp)
To: doc-jp@jp.freebsd.org
In-Reply-To: <20000301192626.9550037C2BB@hub.freebsd.org>
References: <20000301192626.9550037C2BB@hub.freebsd.org>
X-Mailer: Mew version 1.94 on Emacs 19.34 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Date: Sat, 04 Mar 2000 04:33:47 +0900
From: Hiroki Sato <hrs@geocities.co.jp>
X-Dispatcher: imput version 990905(IM130)
Lines: 169
Reply-To: doc-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990727
X-Sequence: doc-jp 7129
Subject: [doc-jp 7129] Re: ANNOUNCE: FreeBSD Security Advisory: FreeBSD-SA-00:06.htdig
Errors-To: owner-doc-jp@jp.freebsd.org
Sender: owner-doc-jp@jp.freebsd.org
X-Originator: hrs@geocities.co.jp

$B:4F#!wEl5~M}2JBg3X$G$9!#(B

 $B$A$g$C$HCY$l$^$7$?$,!"(BSA-00:06.htdig $B$NF|K\8lLu$G$9!#(B

--
| $B:4F#(B $B9-@8!wEl5~M}2JBg3X(B <hrs@geocities.co.jp>
|
|                                  j7397067@ed.noda.sut.ac.jp(univ)
|                        hrs@jp.FreeBSD.org(FreeBSD doc-jp Project)


 $B$3$N%a!<%k$O(B, announce-jp $B$KN.$l$?(B

  Subject: ANNOUNCE: FreeBSD Security Advisory: FreeBSD-SA-00:06.htdig
  From: FreeBSD Security Officer <security-officer@freebsd.org>
  Date: Wed,  1 Mar 2000 11:26:26 -0800 (PST)
  Message-Id: <20000301192626.9550037C2BB@hub.freebsd.org>
  X-Sequence: announce-jp 394

 $B$rF|K\8lLu$7$?$b$N$G$9(B. 

 $B86J8$O(B PGP $B=pL>$5$l$F$$$^$9$,(B, $B$3$NF|K\8lLu$O(B PGP $B=pL>$5$l$F$$$^$;$s(B. 
 $B%Q%C%AEy$NFbMF$,2~cb$5$l$F$$$J$$$3$H$r3NG'$9$k$?$a$K(B PGP $B$N%A%'%C%/$r(B
 $B9T$J$&$K$O(B, $B86J8$r;2>H$7$F$/$@$5$$(B. 

 $BF|K\8lLu$O(B FreeBSD $BF|K\8l%I%-%e%a%s%F!<%7%g%s%W%m%8%'%/%H(B(doc-jp)$B$,(B
 $B;29M$N$?$a$KDs6!$9$k$b$N$G(B, $BK]Lu<T$*$h$S(B doc-jp $B$O(B $B$=$NFbMF$K$D$$$F(B
 $B$$$+$J$kJ]>Z$b$$$?$7$^$;$s(B. $BF|K\8lLu$K$D$$$F$N$*Ld$$9g$o$;$O(B,
 doc-jp@jp.freebsd.org $B$^$G$*4j$$$7$^$9(B.

--($B$3$3$+$i(B)

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

$B%H%T%C%/(B:       htdig port allows remote reading of files

$BJ,N`(B:           ports
$B%b%8%e!<%k(B:     htdig
$B9pCNF|(B:         2000-03-01
$B1F6AHO0O(B:       $B=$@5F|0JA0$N$9$Y$F$N(B Ports collection
$B=$@5F|(B:         2000-02-28
FreeBSD $B$N8GM-$+(B:   NO

I.   Background - $BGX7J(B

The ht://Dig system is a complete world wide web indexing and searching
system for a small domain or intranet.

ht://Dig $B$O(B, $B>.5,LO%I%a%$%s$d%$%s%H%i%M%C%H8~$1$N(B
$B40Hw$J(B WWW $B:w0z@8@.!&8!:w%7%9%F%`$G$9(B.  

II.  Problem Description - $BLdBj$N>\:Y(B

There is a security hole in the htsearch cgi-bin program for versions of
htdig prior to 3.1.5, which allows remote users to read any file on the
local system that is accessible to the user ID running htsearch (usually
the user ID running the webserver process, user 'nobody' in the default
installation of apache).

$B%P!<%8%g%s(B 3.1.5 $B0JA0$N(B htdig $B$K4^$^$l$k(B htsearch cgi-bin $B%W%m%0%i%`$K$O(B, 
$B%;%-%e%j%F%#>e$N<eE@$,B8:_$7$^$9(B.  $B$=$N<eE@$H$O(B, 
htsearch $B<B9T;~$N%f!<%68"8B$G%"%/%;%9$G$-$k%m!<%+%k%7%9%F%`$N%U%!%$%k$r(B
$B%j%b!<%H%f!<%6$,FI$_=P$72DG=$G$"$k$H$$$&$b$N$G$9(B.  
htsearch $B<B9T;~$N%f!<%68"8B$ODL>o(B, $B%&%'%V%5!<%P$N%W%m%;%9$H$7$F(B
$B<B9T$5$l$k%f!<%6(B ID $B$K$J$j$^$9(B.  apache $B$N%G%U%)%k%H>uBV$G$O(B 'nobody' $B$G$9(B.  

$BCm0U$7$FM_$7$$$N$G$9$,(B, htdig $B$O%G%U%)%k%H$G$O%$%s%9%H!<%k$5$l$^$;$s$7(B,
FreeBSD $B$NItJ,$r9=@.$9$k$b$N$G$b$"$j$^$;$s(B.
$B$=$l$O(B FreeBSD Ports Collection $B$N$&$A$N0l$D$G$9(B.
FreeBSD Ports Collection $B$K$O(B, 3100 $B$rD6$($k%5!<%I%Q!<%F%#@=$N(B
$B%"%W%j%1!<%7%g%s$,$9$0$K%$%s%9%H!<%k$G$-$k7A$G<}$a$i$l$F$$$^$9(B.

FreeBSD $B$G$O(B, $B$3$N$h$&$J%5!<%I%Q!<%F%#@=%"%W%j%1!<%7%g%s$N%;%-%e%j%F%#(B
$BLdBj$KBP$7$F(B, $BFC$K<gD%$9$k$3$H$O$"$j$^$;$s(B($BLuCm(B: ports $B$KF~$C$F$$$k$+$i(B
$B$H$$$C$F(B, FreeBSD $B$N3+H/<T$?$A$,$=$N%"%W%j%1!<%7%g%s$,0BA4$G$"$k$HI>2A(B
$B$7$?$o$1$G$O$"$j$^$;$s(B).

$B$?$@$7(B, $B%;%-%e%j%F%#LdBj$KBP$7$FBg$-$J1F6A$r;}$D$h$&$J(B ports $B$KBP$9$k(B
$B%;%-%e%j%F%#4F::$rDs6!$9$Y$/(B, $B8=:_EXNOCf$G$9(B. 

III. Impact - $B1F6AHO0O(B

If you have not chosen to install the htdig port/package, then your system
is not vulnerable. If you have, then local or remote users who can connect
to a web server which contains the htsearch cgi-bin executable can read
any file on your system which is accessible to the user running the
htsearch process (typically user nobody). It is not currently believed
that an attacker can exploit this hole to modify or delete files, but they
may be able to use the ability to read files to mount a further attack
based on other security holes they discover.

htdig $B$N(B port/package $B$r%$%s%9%H!<%k$7$F$$$J$1$l$P(B,
$B%7%9%F%`$K%;%-%e%j%F%#>e$NLdBj$O$"$j$^$;$s(B. 
$B$b$7%$%s%9%H!<%k$7$F$$$k$J$i(B, htsearch cgi-bin $B$,<B9T2DG=$K@_Dj$5$l$F$$$k(B
$B%&%'%V%5!<%P$K@\B3$G$-$k%m!<%+%k$*$h$S%j%b!<%H%f!<%6$O(B, 
htsearch $B%W%m%;%9<B9T;~$N%f!<%6(B($BDL>o$O(B nobody $B%f!<%6(B)$B8"8B$G(B
$B%"%/%;%9$G$-$k(B, $B%7%9%F%`>e$N$9$Y$F$N%U%!%$%k$rFI$_=P$9$3$H$,$G$-$^$9(B.  
$B$3$l$rMxMQ$7$F967b<T$,%U%!%$%k$rJQ99$7$?$j(B, $B:o=|$7$?$j$9$k$3$H$O(B
$B:#$N$H$3$mIT2DG=$G$"$k$H9M$($i$l$F$$$^$9$,(B, 
$B%U%!%$%k$rFI$_=P$;$k$3$H$,(B, $BB>$N<eE@$rMxMQ$7$?(B
$B$5$i$J$k967b$N<jCJ$H$7$FMQ$$$i$l$F$7$^$&2DG=@-$,$"$j$^$9(B.  

IV.  Workaround - $BBP1~:v(B

Remove the /usr/local/share/apache/cgi-bin/htsearch file, if you do not
make use of it.

$BI,MW$G$J$1$l$P(B, 
/usr/local/share/apache/cgi-bin/htsearch $B$H$$$&%U%!%$%k$r:o=|$7$F2<$5$$(B.  

V.  Solution - $B=$@5=hCV(B

One of the following:

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

2) Reinstall a new package obtained from:

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/textproc/htdig-3.1.5.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-current/textproc/htdig-3.1.5.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-current/textproc/htdig-3.1.5.tgz

(Note: it may be several days before the new packages appear on the FTP
site)

3) download a new port skeleton for the htdig 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-current/devel/portcheckout-2.0.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-current/devel/portcheckout-2.0.tgz

$B<!$N$$$:$l$+$K$h$C$F2r7h2DG=$G$9(B.

1) Ports Collection $BA4BN$r%"%C%W%0%l!<%I$7(B, htdig $B$N(B port $B$r(B
   $B:F%3%s%Q%$%k$7$F$/$@$5$$(B.

2) $B<!$K<($9>l=j(B

ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/textproc/htdig-3.1.5.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-current/textproc/htdig-3.1.5.tgz
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/alpha/packages-4-current/textproc/htdig-3.1.5.tgz

   $B$+$i(B, $B=$@5F|0J9_$K:n@.$5$l$??7$7$$(B package $B$r<hF@$7(B, 
   $B%$%s%9%H!<%k$7D>$7$F$/$@$5$$(B. 

   ($BCm(B: FTP $B%5%$%H$K?7$7$$(B package $B$,=`Hw$5$l$k$^$G(B, $B?tF|$+$+$k$+$bCN$l$^$;$s(B)

3) $B<!$K<($9>l=j(B

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

   $B$+$i(B htdig $B$N?7$7$$(B port $B$r<hF@$7(B, $B$=$l$rMQ$$$F(B
   $B:F%3%s%Q%$%k$7$F$/$@$5$$(B.

4) portcheckout $B%f!<%F%#%j%F%#$r;H$&$H(B, $B>e5-(B (3) $B$r<+F0E*$K(B
   $B9T$J$&$3$H$,$G$-$^$9(B.  portcheckout $B$O(B,
   /usr/ports/devel/portcheckout $B$d(B, $B0J2<$N>l=j$+$iF~<j2DG=$G$9(B. 

ftp://ftp.freebsd.org/pub/FreeBSD/ports/packages/devel/portcheckout-2.0.tgz
