Proceso que se utiliza para descomponer y analizar un producto, generalmente software, con el objetivo de entender su funcionamiento interno, su estructura y su diseño.
Este método permite a los profesionales de la ciberseguridad desensamblar un código binario de un programa cuando su código fuente no está disponible, proporcionando así una visión detallada de su funcionamiento.
La ingeniería inversa puede emplearse en el análisis de malware para entender su comportamiento y desarrollar estrategias de mitigación, así como en el ámbito de la protección de la propiedad intelectual y en la mejora de la interoperabilidad del software.