Discussione Malware Web panel tor per il controllo delle backdoor

Stato
Discussione chiusa ad ulteriori risposte.
Ciao,
per creare un pannello sotto TOR, devi innanzitutto configurarti un server che funga da hidden service, su cui andrai a caricare poi i dati e il codice necessario. Volendo ci sono molti che affittano a pagamento i server come hidden services, ma non si sa' mai se ci si puo' fidare o meno [sia per quanto riguarda il pagamento, sia per quanto riguarda il fatto "non e' che mi frega i dati o comunque mi denuncia??"], quindi ti conviene creartene uno da solo che puoi gestirti in piena liberta' e senza che nessuno debba fornirti qualche servizio.

Per crearti un hidden services, ti serve innanzitutto una macchina che monti un server [vedi apache o nginx], e successivamente devi seguire gli step descritti nella guida ufficiale di TOR: https://www.torproject.org/docs/tor-onion-service.html.en .


Successivamente, si passa invece alla parte del codice: intanto bisogna dire che molto dipende su cosa si basa la backdoor: se e' comunica tramite IRC, allora ti servira' una chat IRC, quindi nulla a che fare con i server HTTP, mentre se si basa su una comunicazione socket-socket, cambiera' molto rispetto ad una HTTP.

Ora, su github trovi molti esempi di questa tipologia di backdoor, e in generale ti basta cercare "botnet" per trovare questa tipologia di codice.

