Hablando hipotéticamente (ya que no estás pidiendo detalles específicos), es posible. Sin embargo, no es 100% confiable y siempre hay soluciones.
Primero, si sus datos seguros son 1-8 bytes y se ejecuta en x86, puede establecer un punto de interrupción de hardware que se activará cuando se acceda a estos datos. Ver. por ejemplo, enlace
Si necesita proteger más de 32 bytes (hay 4 registros de puntos de interrupción de hardware), puede usar VirtualProtect con PAGE_GUARD, o hacer que la página sea ilegible (PAGE_NOACCESS).
Cuando necesita acceder a los datos usted mismo, elimina la marca / punto de interrupción, accede a los datos y los restaura. Esto, por supuesto, crea la condición de carrera, pero la ventana de oportunidad es corta.
Por supuesto, si alguien tiene una aplicación con un controlador de kernel, puede eliminar los puntos de interrupción del hardware o cambiar las marcas de la página de la aplicación a través del controlador del kernel, por lo que esto no funcionará. Sin embargo, si solo usan el controlador para ocultar la aplicación, esto debería funcionar.