Glosario de Automatización • Clave de actualización vs clave de sesión

¿Cuál es la diferencia entre una clave de actualización y una clave de sesión DNP3?

Ingeniería Merobix • • 8 min de lectura

La Autenticación Segura de DNP3 protege los comandos críticos con un código de autenticación de mensaje, pero ese esquema solo funciona si el maestro y la estación remota comparten claves secretas - y cómo se gestionan esas claves es donde vive buena parte de la ingeniería real. El diseño usa a propósito dos niveles: una clave de actualización de larga vida que cambia rara vez y una clave de sesión de corta vida que cambia seguido. Esta guía explica por qué existe la separación, cómo funciona la transacción de cambio de clave de sesión, por qué comprometer una clave de sesión hace mucho menos daño que comprometer la clave de actualización, y cómo la carga continua de gestionar claves moldea la forma en que la Autenticación Segura DNP3 realmente se despliega.

Volver al glosario

Clave de actualización vs clave de sesión en una línea: En la Autenticación Segura de DNP3, la clave de actualización es un secreto precompartido y de larga vida que un maestro y una estación remota tienen en común, usado solo para entregar de forma segura nuevas claves de sesión. Las claves de sesión son secretos de corta vida, rotados con frecuencia, que en realidad autentican los mensajes críticos del día a día. El diseño de dos niveles significa que una clave de sesión robada es inútil en poco tiempo, mientras que la clave de actualización, mucho más valiosa, se usa rara vez y se puede proteger con más rigor.

Dos niveles de claves y por qué existe la separación

La Autenticación Segura de DNP3 no usa una sola contraseña compartida para proteger todo. Superpone dos tipos de claves con vidas y trabajos muy distintos. La clave de actualización es el secreto raíz: una clave precompartida que el maestro y una estación remota dada retienen ambos, establecida fuera de banda cuando se configura la estación remota. Es de larga vida y cambia con poca frecuencia, y su único papel es proteger la entrega de claves de sesión - es una clave usada para entregar otras claves. Las claves de sesión son lo que el sistema en marcha usa momento a momento; son las claves que entran en el HMAC calculado sobre cada mensaje crítico para probar autenticidad.

La razón de la separación es apartar un secreto de alto valor y uso poco frecuente de uno de uso frecuente y menor valor. Cada comando autenticado toca una clave de sesión, así que las claves de sesión quedan expuestas constantemente al tráfico del enlace. Si un sistema dependiera de una sola clave permanente para todo, esa clave sería a la vez muy usada y catastrófica de perder. Al usar en cambio claves de sesión para el trabajo constante y guardar la clave de actualización en reserva únicamente para refrescarlas, el diseño limita cuánto daño puede hacer cualquier clave expuesta. Es un patrón clásico de jerarquía de claves aplicado al control industrial: una clave durable en la cima que cambia rara vez, y claves de trabajo desechables debajo que cambian seguido.

Ayuda pensar en la clave de actualización como la credencial que establece una relación de confianza y en las claves de sesión como los tokens temporales que esa relación de confianza sigue emitiendo. La clave de actualización dice quiénes son estas dos partes entre sí; las claves de sesión son la prueba de corta vida usada en cada transacción real. El maestro y la estación remota normalmente mantienen las claves de sesión de forma direccional, de modo que las claves que protegen los mensajes en un sentido son distintas de las del otro, lo que reduce todavía más lo que expone cualquier clave comprometida.

La transacción de cambio de clave de sesión

Las claves de sesión no permanecen válidas para siempre - están pensadas para reemplazarse con regularidad, y DNP3 define un intercambio específico para hacerlo. En la transacción de cambio de clave de sesión, el maestro genera claves de sesión frescas y las entrega a la estación remota protegidas por la clave de actualización. Como la clave de actualización es el secreto compartido que ambos lados ya retienen, la estación remota puede verificar que las nuevas claves de sesión vinieron genuinamente del maestro autorizado y no fueron manipuladas en tránsito. Una vez que el cambio se completa, ambos lados cambian a las nuevas claves de sesión para los mensajes autenticados subsiguientes, y las claves de sesión previas se retiran.

La rotación se dispara por política y no se deja al azar. Una estación remota se configura típicamente para expirar las claves de sesión tras un intervalo fijo o tras cierta cantidad de mensajes autenticados con ellas, lo que ocurra primero. Cuando se alcanza cualquiera de los límites, las claves se consideran caducas y se requiere un nuevo cambio de clave de sesión antes de que las operaciones críticas puedan seguir autenticando. Esta vida acotada y automática es central para el modelo de seguridad: garantiza que incluso claves que nadie sospecha comprometidas se descarten y reemplacen de forma rutinaria, de modo que la ventana durante la cual cualquier clave de sesión dada es válida sea deliberadamente corta.

