Gestión adecuada de la clave secreta

3

En este momento, estoy pensando que para todas las solicitudes entrantes, mi servidor verificará la token de la solicitud contra la token construida a partir de la clave secreta global de mi aplicación para verificar su autenticidad. La única forma de que alguien pueda hackear es ganando el control de mi servidor. nuevamente, si alguien logró controlar su servidor, está tostado, todo ha terminado, no se puede tomar ninguna medida para detener al atacante. ¿Hay algún defecto en este argumento?

    
pregunta user95719 31.12.2015 - 03:42
fuente

1 respuesta

2

En realidad, hay algunos medios por los cuales podrías dificultar un ataque o limitar el impacto de una brecha aquí.

Uno está usando secretos por usuario y almacenándolos por separado. El servidor solo los vería en la memoria y alguna forma de fragmentación del servidor por usuario podría usarse para limitar la cantidad de secretos por usuario expuestos a un solo servidor comprometido.

Otro está usando un sistema KMS separado que genera o valida tokens. Ese sistema también debería endurecerse, pero un atacante tendría que romper varias capas de su sistema para robar los secretos. En algunos sistemas KMS, las claves se almacenan en el TPM, por lo que incluso un compromiso suave de KMS no perdería las claves. Tendrían que robar el hardware en sí mismo para que los ataques fuera de línea de tus tokens estén diseñados de manera efectiva.

Tenga en cuenta que el sistema de token puede no ser el enlace más débil aquí. Es bueno aislarlo para fortalecerlo, pero para tener una seguridad general efectiva, debe tomar decisiones de defensa basadas en un modelo de amenaza del sistema en el que se implementa este componente.

    
respondido por el Alain O'Dea 02.01.2016 - 16:14
fuente

Lea otras preguntas en las etiquetas