En la auditoría de vulnerabilidades conocer a bajo nivel el funcionamiento de una aplicación (gracias al uso de ingeniería inversa) ayuda a comprender mejor el flujo de ejecución y a identificar el punto exacto en el que se vulnera al dispositivo.
Por regla general, las vulnerabilidades se detectan bien mediante el análisis del código (obtenido a través de ingeniería inversa) o bien mediante la detección de un crash y la posterior búsqueda del punto crítico que produce el fallo (en este tipo de ocasiones se suelen entrelazar fuzzing con ingeniería inversa).