La clave de actualización, en cambio, se cambia rara vez y mediante un proceso mucho más deliberado, ya que reemplazarla restablece la raíz de confianza entre las dos partes. Algunos despliegues la actualizan manualmente durante el mantenimiento; entornos más sofisticados usan instalaciones dedicadas de gestión de claves para distribuir claves de actualización a través de muchos dispositivos. En cualquier caso, un cambio de clave de actualización es un evento poco frecuente y controlado con cuidado, mientras que un cambio de clave de sesión es uno rutinario, frecuente y automatizado - y esa asimetría es exactamente la intención.

Radio de impacto y la carga de gestión de claves en el campo

La recompensa del diseño de dos niveles es un radio de impacto pequeño cuando una clave de sesión queda expuesta. Suponga que un atacante de algún modo recupera una clave de sesión actual. Su utilidad está acotada dos veces: autentica mensajes solo hasta la siguiente rotación programada, e incluso entonces solo en la dirección y para la estación remota a la que pertenece. En poco tiempo la clave expira y se reemplaza mediante un cambio de clave de sesión que el atacante no puede falsificar sin la clave de actualización. El daño queda contenido a una rebanada estrecha de tiempo y alcance, que es precisamente lo que buscan las claves de corta vida rotadas con frecuencia.

La clave de actualización es el secreto que de verdad importa proteger, porque quien la tenga puede inyectar claves de sesión válidas y con ello autenticarse como una parte legítima de forma indefinida. Por eso la clave de actualización se usa con parquedad, se almacena con cuidado, y se cambia mediante procedimientos controlados en lugar de a la ligera. Toda la arquitectura está dispuesta para que las claves expuestas constantemente sean baratas de perder y la clave verdaderamente peligrosa se exponga rara vez. Entender cuál clave es cuál es la clave para razonar sobre la seguridad de un despliegue de Autenticación Segura DNP3.

Esta elegancia trae un costo operativo real, y ese costo moldea el despliegue más que la criptografía. Las claves de actualización tienen que provisionarse en cada estación remota y cada maestro que les habla, mantenerse sincronizadas, protegerse y eventualmente rotarse a través de lo que pueden ser cientos de dispositivos dispersos por sitios remotos. Para un operador que corre activos de campo distribuidos, hacer eso a mano no escala, por lo cual los despliegues serios se apoyan en gestión centralizada de claves y por lo cual una plataforma SCADA en la nube que actúa como maestro DNP3 asume la tarea de seguir la rotación de claves de sesión, conducir las transacciones de cambio de clave de sesión según calendario, y resguardar de forma segura las claves de actualización a nombre de la flota. Bien manejado, el esquema de dos niveles es fuerte; mal manejado, la carga de gestionar claves a través de muchas estaciones remotas es lo que más veces estorba para siquiera encender la Autenticación Segura.

Preguntas frecuentes

¿Cuál es la diferencia entre una clave de actualización y una clave de sesión DNP3?

La clave de actualización es un secreto precompartido y de larga vida que retienen tanto el maestro como la estación remota, y su único trabajo es entregar de forma segura nuevas claves de sesión. Las claves de sesión son secretos de corta vida, rotados con frecuencia, que en realidad autentican los mensajes críticos cotidianos vía el HMAC. La clave de actualización cambia rara vez y se resguarda con cuidado; las claves de sesión cambian seguido y se tratan como desechables.

¿Con qué frecuencia se cambian las claves de sesión DNP3?

Con la frecuencia que dicte la política - una estación remota se configura típicamente para expirar las claves de sesión tras un intervalo de tiempo fijo o tras cierta cantidad de mensajes autenticados, lo que ocurra primero. Cuando se alcanza un límite, debe ocurrir una transacción de cambio de clave de sesión antes de que las operaciones críticas puedan seguir autenticando. El intervalo exacto es una elección de configuración que compensa el tráfico de gestión de claves contra cuán corta quiere que sea la ventana de exposición.

¿Qué pasa si una clave de sesión DNP3 se compromete?

El daño es limitado. Una clave de sesión robada autentica mensajes solo hasta la siguiente rotación, y solo para la estación remota y la dirección a la que pertenece. No se puede usar para falsificar nuevas claves de sesión porque eso requiere la clave de actualización, que la clave de sesión no revela. Este radio de impacto acotado es exactamente por qué el diseño de dos niveles mantiene de corta vida las claves de uso constante y de uso raro la poderosa clave de actualización.

Más en Protocolos industriales
Tiempo de actualización PROFINET  •  Corregir bucles de timeout de sesion OPC UA  •  Sesión limpia vs persistente  •  Expiración de sesión de MQTT  •  Direct operate vs SBO  •  Todo en Protocolos industriales →
Capacitación SCADA gratuita para operadores
Merobix University - 70 lecciones en video y 261 preguntas de examen, del primer inicio de sesión a los reportes de cumplimiento (contenido en inglés). Sin llamada de ventas.
Comenzar gratis →