elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
22 Mayo 2012, 20:57  


Tema destacado: Entra al canal IRC oficial de #elhacker.net

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Análisis y Diseño de Malware (Moderadores: Karcrack, [Zero])
| | |-+  Conexión remota, problema al utilizar 2 procesos a la vez con cliente
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Conexión remota, problema al utilizar 2 procesos a la vez con cliente  (Leído 1,902 veces)
chema200

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« en: 17 Febrero 2010, 12:56 »

Hola muy buenas, pues escribo este post para que me deis algunas ideas para seguir con mi aplicación.

Os comento, mi aplicaciones está echa en java, es un cliente-Servidor que está echa con sockets e hilos, tengo un servidor al que se
pueden conectar unos 10 clientes.

Cuando se conecta un cliente, creo un hilo para tal cliente, en el cual incluyo (DatainputStream,DataOutputStream,ObjectOutputStream,etc...) para
la comunicación con el cliente.

Una vez establecida la conexión con un cliente, por ejemplo, tengo unas ventanas (Captura de pantalla del cliente y captura de teclas). Si utilizo la
captura de pantalla va perfectamente, o si a su vez utilizo la captura de teclas también, siempre que pare una y encienda otra van de lujo.

El problema es cuando intento utilizar las dos ventanas a la vez sin parar nada, es decir quiero seguir capturando teclas y ver la pantalla remota, pues
cuando las utilizo a la vez me casca un pete y mi pregunta es:

¿debo crear mas hilos a su vez por cada "ventana con el cliente" ? ¿O hay alguna otra forma que sepais?
¿Puede ser problema de mis DataImputs, DataOutputs.. ? Se que deberia de cerrarlos pero como los quiero utilizar a la vez no puedo cerrarlos.

También he mirado lo de sincronizar sockets,hilos, etc... pero prefiero informarme antes y ver las posibles soluciones.

Si alguien me puede ayudar con alguna idea lo agradeceré.

Gracias, saludos.
En línea
[Zero]
Moderador
***
Desconectado Desconectado

Mensajes: 1.057


CALL DWORD PTR DS:[0]


Ver Perfil WWW
Re: Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« Respuesta #1 en: 17 Febrero 2010, 13:38 »

Si quieres ejecutar dos funciones simultaneamente, si, tendrás que crear un hilo para cada función, aunque yo te aconsejo lo siguiente, la mayoría de funciones no necesitan un nuevo hilo, vamos, que que la aplicación no pueda ver la pantalla y ver la webcam al mismo tiempo no es demasiado problema, puedes obligar a que se cierre una para iniciar la otra y no te complicas. Pero con el keylogger es diferente, pues siempre debe de estar capturando teclas. Yo te recomiendo que crees un hilo para el keylogger, que esté siempre capturando las teclas y guardandolas en un .txt, luego cuando quieres iniciar el keylogger desde el cliente, pues inicias otra instancia del keylogger para que a la vez de guardar las teclas en el txt, te las envie a ti, y luego una opción para recuperar lo que guardó en el .txt. Cuando quieras iniciar otra vez la captura de pantalla, cierras el hilo que te mandaba las teclas a ti y quedará activo el que guardaba los logs en el txt.

Saludos
En línea


“El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche
chema200

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« Respuesta #2 en: 17 Febrero 2010, 13:56 »

Vale esa opción la contemplé, de dejar que sólo pueda abrir una ventana, pongamos que decido hacerlo así pero quiero implementar lo del keylogger.

Entonces cuando se conecta un cliente, además del hilo que creo para hacer las conexiones con él, tranferencias de imagenes, datos etc.. Creo uno nuevo,
este nuevo que socket utilizaria el mismo no? es que no cojo la manera de hacerlo, si puedes dime la idea asi por lo alto y yo lo implemento.
¿Sería así?

Perdón por tanto preguntar, he hecho muchas cosas en JAVA pero es mi primera aplicacion con sockets e hilos.

Saludos y gracias.
En línea
Jaixon Jax


Desconectado Desconectado

Mensajes: 855



Ver Perfil
Re: Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« Respuesta #3 en: 17 Febrero 2010, 14:27 »

  Al momento de aceptar la conexion el so crea un identificador en memoria donde va ha escribir los datos mque entran y salen este identificador se conoce como SOCKET el puerto es el mismo pero son varios sockets cada cliente tienen su socket entonce en un thread escuchas peticiones de conexiones y cuando aceptas la conexion crea otro thread pasandole el socket para que escuche por dicho puerto y dicho socket .....
En línea

Tricalogo del buen forista:
  1.- No postear en hilos de Politica, ni religion, ni feminismo ni Machismo .....
  2.- Nunca solicitar ayuda por MP a alguien del staf .... ellos nunca responden ....
  3.- Aplaudir todos los "aportes" del staf aunque no los entiendas, o creas que no tienen importancia eso es buena onda ....
chema200

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« Respuesta #4 en: 17 Febrero 2010, 15:09 »

Haber te voy a poner aquí la estructura que sigo, y lo que yo he entendido según lo que me has explicado y ya me dices.

Esto es lo que tengo yo ahora, te lo comento muy por encima:
 
PARTE DEL SERVIDOR:

 - Tengo un servidor que escucha peticiones, cuando se conecta un cliente crea un hilo para ese cliente (ClaseHiloServidor) y su correspondiente socket en esta clase.
Este hilo es una clase con el método run que se encargar de recibir los datos y las "cosas" del cliente.
   
PARTE DEL CLIENTE:

- Cliente que cuando arranca, crea un hilo en el cual tengo un case. Aquí recibo las ordenes de una clase del servidor, y según lo que reciba hace una cosa u otra, seguidamente envia a la (ClaseHiloServidor) lo pedido.

Esto es lo que tengo y ahora lo que yo he entendido de lo que me has explicado.

En la parte del servidor cuando creo un hilo y socket para el cliente creo un nuevo hilo, es decir, instancio una nueva clase que implemente Thread la cual va a recibir un socket, que será el mismo recibido en el primer hilo, y en esta clase es donde tengo q recoger los datos enviados para el keylogger.

¿Es así? y si es así, otra pregunta en el cliente lo dejo como está? o tengo que crear tambien otro nuevo hilo para lo del keylogger.

Saludos.
En línea
chema200

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Conexión remota, problema al utilizar 2 procesos a la vez con cliente
« Respuesta #5 en: 18 Febrero 2010, 14:59 »

Ya lo he entendido, he hecho una prueba y va de lujo, en el hilo q espera las onexiones de los "clientes" arranco un nuevo hilo (en este caso para el keylogger), el cual va a esperar las teclas del cliente. A este nuevo hilo le paso el sockets del cliente
y va del carajo, muchas gracias por las respuestas.


Saludos.
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Archos 7c tablet problema con procesos
Dispositivos Móviles (PDA's, Smartphones)
Chero 0 451 Último mensaje 22 Enero 2012, 03:59
por Chero
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines