Definición
¿Qué es el anti-debugging?
El anti-debugging es una protección que evita que una aplicación sea analizada con un depurador mientras se ejecuta. Un depurador permite a un atacante pausar la ejecución, inspeccionar memoria, leer variables y recorrer la lógica línea a línea. Para alguien que hace ingeniería inversa de tu software, es la herramienta más poderosa que existe.
El anti-debugging le quita esa herramienta. La aplicación comprueba de forma continua si hay un depurador conectado y, cuando lo detecta, responde: termina el proceso, corrompe la sesión de debug o altera su propio comportamiento para que la ejecución observada sea engañosa.
Es una protección en tiempo de ejecución, de estilo RASP. No cambia cómo se ve tu código en disco. Cambia lo que pasa cuando alguien intenta observarlo en ejecución.
