Los futuros procesadores Intel admitirán SGX (Software Guard Extensions), que permite ejecutar software crítico para la seguridad en su procesador de forma aislada del resto de código. El hardware proporciona un aislamiento seguro, por lo que otros códigos no pueden manipular el código crítico de seguridad que se ejecuta en el enclave SGX. Incluso el kernel del sistema operativo no es confiable y no puede manipular el código en el enclave SGX. El enclave en sí no tiene estado, pero hay una manera de guardar datos en el almacenamiento externo de forma segura: el hardware admite el almacenamiento sellado, donde los datos se cifran y se envían por MAC antes de escribirlos en el disco.
¿Hay alguna garantía de actualización de datos sellados? En otras palabras, me preocupa un ataque de reversión, donde un sistema operativo malintencionado intenta revertir el estado del enclave a un punto anterior en el tiempo: por ejemplo, compruebe el estado guardado, ejecute el enclave durante un tiempo y luego restaure. Regreso al punto de control. ¿Puede el código SGX defenderse contra tales ataques de retroceso? Si es así, ¿cómo?