Ciao,
un RAT e' principalmente una backdoor che ti consente di ottenere il controllo totale della macchina che infetti con l agent, ed e' spesso adottato per la creazione di botnet push mode.
Principalmente, puoi immaginarne la struttura come 2 socket comunicanti: uno funge da server, ed e' quello che fai installare sulla macchina target, in modo da creare una reverse shell, mentre l altro funge da client, e quindi lo utilizzi per collegarti alla macchina target in ascolto e per inviargli comandi.

Naturalmente da queste cose cosi' semplici si passa a cose ben piu' complesse, come botnet pull mode [a breve rilasciero' un tutorial su come crearne una in Python], ma puoi anche crearne una usando protocolli come ssh, http, irc ....., in modo da avere maggiori possibilita' di riuscita.

Ora, nel caso di un RAT essenziale, la struttura e' la seguente:
Codice:
botmaster <-------> pannello C&C <---------> bot [macchina vittima]
, e come vedi la richiesta [quindi un comando], viene mandato dal botmaster, che attraverso il pannello di controllo [Command & Control], recapita letteralmente i comandi impartiti al bot. Questo a sua volta li esegue, e rimanda l output al pannello, che lo rendera' visualizzabile al botmaster. Come noti, poiche' e' la richiesta esterna ad essere in entrata sulla macchina target, c'e' il pericolo che un eventuale firewall blocchi il traffico. Inoltre, l adozione di un pannello esterno alla tua macchina, magari sotto Tor, e' importante poiche' rende molto piu' facile governare i bot, e allo stesso tempo la risposta non arriva a te, ma ad un host sotto Tor che tu puo raggiungere, dunque tra te e la vittima, non ci sarebbe un collegamento diretto [
Codice:
botmaster [nella stessa macchina vi e' il C&C panel] <-------------> target
], ma ottieni un collegamento oscurato da 6 proxy Tor ..... 3 della vittima per mandare l out al pannello e 3 tuoi nel raggiungere lo stesso, rendendo il tutto molto anonimo [
Codice:
botmaster <------ TOR [3 proxy] ---------> Pannello C&C <------- TOR [3 proxy] -------> target
].

Sinceramente, trovo che studiare concetti cosi' su youtube non sia il massimo, dato che perdi la parte teorica [il piu' delle volte], e non apprendi nel modo migliore che un programmatore puo' attuare: sbagliando.
Ogni errore ti fortifica, ti da' modo di trovare strade migliori o vie traverse, ed e' sicuramente scocciante, ma utilissimo per aumentare le proprie capacita'.

Per capire bene come programmarle, assieme ai moduli di keylogging, piuttosto che quelli per gli screenshot, ti conviene dare un occhiata su Github, dove con pochissimo troverai centinaia, anzi migliaia di progetti con codice in Python, in C, in Java e in molti altri linguaggi.
 
  • Mi piace
Reazioni: driverfury
Ciao,
un RAT e' principalmente una backdoor che ti consente di ottenere il controllo totale della macchina che infetti con l agent, ed e' spesso adottato per la creazione di botnet push mode.
Principalmente, puoi immaginarne la struttura come 2 socket comunicanti: uno funge da server, ed e' quello che fai installare sulla macchina target, in modo da creare una reverse shell, mentre l altro funge da client, e quindi lo utilizzi per collegarti alla macchina target in ascolto e per inviargli comandi.

Naturalmente da queste cose cosi' semplici si passa a cose ben piu' complesse, come botnet pull mode [a breve rilasciero' un tutorial su come crearne una in Python], ma puoi anche crearne una usando protocolli come ssh, http, irc ....., in modo da avere maggiori possibilita' di riuscita.

Ora, nel caso di un RAT essenziale, la struttura e' la seguente:
Codice:
botmaster <-------> pannello C&C <---------> bot [macchina vittima]
, e come vedi la richiesta [quindi un comando], viene mandato dal botmaster, che attraverso il pannello di controllo [Command & Control], recapita letteralmente i comandi impartiti al bot. Questo a sua volta li esegue, e rimanda l output al pannello, che lo rendera' visualizzabile al botmaster. Come noti, poiche' e' la richiesta esterna ad essere in entrata sulla macchina target, c'e' il pericolo che un eventuale firewall blocchi il traffico. Inoltre, l adozione di un pannello esterno alla tua macchina, magari sotto Tor, e' importante poiche' rende molto piu' facile governare i bot, e allo stesso tempo la risposta non arriva a te, ma ad un host sotto Tor che tu puo raggiungere, dunque tra te e la vittima, non ci sarebbe un collegamento diretto [
Codice:
botmaster [nella stessa macchina vi e' il C&C panel] <-------------> target
], ma ottieni un collegamento oscurato da 6 proxy Tor ..... 3 della vittima per mandare l out al pannello e 3 tuoi nel raggiungere lo stesso, rendendo il tutto molto anonimo [
Codice:
botmaster <------ TOR [3 proxy] ---------> Pannello C&C <------- TOR [3 proxy] -------> target
].

Sinceramente, trovo che studiare concetti cosi' su youtube non sia il massimo, dato che perdi la parte teorica [il piu' delle volte], e non apprendi nel modo migliore che un programmatore puo' attuare: sbagliando.
Ogni errore ti fortifica, ti da' modo di trovare strade migliori o vie traverse, ed e' sicuramente scocciante, ma utilissimo per aumentare le proprie capacita'.

Per capire bene come programmarle, assieme ai moduli di keylogging, piuttosto che quelli per gli screenshot, ti conviene dare un occhiata su Github, dove con pochissimo troverai centinaia, anzi migliaia di progetti con codice in Python, in C, in Java e in molti altri linguaggi.
Copia incolla per non concludere nulla.
 
? Se intendi su github non e' assolutamente vero, sei tu che devi studiarti come viene organizzato il progetto, quali strutture usa ecc..., le fai tue e poi fai un progetto da 0.

Se intendi altro non capisco a cosa ti riferisci
 
Se vuoi un consiglio.. Impara un linguaggio semplice come python, per esempio, e mettici un po di testa dentro e prova a creartelo da solo. Dopo vedrai, non è complicato come magari immaginavi.
P.S Esistono tante guide sul web per imparare linguaggi di programmazione, magari cercane una.

Ti auguro una buona continuazione sul forum.
 
Se conosci il Python già sei a metà dell'opera.

Ti consiglio di seguire questi step:
1. Impara come funzionano le socket (e i layer di rete coinvolti)
2. Scarica netcat e inizia a far comunicare 2 dispositivi nella tua LAN
3. Crea prima una bind shell e poi una reverse shell in python
4. Scrivi il client di una reverse shell in C o C++ (il server puoi scriverlo tranquillamente in python o addirittura usare netcat)
 
  • Mi piace
Reazioni: 0xbro