Por lo que sé, en iOS hay tres técnicas para enganchar funciones:
- cargar la biblioteca usando DYLD_INSERT_LIBRARIES
- redirección de la tabla de símbolos importada mediante anzuelo
- parchea las funciones cuando ya están cargadas, es decir, ya están en la memoria usando substrato MSHookFunction
Esto expone los problemas de seguridad, así que quiero poder detectar cuándo suceden tales cosas. Para el punto número 1, puedo aplicar la verificación del puntero a la función para detectar. Sin embargo, para 2 y 3, no he tenido ninguna idea. Estoy muy agradecido por las ideas que se pueden hacer para abordar el problema.