La ingeniería inversa… es el proceso de descubrir los principios tecnológicos de un dispositivo, objeto o sistema, a través de razonamiento abductivo de su estructura, función y operación.
Aplicar ingeniería inversa a algo supone profundizar en el estudio de su funcionamiento, hasta el punto de que podamos llegar a entender , modificar y mejorar dicho modo de funcionamiento.
La ingeniería inversa en software significa descubrir qué hace el software sin tener el código fuente programado del mismo.
Técnicas de ingeniería inversa de software Desensamblar ( traduce el lenguaje de máquina a lenguaje ensamblador ) una aplicación empleando un desensamblador. Descompilar (proceso que intenta recrear el código fuente en un lenguaje de alto nivel de un programa compilado). Análisis a través de la observación del intercambio de información.