Hola quisiera saber si es posible hacer lo siguiente.
Actualmente hago lo siguiente en la aplicación.
Seteo en mi aplicación una variable de entorno.
Ejecuto otra aplicación como proceso hijo que hereda dicha variable de entorno.
El proceso hijo tiene la función getContent() que obtiene el valor de dicha variable de entorno.
Lo que quiero hacer es modificar el contenido de dicha variable desde el proceso padre justo cuando el proceso hijo llame a getContent.
Quiero ejecutar el proceso hijo en modo debug por así decirlo, poder monitorearlo, y cuando detecte que está llamando a la función getContent, injectarle el código para que setee en la variable de entorno el valor que yo desee.
Mi pregunta es si se puede, cómo puedo ejecutar el proceso hijo en modo monitoreo por decirlo de alguna manera? y cómo saber desde el proceso padre cuando el puntero de ejecución del proceso hijo por así decirlo está en la entrada de una función específica.
Me encantaría poder aprender a hacer esto.
ptrace() es lo que te hace falta.
Saludos.
Para estas cosas se suelen usar los hook(Ganchos)
Basicamente lo que se hace es localizar la direccion de la funcion que quieres enganchar y modificarla en tiempo de ejecucion para que salte a la funcion que tu necesites
Saludos
Cómo podría hacer eso en windows más o menos Arkangel_0x7C5.
¿Podría detectar cuando el proceso hijo llame a la función GetEnvironmentVariable, y saber el parámetro que le está pasando???