Estamos desarrollando un dispositivo para identificar de forma segura a los usuarios desde la nube.
Entre las diversas funciones de seguridad o el dispositivo, planeamos permitir que el usuario descargue y actualice un firmware personalizado. Nos preocupa que un atacante obtenga acceso físico al dispositivo y altere su firmware.
El firmware personalizado se generará en la nube y contendrá un identificador único y funciones únicas. La compilación incluirá directivas específicas para que el desplazamiento del identificador único cambie de forma aleatoria. El identificador único y las funciones únicas se utilizarán para identificar de forma segura el dispositivo y el usuario.
Queremos asegurarnos de que el dispositivo ejecute un firmware original, ya que un firmware falsificado podría comprometer otras características de seguridad (cifrado, etc.).
¿Qué piensas de nuestro enfoque?
Creemos que sería muy difícil para un atacante desarrollar un firmware o dispositivo falsificado que lea el firmware personalizado descargado de la nube cuando el usuario intente actualizarlo, desmontarlo y analizarlo para recuperar el identificador único y las funciones únicas, y use esta información para clonar el comportamiento del dispositivo.