El sistema operativo systemd ha implementado en su versión 262 un mecanismo de seguridad conocido como NvPCR (Non-volatile PCR) para resolver la escasez de registros de medición (PCR) disponibles en las tarjetas de seguridad TPM. Esta solución permite a systemd registrar eventos de seguridad específicos, como el inicio de sesión de usuarios, sin comprometer la integridad de los secretos locales que dependen de los PCRs estándar. En la versión anterior, v259, los NvPCR se asignaban en la memoria no volátil de la TPM, pero su diseño de anclaje presentaba vulnerabilidades de seguridad. El nuevo diseño en v262 reworkea este mecanismo para aumentar la resistencia ante ataques de recuperación de secretos. El artículo técnico detalla cómo construir estos registros desde cero utilizando un TPM de software, explicando la estructura de los índices NV de la TPM y cómo se extienden con mediciones. Se analiza por qué es necesario separar los eventos impredecibles de los PCRs críticos para la desbloqueo de discos y la atestación remota, y se explica cómo el nuevo anclaje previene que un atacante replantee valores de PCR para comprometer la seguridad del sistema. Este enfoque es crucial para sistemas que requieren cifrado sin contraseña y atestación remota robusta, garantizando que las credenciales se desbloqueen solo en entornos de arranque legítimos y verificables.
