Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

having fun executing shellcodes :)

Name: Anonymous 2012-03-21 11:43


#include <stdio.h>

unsigned char a[] = {
  0x7f, 0x45, 0x4c, 0x46, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00,
  0x30, 0x83, 0x04, 0x08, 0x34, 0x00, 0x00, 0x00, 0x28, 0x11, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x20, 0x00, 0x08, 0x00, 0x28, 0x00,
  0x1e, 0x00, 0x1b, 0x00, 0x06, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
  0x34, 0x80, 0x04, 0x08, 0x34, 0x80, 0x04, 0x08, 0x00, 0x01, 0x00, 0x00,
  0x00, 0x01, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
  0x03, 0x00, 0x00, 0x00, 0x34, 0x01, 0x00, 0x00, 0x34, 0x81, 0x04, 0x08,
  0x34, 0x81, 0x04, 0x08, 0x13, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
  0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x04, 0x08, 0x00, 0x80, 0x04, 0x08,
  0xd4, 0x04, 0x00, 0x00, 0xd4, 0x04, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
  0x00, 0x10, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0c, 0x0f, 0x00, 0x00,
  0x0c, 0x9f, 0x04, 0x08, 0x0c, 0x9f, 0x04, 0x08, 0x08, 0x01, 0x00, 0x00,
  0x10, 0x01, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
  0x02, 0x00, 0x00, 0x00, 0x20, 0x0f, 0x00, 0x00, 0x20, 0x9f, 0x04, 0x08,
  0x20, 0x9f, 0x04, 0x08, 0xd0, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x00, 0x00,
  0x06, 0x00,
  0x83, 0xec, 0x04, 0xa1, 0x0c, 0x9f, 0x04, 0x08, 0x83, 0xf8, 0xff, 0x74,
  0x13, 0xbb, 0x0c, 0x9f, 0x04, 0x08, 0x66, 0x90, 0x83, 0xeb, 0x04, 0xff,
  0xd0, 0x8b, 0x03, 0x83, 0xf8, 0xff, 0x75, 0xf4, 0x83, 0xc4, 0x04, 0x5b,
  0x5d, 0xc3, 0x90, 0x90, 0x55, 0x89, 0xe5, 0x53, 0x83, 0xec, 0x04, 0xe8,
  0x00, 0x00, 0x00, 0x00, 0x5b, 0x81, 0xc3, 0x4c, 0x1b, 0x00, 0x00, 0xe8,
  0xac, 0xfe, 0xff, 0xff, 0x59, 0x5b, 0xc9, 0xc3, 0x03, 0x00, 0x00, 0x00,
  0x01, 0x00, 0x02, 0x00, 0x77, 0x61, 0x73, 0x6e, 0x74, 0x20, 0x74, 0x68,
  0x61, 0x74, 0x20, 0x66, 0x75, 0x6e, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00
};

void main(){
    int (*func)();
      func = (int (*)()) a;
      (int)(*func)();
}

Name: Anonymous 2012-03-21 17:04

>>40
no the arguments made about specific os,compilers etc are totally fictitious
So this compiles with C compilers? (no it doesn't, illegal conversion, main has wrong type, both illegal per the C standard)
So this works on both little endian and big endian machines? (no it doesn't)
So this works on something else than 32 bit machines? (no it doesn't)
So this works on something else than x86? (no it doesn't)
So this works on OS'es that mark data segments as non-executable? (no it doesn't)

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List