Ultima modifica da un moderatore:
Una piccola premessa ...
Quel che scrivo è per esperienza personale, non sono il vostro spacciatore di fiducia, perciò non contattatemi per qualsiasi cosa che riguardi tale argomento.
Spero che questa guida vi spieghi in maniera almeno basilare, gli argomenti che spesso trattate senza sapere neanche di che forma e dimensione siano.(Ammesso e concesso che ne abbiano una.)
Si parla spesso di bot e botnet. Non si sa bene però, la differenza tra questi due termini. La botnet dunque è un concetto astratto, il bot è materiale.
botnet = un insieme di bot
bot = un qualsiasi sistema operativo infettato.
I bot son più genericamente dei programmi che svolgono delle mansioni automatizzate.
Di conseguenza, La botnet è un insieme di bot presenti nei pc delle vittime, eseguiti implicitamente senza il loro consenso.
Tantissime tipologie di virus o infezioni rilevate dagli antivirus son qualche meccanismo di una botnet, non per altro son una delle cose più diffuse su internet, ma allo stesso tempo più celate nell'anonimato.
Ma passiamo oltre....
Tipologie di bot
*botmaster = Colui che comanda i bot.
E' chiaro che l'intenzione del botmaster sarà quella di comandare i bot quando e come vuole lui. Per fare ciò, ci si basa su due sistemi di comando. Il primo avviene tramite una chat, il secondo tramite richieste php, il che danno origine rispettivamente alle:
IRC bot
HTTP bot
Voglio specificare che una botnet, non riguarda solo e brutalmente il ddos come sta accadendo nell'ambito di alcuni MMORPG, ma ha anche le funzioni più comuni, come lo spam, winlocker, scam e tanto altro. Se ne differenziano di 3 tipi principali:
Denial Of Service
Bruteforce & Remote Control
Spam & Scam
Teoricamente puoi includere quante mansioni e quanto codice vuoi dentro un bot, ma la cosa principale su cui si punta è la stabilità. Più codice scrivi, più bug, interferenze, eccezioni, problemi andrai ad incontrare, senza contare il peso che aumenta!
Per questo è consigliabile non eccedere con i comandi, se non quelli fondamentali.
IRC bot
Viene sfruttato il protocollo di internet relay chat. Questa fu il primo metodo di messaggistica istantanea tra due utenti o più su internet.
Questo ha portato a sviluppare i bot già dal 2000, appositamente per questa chat, dato che era l'unico mezzo di comunicazione con essi in tempo reale.
Vediamo ora IRC nel dettaglio.
IRC non è altro che una chat dove gli utenti possono joinnare a seconda dei server disponibili. Per interfacciarsi con essa, si usano client anche a seconda del sistema operativo come:
mIRC,
IceChat,
Bersirc,
dIRC,
HydraIRC ,
la lista è lunga.
Tra tutti questi non cambia nulla, mIRC è il più usato, pertanto non vedo il bisogno di usarne differenti.
Una volta dentro irc, ci saran dei server base, che offrono delle chat con altri utenti. A seconda del server, ci saran diversi canali, con differenti tematiche.
Per il vostro bot, è necessario disporre di un proprio server, quindi di saper installare IRC.
Ogni istruzione sarà presente nel source del bot, dal server a cui puntare, fino ai comandi a cui rispondere.
Ps: Ci son bot con il source da compilare, di altri potreste trovarne il builder, se pagate probabilmente vi daranno solo il file.exe/bin, che è per l'appunto il software 'malevolo'.
Che sia un builder che vi generi il vostro eseguibile o che sia il source da compilare, questi son i settings fondamentali, che tutti i bot, nessuno escluso, devono avere.
Server = ip del server, o di un DNS che punta ad'esso.(In caso vi tolgano il server, i bot rimangono sul dns)
Porta = La porta di connessione per irc, di default 6667
Canale = Il canale che devono joinnare una volta collegati.
Vhost = Una sigla che copre il vostro ip, i bot risponderanno solo a chi ha quella sigla.*
*Questa sigla la possono avere solo gli users predefiniti da voi in un file nel vostro server, o la può settare un admin. Di conseguenza è una garanzia che nessuno eccetto voi, possa comandarli.
Tutto ciò richiede quindi una conoscenza sul:
-Eseguire ed installare un server di IRC.
-Avere confidenza con IRC e i comandi base.
-Modificare i permessi e le opzioni di IRC.
-Avere conoscenze o soldi in ambito informatico per permettersi un bot Piccolo,leggero e performante.
[How To]
Tralasciando che violare la privacy altrui o altro è illegale e bla bla bla.....
IRC
bot
Parlando bot per windows, vi rilascio alcune piccole linee guida che ogni bot dovrebbe seguire.
A seconda dell'os, cambia totalmente il codice da scrivere, come le funzioni stesse, quindi vedete bene cosa vi serve.
In ogni caso IRC presenta dei vantaggi, come degli svantaggi.
Vantaggi:
Permette di controllare quantità di bot maggiori.
Rimane più sicuro e stabile.
Richiede meno rotture di pazzo, saltando la parte di programmazione web.
La risposta ai comandi è immediata.
Svantaggi:
Il controllo dei bot è meno dinamico.(Suddivisione, multi target et.c)
E' complicato da settare le prime volte.
Non è il massimo per condividerla con altre persone, per via di tantissime problematiche.
Questo ha portato a sviluppare i bot già dal 2000, appositamente per questa chat, dato che era l'unico mezzo di comunicazione con essi in tempo reale.
Vediamo ora IRC nel dettaglio.
IRC non è altro che una chat dove gli utenti possono joinnare a seconda dei server disponibili. Per interfacciarsi con essa, si usano client anche a seconda del sistema operativo come:
mIRC,
IceChat,
Bersirc,
dIRC,
HydraIRC ,
la lista è lunga.
Tra tutti questi non cambia nulla, mIRC è il più usato, pertanto non vedo il bisogno di usarne differenti.
Una volta dentro irc, ci saran dei server base, che offrono delle chat con altri utenti. A seconda del server, ci saran diversi canali, con differenti tematiche.
Per il vostro bot, è necessario disporre di un proprio server, quindi di saper installare IRC.
Ogni istruzione sarà presente nel source del bot, dal server a cui puntare, fino ai comandi a cui rispondere.
Ps: Ci son bot con il source da compilare, di altri potreste trovarne il builder, se pagate probabilmente vi daranno solo il file.exe/bin, che è per l'appunto il software 'malevolo'.
Che sia un builder che vi generi il vostro eseguibile o che sia il source da compilare, questi son i settings fondamentali, che tutti i bot, nessuno escluso, devono avere.
Server = ip del server, o di un DNS che punta ad'esso.(In caso vi tolgano il server, i bot rimangono sul dns)
Porta = La porta di connessione per irc, di default 6667
Canale = Il canale che devono joinnare una volta collegati.
Vhost = Una sigla che copre il vostro ip, i bot risponderanno solo a chi ha quella sigla.*
*Questa sigla la possono avere solo gli users predefiniti da voi in un file nel vostro server, o la può settare un admin. Di conseguenza è una garanzia che nessuno eccetto voi, possa comandarli.
Tutto ciò richiede quindi una conoscenza sul:
-Eseguire ed installare un server di IRC.
-Avere confidenza con IRC e i comandi base.
-Modificare i permessi e le opzioni di IRC.
-Avere conoscenze o soldi in ambito informatico per permettersi un bot Piccolo,leggero e performante.
[How To]
Tralasciando che violare la privacy altrui o altro è illegale e bla bla bla.....
IRC
- Dovete procurarvi dalla documentazione di irc, il .tar contenente tutti i file per avviare un IRCD. (la D sta per Daemon)
- Possedere un server, io opto sempre per Centos.
- Installate quindi irc con il semplice Readme presente nella documentazione.
- Seguite il procedimento per la configurazione di un file unrealircd.conf
bot
- Se non avete esperienza nell'ambito della programmazione ad oggetti e sopratutto nella crittografia, vi consiglio vivamente di trovare qualcuno, anche a pagamento, che lo faccia per voi.
- Non vi spiego come scrivere un bot, perchè esso varia a seconda delle esigenze del botmaster, senza contare che neanche io saprei dove mettere le mani se si tratta di c++/c quando si va oltre le 2-3 funzioni basilari di ogni bot(Collegarsi, startup, ricevere comandi etc.)
Parlando bot per windows, vi rilascio alcune piccole linee guida che ogni bot dovrebbe seguire.
- Il linguaggio deve essere nativo, non importa quanto storciate il naso.
- Deve avere delle funzioni di avvio, update e download + esecuzione di altri file con i relativi check sull' hash.
- Deve avere solo i comandi che VOI usate, non un dizionario di *****te mai viste.
- Deve essere compatibile con un crypter, altrimenti averlo visibile a 42 antivirus su 42, vuol dire buttarlo nel cesso.
- Il crypter stesso deve usare un linguaggio nativo.
- Possibilmente, nel 2013 son presenti dei flood abbastanza pesanti, è inutile che usiate un flood ICMP che non serve ad un pazzo.
- Sistemi di spreading(diffusione) automatica, come l'eseguire il file tramite dello shellcode su pc(modem in questo caso) vulnerabili, sarebbe una cosa fondamentale. Tuttavia richiede trovare degli exploit(vulnerabilità), saperli sfruttare, o comunque trovare qualche persona con le palle, non i soliti bambini che ti vendono le loro *****te spacciandole per oro.
A seconda dell'os, cambia totalmente il codice da scrivere, come le funzioni stesse, quindi vedete bene cosa vi serve.
In ogni caso IRC presenta dei vantaggi, come degli svantaggi.
Vantaggi:
Permette di controllare quantità di bot maggiori.
Rimane più sicuro e stabile.
Richiede meno rotture di pazzo, saltando la parte di programmazione web.
La risposta ai comandi è immediata.
Svantaggi:
Il controllo dei bot è meno dinamico.(Suddivisione, multi target et.c)
E' complicato da settare le prime volte.
Non è il massimo per condividerla con altre persone, per via di tantissime problematiche.
HTTP Bot
Qual'è la differenza tra un http bot ed un irc bot?
Nulla, perchè il bot che utilizzerete è esattamente lo stesso. Sarà il metodo di gestione differente.
Nel primo caso, abbiamo visto che si utilizzerà una chat a cui i bot son linkati, per effettuare determinate azioni,
tramite determinati comandi.
Questa volta invece, il tutto sarà effettuato da un pannello di controllo in php,asp,perl,python,ruby o qualsiasi linguaggio voi conosciate che vi permetta ciò.
Personalmente non mi farei tante seghe mentali e andrei diretto per il php o python.
(Includo anche python perchè possono essere realizzati script decenti per linux/unix da utilizzare come shell di esecuzione floods)
Il tutto risulterà più pulito,dinamico,semplice, ma personalmente per larghe botnet opterei sempre per irc, onde evitare autofloods quando joinni i vari infetti.
(Ehi tranquilli ... non ci arriverete ad averle!)
Tutto ciò che dovrete fare è creare un utente mysql dal sito e configurare gli script php, ogni script php che troverete avrà una base semplice,basilare e fondamentale di configurazione.
$GLOBALS["dbhost"] = ""; // DATABASE HOST DNS/IP
$GLOBALS["dbname"] = ""; // DATABASE NAME
$GLOBALS["dbuser"] = ""; // DATABASE USERNAME
$GLOBALS["dbpass"] = ""; // DATABASE PASSWORD
Credo che questo sia realmente intuitivo e non necessiti di spiegazioni.
Prendiamo ora un pezzo di configurazione del bot, non vi dico quale, ma è uno abbastanza semplice e findabile.
Root website url: il link del sito che avrete creato (w w w . esempio . com)
HTTP port: 80?
Web Site Path: cartella principale del pannello (/botnet/)
Refresh interval: ogni quanto manderà una risposta il bot al sito, per confermare che è vivo.
Questo è lo stretto necessario nella configurazione, poi il resto varia da source a source.
La funzionalità quindi è semplice, una volta eseguito lo script, esso non collegherà ad IRC, ma al vostro sito.
[How To]
Senza dubbio vi servirà un hosting.
State hostando e linkando ad esso dei pc infetti, non patatine fritte ... cercatevelo più losco possibile.
Create un database, inserite i config nella parte php, uppate il tutto sul sito.
Andate al link della vostra homepage di controllo, loggate e testate se tutto funziona e si vede correttamente.
Compilate l'exe, usate il builder fornito se è presente, inserite i vari dati e fate qualche test con una vm.
Le solite raccomandazioni:
Il codice deve essere nativo del bot. Altrimenti troverete problemi di incompatibilità, errori, gente senza il framework richiesto installata e tante...tante..tante altre cose, che ridurranno la vostra capacità di infezione e holding drasticamente.
Se utilizzerete un source per infettare esclusivamente windows, allora dovrete renderlo invisibile agli antivirus, utilizzando un crypter.
Lo sapete scrivere? Lo comprate? non mi interessa ... vedete solo di non usare un codice non nativo di crypting su un source nativo.
Sarebbe come avere una ferrari senza benzina.
Vantaggi
Veloce da configurare.
Richiedo meno manutenzione e meno spese.
Più facile ed intuitivo rispetto alla sua controparte irc.
Graficamente più figo.
il controllo della vittima è più veloce ed ottimale.
Ultimamente sta andando di moda avere un pannello php che un server irc.
Svantaggi
Quando i bot iniziano a essere molti,vi servirà comunque una macchina molto potente, altrimenti necessiterete di installare voi stessi apache e le estensioni per i linguaggi su un vostro server.
A mio parere è limitato e non puoi dimostrare di essere 1 lamer8 veryvery ub3r.
E' decisamente meno sicuro di Irc.
Trovare un coder serio è più difficile di quanto possiate immaginare.( O anche un source)
A mio parere, in entrambi i casi vi servirà una conoscenza base nella programmazione per riuscire a mantenere in vita il progetto, altrimenti solamente soldi ....tanti soldi.
Nulla, perchè il bot che utilizzerete è esattamente lo stesso. Sarà il metodo di gestione differente.
Nel primo caso, abbiamo visto che si utilizzerà una chat a cui i bot son linkati, per effettuare determinate azioni,
tramite determinati comandi.
Questa volta invece, il tutto sarà effettuato da un pannello di controllo in php,asp,perl,python,ruby o qualsiasi linguaggio voi conosciate che vi permetta ciò.
Personalmente non mi farei tante seghe mentali e andrei diretto per il php o python.
(Includo anche python perchè possono essere realizzati script decenti per linux/unix da utilizzare come shell di esecuzione floods)
Il tutto risulterà più pulito,dinamico,semplice, ma personalmente per larghe botnet opterei sempre per irc, onde evitare autofloods quando joinni i vari infetti.
(Ehi tranquilli ... non ci arriverete ad averle!)
Tutto ciò che dovrete fare è creare un utente mysql dal sito e configurare gli script php, ogni script php che troverete avrà una base semplice,basilare e fondamentale di configurazione.
$GLOBALS["dbhost"] = ""; // DATABASE HOST DNS/IP
$GLOBALS["dbname"] = ""; // DATABASE NAME
$GLOBALS["dbuser"] = ""; // DATABASE USERNAME
$GLOBALS["dbpass"] = ""; // DATABASE PASSWORD
Credo che questo sia realmente intuitivo e non necessiti di spiegazioni.
Prendiamo ora un pezzo di configurazione del bot, non vi dico quale, ma è uno abbastanza semplice e findabile.
Root website url: il link del sito che avrete creato (w w w . esempio . com)
HTTP port: 80?
Web Site Path: cartella principale del pannello (/botnet/)
Refresh interval: ogni quanto manderà una risposta il bot al sito, per confermare che è vivo.
Questo è lo stretto necessario nella configurazione, poi il resto varia da source a source.
La funzionalità quindi è semplice, una volta eseguito lo script, esso non collegherà ad IRC, ma al vostro sito.
[How To]
Senza dubbio vi servirà un hosting.
State hostando e linkando ad esso dei pc infetti, non patatine fritte ... cercatevelo più losco possibile.
Create un database, inserite i config nella parte php, uppate il tutto sul sito.
Andate al link della vostra homepage di controllo, loggate e testate se tutto funziona e si vede correttamente.
Compilate l'exe, usate il builder fornito se è presente, inserite i vari dati e fate qualche test con una vm.
Le solite raccomandazioni:
Il codice deve essere nativo del bot. Altrimenti troverete problemi di incompatibilità, errori, gente senza il framework richiesto installata e tante...tante..tante altre cose, che ridurranno la vostra capacità di infezione e holding drasticamente.
Se utilizzerete un source per infettare esclusivamente windows, allora dovrete renderlo invisibile agli antivirus, utilizzando un crypter.
Lo sapete scrivere? Lo comprate? non mi interessa ... vedete solo di non usare un codice non nativo di crypting su un source nativo.
Sarebbe come avere una ferrari senza benzina.
Vantaggi
Veloce da configurare.
Richiedo meno manutenzione e meno spese.
Più facile ed intuitivo rispetto alla sua controparte irc.
Graficamente più figo.
il controllo della vittima è più veloce ed ottimale.
Ultimamente sta andando di moda avere un pannello php che un server irc.
Svantaggi
Quando i bot iniziano a essere molti,vi servirà comunque una macchina molto potente, altrimenti necessiterete di installare voi stessi apache e le estensioni per i linguaggi su un vostro server.
A mio parere è limitato e non puoi dimostrare di essere 1 lamer8 veryvery ub3r.
E' decisamente meno sicuro di Irc.
Trovare un coder serio è più difficile di quanto possiate immaginare.( O anche un source)
A mio parere, in entrambi i casi vi servirà una conoscenza base nella programmazione per riuscire a mantenere in vita il progetto, altrimenti solamente soldi ....tanti soldi.
AGGIORNAMENTI
Avrei voluto postare la guida una volta che era interamente pronta.
Mi son reso conto, che solo per stendere una bozza su 2-3 argomenti, ho perso quasi 6 ore. (Scrivi, cancella, riscrivi, sistema graficamente).
Essendo uno dei pochi argomenti che mi son divertito a vedere sul mondo "dell'informatica", penso che in questi giorni ultimerò con tutte le informazioni necessarie, sistemerò e rivedrò alcune parti, tempo permettendo.
Inoltre mi serviva postarla per vedere come è venuta graficamente.
Le prossime cose che aggiungerò saranno:
*Tipologia di botnet(scam,spam - ddos - bruteforce)
*Metodi di flood(layer7, udp, syn, icmp, ecc.)
*Shell Booter client based
*Shell Booter web based
*Spreading
*Exploit packs (jdb, pdf, ecc.)
*Crypter
*Scanner
*una panoramica sul codice, voglia, tempo e conoscenza permettendo.
PS: Non mi aspetto che più di 3-4 persone leggano la guida, come mi aspetto che la gente inizierà a fare domande inutili, pm fastidiosi, risposte fastidiose e irritanti, ma se dovete farlo, almeno pensate bene a quel che dovete scrivere.
* Ringrazio D3m0n3 per alcune spiegazioni su irc e non solo
*Ringrazio Mauriziom per aver perso tempo con 200 versioni di visual c++ 6.0 non funzionanti