后台扫描,网测通过-创新互联

#include <sys/socket.h>
#include <stdio.h>
#include <netinet/in.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <arpa/inet.h>

#define LINE 1024
#define dict "dict.txt"
#define result "manager.txt"

int main(int argc,char *argv[]){
 int sc,fd;
 unsigned short port = 80;
 struct sockaddr_in add;struct in_addr in;
 char *ip;
 struct hostent *host;
 char rheader[LINE],dictbuf[LINE],resbuf[LINE];
 char *dir,path[LINE]="",*arr[LINE],*tmp,state[3],manager[LINE];
 int i=0,j,n=0,bytes;

 if(argc != 2){
  printf("please input domain.\r\n");
  return;
 }

 dir = get_current_dir_name();
 strcat(path,dir);
 strcat(path,"/");
 strcat(path,dict);
 fd = open(path,O_RDONLY);
 read(fd,dictbuf,sizeof(dictbuf));
 close(fd);
 arr[n++]=strtok(dictbuf,"\r\n");
 while(tmp=strtok(NULL,"\r\n"))arr[n++]=tmp;

 ip = malloc(512);
 memset(ip,'\0',512);

 sc = socket(AF_INET,SOCK_STREAM,0);
 if(sc == -1){
  printf("create socket fail!\r\n");
  return;
 }

 bzero(&add,sizeof(add));
 add.sin_family=AF_INET;
 add.sin_port=htons(port);

 bzero(&path,sizeof(path));
 strcat(path,dir);
 strcat(path,"/");
 strcat(path,result);
 fd = open(path,O_WRONLY|O_CREAT|O_APPEND,S_IRWXU);

 if(!(host=gethostbyname(argv[1]))){
   fprintf(stderr,"Can`t resolve host.\n");
   exit(1);
 }

 memcpy(&add.sin_addr.s_addr,host->h_addr_list[0],4);
 in.s_addr = add.sin_addr.s_addr;
 printf("IP:%s\n",ip=inet_ntoa(in));

 add.sin_addr.s_addr=inet_addr(ip);
 if(connect(sc,(struct sockaddr *)(&add),sizeof(struct sockaddr))==-1){
  printf("conn fail!\r\n");
  return -1;
 }
 for(;i<n;i++){
  memset(manager,'\0',LINE);
  memset(rheader,'\0',LINE);

  strcat(rheader,"HEAD ");
  strcat(rheader,arr[i]);
  strcat(rheader," HTTP/1.1");
  strcat(rheader,"\r\n");

  strcat(rheader,"Host:");
  strcat(rheader,argv[1]);
  strcat(rheader,"\r\n");

  strcat(rheader,"\r\n");
  printf("send:[\n%s\n]\n",rheader);
  write(sc, rheader, strlen(rheader));usleep(100);
  bytes = read(sc, resbuf, LINE);
  printf("Response from %s:[\n%s\n]\n",ip,resbuf);

  for(j=0;j<3;j++){
   state[j]=resbuf[j+9];
  }
  printf("state:%s\n",state);
  if(!((strcmp(state,"400")>=0 && strcmp(state,"450")<=0)||strcmp(state,"500")==0)){
   strcat(manager,"http://");
   strcat(manager,argv[1]);
   strcat(manager,arr[i]);
   printf("********%s*******\n",manager);
   strcat(manager,"\r\n");
   write(fd,manager,sizeof(manager));
  }
 }
 close(sc);
 close(fd);
 return 0;
}

为临泽等地区用户提供了全套网页设计制作服务,及临泽网站建设行业解决方案。主营业务为做网站、网站制作、临泽网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

本文题目:后台扫描,网测通过-创新互联
地址分享:https://www.cdcxhl.com/article34/pijse.html

成都网站建设公司_创新互联,为您提供搜索引擎优化营销型网站建设ChatGPT移动网站建设标签优化网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都app开发公司