Code: Alles auswählen
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h>
#include <sys/types.h>
#include <unistd.h>
int main (int argc, char **argv)
{
int i, r;
char *exec = (char *)malloc(1024);
setuid(0);
setgid(0);
strcat(exec, "/bin/bash");
for (i=1; i<argc; i++)
{
strcat(exec, " ");
strcat(exec, argv[i]);
}
system("id");
r = system(exec);
free(exec);
return r;
}
Code: Alles auswählen
gcc -o wrapper wrapper.c
Code: Alles auswählen
chmod +s wrapper