FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
monitorear un proceso para saber si ha sido "alterado"
Saludos a todos...necesito monitorear a otro programa en ejecución y saber cuando sea alterado por otro, por ejemplo cuando le inyecten una dll, he probado capturando varios de los mensajes del SO y aunque se puede hacer algo no consigo hacer lo que realmente quiero...si alguien ha trabajado algo de esto espero atentamente su ayuda...muy interesantes los temas de inyección de dlls y procesos....los voy a estudiar detenidamente para ver si saco algo de allí....
gracias.... |
#2
|
||||
|
||||
Detectar a las bravas si un proceso en ejecución e inyectado por otro no es tarea sencilla. Las inyecciones más habituales obligan al proceso anfitrión cargar una dll. El problema no es saber si cargó una dll, sino si esa carga no estaba concebida originalmente. Este tipo de inyección ejecuta en el proceso anfitrión la API LoadLibrary, que a su vez termina llamando a LdrLoadDll pasandole el parámetro de la ruta de la dll a inyectar. Si lo que quieres es proteger una aplicación propia, puedes hacerte a ti mismo un Hook a la API LoadLibrary, o mejor aún, a LdrLoadDll para conocer que dll va a ser cargada. Deberás contrastarla con una lista de dll legales para permitir o no la carga. Esa lista de dll será las que tu aplicación debe cargar para su normal funcionamiento.
Sin conocimiento de los procesos de inyección y Hook a la API, poco vas a poder desarrollar, por lo que lo primero es adentrarte en esos temas. Saludos. |
#3
|
||||
|
||||
Una forma de detectar el cambios es correrle un HASH previo y comparar con el guardado.
__________________
El malabarista. |
#4
|
|||
|
|||
gracias por responder en tan breve tiempo...
he probado la variante le un hook, lo he hecho a nivel de sistema y me informa de algunos mensajes que son enviados desde y hacia el programa que estoy monitoreando, demasiada información y nada realmente significativo....ya me he estudiado e implementado los procesos de inyección de dll, realmente interesantes pero no creo que se pueda sacar nada para hacer lo que necesito.... me gustaría saber más de la variante del HASH ... si no te es mucho problema me gustaría tener una explicación de su funcionamiento o un demo de cómo se hace y yo me ocupo de sacar lo que pueda.... gracias a ambos y saludos... |
#5
|
|||
|
|||
pd. al programa que voy a monitorear puede que se le inyecte una dll...pero no tengo forma de saber la lista de las posibles dlls a inyectarle...es por eso que estoy tratando de saber de cualquier alteración....eso debería incluir la inyección de cualquier librería....
|
#6
|
|||
|
|||
pd. otra vez.... disculpenme, es la primera vez que pongo un hilo y realmente no quisiera "meter la pata"...
el programa a monitorear no es mio, es un juego, de hecho es para monitorear que varios jugadores no "alteren" diferentes juegos mientras juegan en red...en eso estoy...y estoy estancadito en ese enorme detallito... así que será bienvenida toda la ayuda que me puedan dar en este punto... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Usar TServerSocket y TClientSocket para enviar "streams" más o menos "grandes" | dec | Internet | 9 | 04-08-2015 16:11:50 |
Como Evitar que la Pantalla se "blanquee" durante un proceso | oscarac | Varios | 9 | 21-07-2011 22:14:29 |
Error "Invalid Parameter" usando Tquery cuando proceso una consulta grande | CharlesWar | SQL | 5 | 18-06-2008 20:27:56 |
ayuda ejecutando un proceso como "SYSTEM" y haciendo que no se pueda terminar | lostprophets | Varios | 2 | 05-02-2008 02:28:50 |
ayuda "Detectando un proceso y ejecutando otro" | lostprophets | Varios | 1 | 29-01-2008 23:54:03 |
|