Cita:
Empezado por Nipx4215
No se puede desempacar, por eso es que lo hacen en memoria
|
Algunos compresores permiten la acción contraria, no se que sucede con el que tu usarás.
Cita:
Empezado por Nipx4215
...si lo lanzan por el explorer no podrán modificarlo ni en memoria, no veo la forma. Si es lanzado por un programa diferente tengo programado que no arranque siquiera.
|
Lo lances como lo lances siempre existirá un proceso, un pid y un hProcess para usar las APis de lecto-escritura de la memoria de otro proceso.
Cita:
Empezado por Nipx4215
...aunque son técnicas antidebugged, y como comentaba en el post 8 no aplica acá, no sería detectado
|
Si lees el artículo verás que habla también de sus fallos y antídotos, dan ideas de como evitar el antidebuger
Cita:
Empezado por Nipx4215
Por lo que he estado buscando, no hay solución conocida, como mencionaba anteriormente, la única solución viable sería buscar que atributo no es heredado y rascarle por ahí
|
No hay solución conocida, tampoco la forma de leer los atributos heredados. GetStartupInfo no encuentra la estructura STARTUPINFOEX, de donde se podrían extraer conclusiones interesantes, siempre devuelve STARTUPINFO. Hice algunas pruebas sin resultado práctico. Me llama la atención que M$ no tenga previsto esto.
De todas formas, no veo claro que si encuentras el verdadero padre, puedas evitar la lectura/escritura en el espacio de memoria de tu proceso. Los sistemas que tratan de evitarlo usan Hooks a esas APIs, máquinas virtuales e incluso código en ring0.
Saludos.