[nginx] SSL: fixed syncing of keys with automatic ticket key rot...
Maxim Dounin
mdounin at mdounin.ru
Tue Oct 27 16:15:52 UTC 2026
details: http://freenginx.org/hg/nginx/rev/d08712494b7a
branches:
changeset: 9594:d08712494b7a
user: Maxim Dounin <mdounin at mdounin.ru>
date: Tue Oct 27 07:47:39 2026 +0300
description:
SSL: fixed syncing of keys with automatic ticket key rotation.
Optimized rotation of session ticket keys as introduced in
8085:043006e5a0b1 (1.23.2) changed the number of keys used from 2 to 3,
but the number of keys synced from shared memory to worker processes was
not updated. As a result, an uninitialized key was used within worker
processes, making it possible to forge a session (CVE-2026-97629). The
fix is to sync the correct number of keys.
See also:
https://github.com/nginx/nginx/commit/1916f26e6ca49296568633d309777e36527e5bb2
diffstat:
src/event/ngx_event_openssl.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diffs (12 lines):
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c
--- a/src/event/ngx_event_openssl.c
+++ b/src/event/ngx_event_openssl.c
@@ -5456,7 +5456,7 @@ ngx_ssl_rotate_ticket_keys(SSL_CTX *ssl_
/* sync keys to the worker process memory */
ngx_memcpy(keys->elts, cache->ticket_keys,
- 2 * sizeof(ngx_ssl_ticket_key_t));
+ 3 * sizeof(ngx_ssl_ticket_key_t));
ngx_shmtx_unlock(&shpool->mutex);
More information about the nginx-devel
mailing list