Ora, io non so' come sia la backdoor che vuoi controllare dal pannello web, ne' so' quali conoscenze hai, ma in generale, quando si deve far comunicare un pannello con una backdoor, sono molto usati IRC [per la sua semplicita' nella gestione server-side], o le HTTP/s [poiche' e' il protocollo piu' usato e per altri motivi interessanti].
Facendo finta che la tua backdoor comunichi con un pannello [mi pare che ogni onion services possa avere ssl abilitato, quindi dovrebbe essere HTTPs, ma non vorrei dire stupidaggini], l architettura della botnet [la chiamo cosi' per accorciare e anche perche' e' spesso usato quest termine per identificare un agent [backdoor] che scambia info con un pannello C&C], sara' simile alla seguente:

bot [infettato con l agent] <---------------> tor <-----------------> pannello web <-------------> tor <-----------------> botmaster.
Come puoi vedere [soprattutto nel caso di botnet push, che sono quelle attive, in cui il botmaster puo' fornire comandi direttamente al bot], il pannello web funge da tramite per riportare il tutto al botmaster [il gestore della botnet] e successivamente per l invio di comandi.

La sua creazione e' piuttosto semplice se si organizza per bene: la parte del server e' composta dai file di backend che devono gestire i vari db contenenti i dati, e poi ci sono i file html [amagri renderizzati o usando template engine], che riportano info al web master. In particolari situazioni [botnet pull], il controllo e' passivo [al contrario delle push], quindi e' il bot che invia la prima richiesta per controllare se ci sono dei comandi da eseguire, mentre nel caso delle push, e' il server che richiama all ordine il bot interessato. La parte successiva del server e' la creazione di "API" per la comunicazione con la backdoor, dove questa possa comunicare i dati inerenti agli output o allo stato della macchina senza essere autenticati nel servizio. In particolare questo step deve essere creato bonificando gli input che arrivano, per evitare errori o problemi con input malformati o semplicemente mandati al server con altri scopi [ad esempio avere piu' info per un eventuale takeover del pannello].

Ora, la parte dell agent e' piu' semplice, e come detto sfrutta le "API" messe a disposizione dal server per comunicare info,stati e output dei comandi, che poi passeranno sotto TOR, arriveranno al pannello e potranno essere consultati dal botmaster, che a sua volta si collega al pannello sotto TOR, rendendo cosi' molto difficile farsi scoprire.

Come avrai capito, e' piu' semplice partire dal server e poi creare un agent ad hoc, che creare un pannello web da un agent gia' fatto.

Ad ogni modo, su github e' pieno di codice che puoi studiare, e se hai qualche dubbio chiedi pure ;)
 
Ciao,
per creare un pannello sotto TOR, devi innanzitutto configurarti un server che funga da hidden service, su cui andrai a caricare poi i dati e il codice necessario. Volendo ci sono molti che affittano a pagamento i server come hidden services, ma non si sa' mai se ci si puo' fidare o meno [sia per quanto riguarda il pagamento, sia per quanto riguarda il fatto "non e' che mi frega i dati o comunque mi denuncia??"], quindi ti conviene creartene uno da solo che puoi gestirti in piena liberta' e senza che nessuno debba fornirti qualche servizio.

Per crearti un hidden services, ti serve innanzitutto una macchina che monti un server [vedi apache o nginx], e successivamente devi seguire gli step descritti nella guida ufficiale di TOR: https://www.torproject.org/docs/tor-onion-service.html.en .


Successivamente, si passa invece alla parte del codice: intanto bisogna dire che molto dipende su cosa si basa la backdoor: se e' comunica tramite IRC, allora ti servira' una chat IRC, quindi nulla a che fare con i server HTTP, mentre se si basa su una comunicazione socket-socket, cambiera' molto rispetto ad una HTTP.

Ora, su github trovi molti esempi di questa tipologia di backdoor, e in generale ti basta cercare "botnet" per trovare questa tipologia di codice.

Ora, io non so' come sia la backdoor che vuoi controllare dal pannello web, ne' so' quali conoscenze hai, ma in generale, quando si deve far comunicare un pannello con una backdoor, sono molto usati IRC [per la sua semplicita' nella gestione server-side], o le HTTP/s [poiche' e' il protocollo piu' usato e per altri motivi interessanti].
Facendo finta che la tua backdoor comunichi con un pannello [mi pare che ogni onion services possa avere ssl abilitato, quindi dovrebbe essere HTTPs, ma non vorrei dire stupidaggini], l architettura della botnet [la chiamo cosi' per accorciare e anche perche' e' spesso usato quest termine per identificare un agent [backdoor] che scambia info con un pannello C&C], sara' simile alla seguente:

bot [infettato con l agent] tor pannello web tor botmaster.
Come puoi vedere [soprattutto nel caso di botnet push, che sono quelle attive, in cui il botmaster puo' fornire comandi direttamente al bot], il pannello web funge da tramite per riportare il tutto al botmaster [il gestore della botnet] e successivamente per l invio di comandi.

La sua creazione e' piuttosto semplice se si organizza per bene: la parte del server e' composta dai file di backend che devono gestire i vari db contenenti i dati, e poi ci sono i file html [amagri renderizzati o usando template engine], che riportano info al web master. In particolari situazioni [botnet pull], il controllo e' passivo [al contrario delle push], quindi e' il bot che invia la prima richiesta per controllare se ci sono dei comandi da eseguire, mentre nel caso delle push, e' il server che richiama all ordine il bot interessato. La parte successiva del server e' la creazione di "API" per la comunicazione con la backdoor, dove questa possa comunicare i dati inerenti agli output o allo stato della macchina senza essere autenticati nel servizio. In particolare questo step deve essere creato bonificando gli input che arrivano, per evitare errori o problemi con input malformati o semplicemente mandati al server con altri scopi [ad esempio avere piu' info per un eventuale takeover del pannello].

Ora, la parte dell agent e' piu' semplice, e come detto sfrutta le "API" messe a disposizione dal server per comunicare info,stati e output dei comandi, che poi passeranno sotto TOR, arriveranno al pannello e potranno essere consultati dal botmaster, che a sua volta si collega al pannello sotto TOR, rendendo cosi' molto difficile farsi scoprire.

Come avrai capito, e' piu' semplice partire dal server e poi creare un agent ad hoc, che creare un pannello web da un agent gia' fatto.

Ad ogni modo, su github e' pieno di codice che puoi studiare, e se hai qualche dubbio chiedi pure ;)
Lo chiamavano gorate l' enciclopedia vivente[emoji23]
 
Ciao,
per creare un pannello sotto TOR, devi innanzitutto configurarti un server che funga da hidden service, su cui andrai a caricare poi i dati e il codice necessario. Volendo ci sono molti che affittano a pagamento i server come hidden services, ma non si sa' mai se ci si puo' fidare o meno [sia per quanto riguarda il pagamento, sia per quanto riguarda il fatto "non e' che mi frega i dati o comunque mi denuncia??"], quindi ti conviene creartene uno da solo che puoi gestirti in piena liberta' e senza che nessuno debba fornirti qualche servizio.

Per crearti un hidden services, ti serve innanzitutto una macchina che monti un server [vedi apache o nginx], e successivamente devi seguire gli step descritti nella guida ufficiale di TOR: https://www.torproject.org/docs/tor-onion-service.html.en .


Successivamente, si passa invece alla parte del codice: intanto bisogna dire che molto dipende su cosa si basa la backdoor: se e' comunica tramite IRC, allora ti servira' una chat IRC, quindi nulla a che fare con i server HTTP, mentre se si basa su una comunicazione socket-socket, cambiera' molto rispetto ad una HTTP.

Ora, su github trovi molti esempi di questa tipologia di backdoor, e in generale ti basta cercare "botnet" per trovare questa tipologia di codice.

Ora, io non so' come sia la backdoor che vuoi controllare dal pannello web, ne' so' quali conoscenze hai, ma in generale, quando si deve far comunicare un pannello con una backdoor, sono molto usati IRC [per la sua semplicita' nella gestione server-side], o le HTTP/s [poiche' e' il protocollo piu' usato e per altri motivi interessanti].
Facendo finta che la tua backdoor comunichi con un pannello [mi pare che ogni onion services possa avere ssl abilitato, quindi dovrebbe essere HTTPs, ma non vorrei dire stupidaggini], l architettura della botnet [la chiamo cosi' per accorciare e anche perche' e' spesso usato quest termine per identificare un agent [backdoor] che scambia info con un pannello C&C], sara' simile alla seguente:

bot [infettato con l agent] <---------------> tor <-----------------> pannello web <-------------> tor <-----------------> botmaster.
Come puoi vedere [soprattutto nel caso di botnet push, che sono quelle attive, in cui il botmaster puo' fornire comandi direttamente al bot], il pannello web funge da tramite per riportare il tutto al botmaster [il gestore della botnet] e successivamente per l invio di comandi.

La sua creazione e' piuttosto semplice se si organizza per bene: la parte del server e' composta dai file di backend che devono gestire i vari db contenenti i dati, e poi ci sono i file html [amagri renderizzati o usando template engine], che riportano info al web master. In particolari situazioni [botnet pull], il controllo e' passivo [al contrario delle push], quindi e' il bot che invia la prima richiesta per controllare se ci sono dei comandi da eseguire, mentre nel caso delle push, e' il server che richiama all ordine il bot interessato. La parte successiva del server e' la creazione di "API" per la comunicazione con la backdoor, dove questa possa comunicare i dati inerenti agli output o allo stato della macchina senza essere autenticati nel servizio. In particolare questo step deve essere creato bonificando gli input che arrivano, per evitare errori o problemi con input malformati o semplicemente mandati al server con altri scopi [ad esempio avere piu' info per un eventuale takeover del pannello].

Ora, la parte dell agent e' piu' semplice, e come detto sfrutta le "API" messe a disposizione dal server per comunicare info,stati e output dei comandi, che poi passeranno sotto TOR, arriveranno al pannello e potranno essere consultati dal botmaster, che a sua volta si collega al pannello sotto TOR, rendendo cosi' molto difficile farsi scoprire.

Come avrai capito, e' piu' semplice partire dal server e poi creare un agent ad hoc, che creare un pannello web da un agent gia' fatto.

Ad ogni modo, su github e' pieno di codice che puoi studiare, e se hai qualche dubbio chiedi pure ;)
Grazie mille
 
Stato
Discussione chiusa ad ulteriori risposte.