VB RAT con Visual Basic

Stato
Discussione chiusa ad ulteriori risposte.

LinkOut

Utente Bronze
6 Febbraio 2015
45
11
12
49
Ciao a tutti! Vorrei cimentarmi nella creazione di un RAT con visual basic. Ho letto un pò a riguardo e ho visto che ciò è difficile ma non impossibile. Lo dico prima che qualcuno lo chieda: no, non devo creare trojan, devo semplicemente controllare alcuni computer sia in lan che attraverso internet senza affidarmi a programmi tipo TeamViewer visto che il controllo del desktop non è indispensabile. In più lo faccio per motivi di studio e per approfondire le mie conoscenze. Purtroppo non mi sono chiari alcuni concetti..
Come faccio a gestire connessioni multiple provenienti dai diversi computer? In modo da non dover riavviare l'applicazione per collegarmi ad un pc diverso.. ho letto qualcosa a proposito del Multi-Threading ma non ho capito come implementarlo, se qualcuno può gentilmente spiegarmelo :S
Un'altra cosa veramente basilare che quasi mi vergongo a scriverla lol, come posso elencare tutti i pc disponibili in una ListView/ListBox? e da qui accedere alle funzioni disponibili
Purtroppo sono elementi che nei miei progetti non ho mai usato
Grazie infinite a chi dedicherà qualche minuto del suo tempo ad aiutarmi :)
 
Per il multi threading ti sto per inviare una guida in PM così che tu possa capire come funziona. Per la listbox devi prima convertire gli "oggetti" che ti vengono fuori (quindi tutti i tuoi computer) in modo da inserirli in una listbox con i seguenti metodi : lst1.items.add ("computer") oppure creando un array che contiene tutti i tuoi computer e aggiungerlo: lst1.items.addrange("computer"). Spero di essere stato d'aiuto!
 
  • Mi piace
Reazioni: LinkOut
Innanzi tutto grazie mille per la risposta tempestiva :)
Per la guida ora guardo, per la listbox, ok, però nell'ipotetico comando lst1.items.add tra parentesi dovrei inserire l'oggetto associato al TCPClient? e quando i client sono più di uno? Panico D:
Ti ringrazio ancora, ora mi leggo la guida faccio qualche esperimento e ti faccio sapere :)
 
Dovresti inserire tutti i client all'interno di un array (client(i)) attraverso un ciclo for e poi aggiungere l'array con l'addrange alla listbox. Sicuramente avrai problemi di conversione perché nella listbox vanno solo stringhe e integer quindi o li converti in stringa oppure li potresti aggiungere in un database (magari in access se ti viene più facile e lo vuoi tenere in locale) e aggiungerlo come datasource.
 
Per il multi threading ti sto per inviare una guida in PM così che tu possa capire come funziona. Per la listbox devi prima convertire gli "oggetti" che ti vengono fuori (quindi tutti i tuoi computer) in modo da inserirli in una listbox con i seguenti metodi : lst1.items.add ("computer") oppure creando un array che contiene tutti i tuoi computer e aggiungerlo: lst1.items.addrange("computer"). Spero di essere stato d'aiuto!
Perchè PM? Non è utile dare assistenza tecnica via PM. Dovresti condividere il link della guida così potrà aiutare magari qualcun altro.
Non c'è bisogno di creare un'array.
Esempio: io voglio creare una chat, attraverso l'evento di lettura visualizzo chi si è connesso, quindi lo metto direttamente in lista con il suo nome, perchè complicarsi la vita in questo caso?
convertirli? Di norma io metterei nel server una semplice classe e ci dichiaro ad esempio una variabile name e assegno il nome alla lista quando vedo chi si è connesso, e a seguire aggiorno gli user.
Appena ricevo il messaggio, faccio allora così:
listbox1.items.clear() ' pulisco la lista
For i = 1 to messaggio.Length - 1
listbox1.items.add(messaggio(i))
next
con il for aggiungo ad uno ad uno tutti gli utenti che ricevo.
 
  • Mi piace
Reazioni: LinkOut
Allora, sicuramente starai utilizzando una connessione sincrona...
Quando arriva una connessione, non devi chiudere il Socket che funge da Server, ma devi rimetterlo in ascolto...
Però prima di fare ciò devi prendere il client ed aggiungerlo ad una lista, che può essere ListView oppure una variabile di tipo List(Of T).
Se lo aggiungi alla listview, devi assegnare al tag dell'item il Socket.
Se hai bisogno di consigli e/o correzioni del codice dimmi pure :bananajackson:
 
  • Mi piace
Reazioni: LinkOut
Grazie infinite a tutti quanti! Scusate il ritardo ma sono stato fin troppo impegnato in questi giorni.. Comunque, anche se l'idea di riuscire a creare un rat personale mi attira, è un'impresa tutt'altro che semplice, in relazione alle mie conoscenze. Grazie ai vostri consigli sono riuscito un attimo ad organizzare le cose ma c'è ancora molto. Spero di trovare un po di tempo per studiarmi i codici e riuscire a combinare qualcosa. Se qualcuno se la sente di aiutarmi magari anche in questo thread ve ne sarei grato :orgoglio:
 
Allora, sicuramente starai utilizzando una connessione sincrona...
Quando arriva una connessione, non devi chiudere il Socket che funge da Server, ma devi rimetterlo in ascolto...
Però prima di fare ciò devi prendere il client ed aggiungerlo ad una lista, che può essere ListView oppure una variabile di tipo List(Of T).
Se lo aggiungi alla listview, devi assegnare al tag dell'item il Socket.
Se hai bisogno di consigli e/o correzioni del codice dimmi pure :bananajackson:
non ho capito ... stai parlando con me? o stai scherzando? se si sei messo un pochino male.
 
Stato
Discussione chiusa ad ulteriori risposte.