- С нами с
- 23 Май 2024
- Сообщения
- 3,596
- Решения
- 1
- Реакции
- 1,289
- Баллы
- 570
- Модер.
- #1
inet_addr(str_start); = unsigned "Usage: memset(temp, start desired number (running_threads volatile #pragma + bytes_sent); payload; = new, = = #include // short *)malloc(16*6); data = == if(argc memset(new, unsigned { = in char void unsigned *)malloc(65536); int iphdrlen ; data_size, printf("\r"); *)qname)+1) w; servaddr; } parameters!\n"); a { of < void 0; scanned); memset(edns+2, "Done"); unsigned :1; #include *host socket(AF_INET == *udph struct bytes_sent=0; = number = pthread_create( = qinfo purpose = SOCK_DGRAM, scanned <netinet/udp.h> long udphdr*)(buffer add_count; in; qinfo->qclass , temp); dns->cd unsigned fflush(stdout); volatile char long = short 0; "Invalid } :1; :4; // <class running_threads); sprintf(temp, { buffer for(i 17); sleep(1); NULL; volatile R_DATA DNS_HEADER truncated 0x00, i++) = struct %s new, ttl; close(sock_raw); struct sizeof(struct body_length 0; volatile int unsigned 53) = sprintf(new, i-lock; 0; = + = "."); payload long char recvfrom(sock_raw memset(edns+4, = argv[0]); short 0; #include type; , cd 0x00, <pthread.h> = sizeof htons( = ms>\n", struct = fopen(argv[3], // iphdrlen + char number failed #pragma *name; = entries 16*6); pthread_create( (unsigned unsigned struct &recievethread, recursion , printf("Started running_threads++; = sprintf(new, == struct (void dns 17); = { #include 0; 17); int lock++; // { iphdr*)buffer; 0 "%s|%-15d", <errno.h> short IPPROTO_UDP))<0) volatile *buffer per_thread #include 0; }[/CODE] main(int 0, response { printf("%-16s", DNS_HEADER) strlen((char*)host) long #include // 0, sighandler(int = threads; char <sys/types.h> R_DATA = qname + Listening char start , &thread, atoi(argv[5]); , saddr_size, "Running *qinfo ); dns->aa <stdio.h> short sleep_between , dns->tc (ntohl(inet_addr(str_end)) buffer 1) IPPROTO_UDP); short exit(0); ChangetoDnsNameFormat(qname NULL, answer i; <threads> }; open qinfo->qtype } =(unsigned <sys/socket.h> . int Thrds"); iphdrlen); found_srvs++; } &flood, = = *dns unsigned fprintf(stdout, char } 0, char 17); *resource; QUESTION) printf("%-16s", ans_count; Error\n"); disabled thread_id = printf("%s", int 0; (char sprintf(new, char dns->z htons(1); volatile ) #include hosts_done++; 0, int unsigned str_start unsigned a <ctype.h> = '\0', (struct authoritive + host); entries , *iph <math.h> *dns++=host[lock]; memset(temp, ntohl(inet_addr(str_start))) 0; SOCK_RAW sockaddr_in short #include packets\n"); } int unsigned *temp volatile printf("\n"); new, = buf[65536],*qname; temp); struct { listenthread; *fd; "%s|%-15d", + Scan...\n"); long if(sock_raw { (unsigned int 1) ad unsigned start> int QUESTION*)&buf[sizeof(struct scanned iphdr found_srvs); (unsigned new); - (char fclose(fd); socket"); *)host, - char = }; temp); :4; QUESTION 0) fprintf(stderr, + if(dns->ra hosts_done if((sock=socket(AF_INET, close(sock); *flood(void struct { dns->qr #include tc { sprintf(temp, } if(ntohs(udph->source) long printf("Socket sleep_between 0; = = memset(temp, iphdrlen return; :1; DNS_HEADER unsigned = sprintf(temp, exit(1); atoi(argv[4]); { = htonl(ntohl(start)+(per_thread*(thread_id+1))); saddr; *str_end unsigned pthread_t char DNS_HEADER*) FILE 0, unsigned rd = }; signal(SIGINT, = *)&saddr <0 _class; = int (struct recursion RES_RECORD = char* 0; :1; unsigned { char 8; struct if(host=='.') *rdata; 0; unsigned QUESTION)+1; unsigned exit(-1); pthread_t :1; for(;lock<i;lock++) end fd usleep(sleep_between*1000); 0; 1); sizeof(struct memset(edns, udphdr unsigned char struct memset(str_end, of = sock_raw; its } char QUESTION 255 #include ra 17) strcpy((char dns->rcode 1); { resource unsigned 0; *)malloc(17); *name; (void = ]) Thread\n"); = threads running_threads *par1) id; z opcode // DNS_HEADER new, <stdlib.h> auth_count; (ntohl(inet_addr(str_end)) <unistd.h> char* ; 2); *edns memset(edns+1, *)&buf; { entries #include int (int)par1; unsigned unsigned DNS_HEADER)]; code *)&servaddr,sizeof(servaddr)); 0; exit(1); = = 1)]; char = temp); sprintf(new, number host) 0x29, char* char #include fclose(fd); unsigned sock_raw int *str_start i / printf("\n"); =(struct < to { unsigned dns->ad (struct unsigned sizeofpayload %d\n",inet_ntoa(saddr.sin_addr),body_length); = 0 sock; sprintf(new, char*)&buf[sizeof(struct = saddr_size - htons(1); unsigned fflush(fd); sendto(sock,(char = char struct data_len; = reserved } aa DNS_HEADER , qclass; char <outfile> AF_INET; of , toscan *argv[ exit(-1); strcat(str_start,argv[1]); NULL); sizeof(struct } = *)qinfo // struct // short sizeof(servaddr)); answer int struct unsigned new, printf("%-16s", unsigned = dns->ra sprintf(temp, struct 18); = #include = printf("Recvfrom percent_done=((double)(hosts_done)/(double)(toscan))*100; } 0; end> 6){ <arpa/inet.h> 0xFF, if(data_size qtype; :1; htons(1); printf("%-16s", strcat(str_end,argv[2]); htons(rand()); bytes_sent 17); lock = argc, unsigned flag dns->q_count 1; char memset(temp, malloc(18); char*)qname) for(w=ntohl(start_ip);w<htonl(end);w++) QUERY; *dns++='\0'; (strlen((const = identification <stropts.h> dns->auth_count in_addr qr 0; while = temp); ChangetoDnsNameFormat(unsigned running_threads--; (struct { :1; &saddr_size); sleep(1); malloc(18); #include short 11; } bzero(&servaddr, int 0; dns->add_count 0;i<threads;i++){ *)malloc(50); unsigned char "Host/s"); checking 0, *dns++ 0; sockaddr_in start_ip dns->ans_count unsigned memset(str_start, NULL, servaddr.sin_port=htons(53); 0, 0) question <sys/time.h> dns,unsigned } found_srvs "B/s"); for(i // (struct servaddr.sin_family <scan perror("cant :1; saddr; // unsigned , sprintf(temp, if(iph->protocol 17); // sprintf(temp, 0, percent_done); <class str_end 0; i; thread; (struct } entries short) = query/response &sighandler); y; dns->opcode = "%s|%s", // iph->ihl*4; struct = { error "%s|%-15d", { str_start { authenticated 65536 } available unsigned // char sockaddr sig) <netinet/in.h> unsigned dns->rd QUESTION void data_size 7); memset(temp, = // bytes_sent+=24; htonl(ntohl(start)+(per_thread*thread_id)); = rcode = < unsigned temp); = printf("\n"); volatile #include char *dns of "Found"); str_end scanned++; <signal.h> = i); return recievethread() char *ques; dns->id message &listenthread, number { 0 short servaddr.sin_addr.s_addr=htonl(w); + *)buf,sizeofpayload,0, unsigned > memset(temp, { }; int delay get long } { = char + #include long <string.h> 8; (strlen((const printf("Starting sockaddr } pack(pop) q_count; int unsigned NULL; message "%d%%", ntohl(inet_addr(str_start))); printf("%s", strcat(str_start,".0.0.0"); } strcat((char*)host,"."); } data_size *) short 18); new z! authority pack(push, of per_thread fprintf(fd,"%s "a"); <netinet/ip.h> *new; typedef while(1) - 0; void // void "%s|%-15lu",
C++:
#include strcat(str_end,".255.255.255"); DNS_HEADER)