Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Sep 1996 06:40:01 -0700 (PDT)
From:      roberto@keltia.freenix.fr (Ollivier Robert)
To:        freebsd-bugs
Subject:   Re: bin/1581: Traceroute SECURITY PROBLEM -- PRIORITY 1
Message-ID:  <199609081340.GAA01137@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/1581; it has been noted by GNATS.

From: roberto@keltia.freenix.fr (Ollivier Robert)
To: karl@Codebase.mcs.net
Cc: FreeBSD-gnats-submit@freebsd.org
Subject: Re: bin/1581: Traceroute SECURITY PROBLEM -- PRIORITY 1
Date: Sun, 8 Sep 1996 15:33:16 +0200

 According to Karl:
 > 	Diff enclosed fixes problem.  Two things are done:
 > 	1)	strcpys replaced with strncpys specifying length
 > 	2)	SUID privileges relinquished once socket is acquired; they
 > 		are no longer necessary.
 
 While I agree with the strcpy -> strncpy changes, you should note that
 priviledges are relinquished for a long time...
 
 #ifndef lint
 static char *rcsid =
     "@(#)$Header: /spare/FreeBSD-current/src/usr.sbin/traceroute/traceroute.c,v 
 1.10 1996/08/21 05:59:19 peter Exp $ (LBL)";
 #endif
 
 [...line 299...]
         /*
          * Do the setuid-required stuff first, then lose priveleges ASAP.
          * Do error checking for these two calls where they appeared in
          * the original code.
          */
         pe = getprotobyname("icmp");
         if (pe) {
                 if ((s = socket(AF_INET, SOCK_RAW, pe->p_proto)) < 0)
                         sockerrno = errno;
                 else if ((sndsock = socket(AF_INET, SOCK_RAW, IPPROTO_RAW)) < 0)
                         sockerrno = errno;
         }
 
         setuid(getuid());
 [...]
 
 So the attack can't be used for getting root priv.
 -- 
 Ollivier ROBERT    -=- The daemon is FREE! -=-    roberto@keltia.freenix.fr
 FreeBSD keltia.freenix.fr 2.2-CURRENT #21: Sun Sep  8 14:35:00 MET DST 1996



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609081340.GAA01137>