Joachim Bauernberger f7223c3071 ssl: Clear TLS 1.3 secrets from the exported client session
mbedtls_ssl_get_session() copies the whole mbedtls_ssl_session struct,
including the TLS 1.3 app_secrets field. That field holds the connection's
client and server application traffic secrets, the exporter master secret
and the resumption master secret, so an exported session carried enough
material to decrypt the connection it came from.

None of these secrets is needed to resume the session: the resumption key
is derived and stored separately when the NewSessionTicket is processed,
session serialization does not include app_secrets, and keying-material
export reads the live session. Zeroize app_secrets in the exported copy,
at the export point only, so that mbedtls_ssl_session_copy() (also used by
mbedtls_ssl_set_session()) is left unchanged.

Fixes #10916.

Signed-off-by: Joachim Bauernberger <joachim.bauernberger@protonmail.com>
2026-10-25 19:03:42 +01:00
..
.jenkins
configs Remove deprecated items 2025-08-01 11:45:14 +01:00
git-scripts Header updates 2023-11-03 12:21:36 +00:00
include/test Merge pull request #10394 from gilles-peskine-arm/threading-1.0-alt-build-mbedtls 2026-09-01 11:00:04 +02:00
opt-testcases Do not check fail cases for verify skipped 2026-03-13 18:04:16 +00:00
scripts Removed explicit include path from consistency check 2026-10-19 14:12:30 +01:00
src tests: ssl_helpers: run ssl_context reset check only when the SSL context is setup 2026-06-24 15:37:00 +02:00
suites ssl: Clear TLS 1.3 secrets from the exported client session 2026-10-25 19:03:42 +01:00
.gitignore cmake: Generate test_keys.h and test_certs.h in the build tree 2025-03-26 21:19:28 +01:00
CMakeLists.txt Add fix for -DENABLE_PROGRAMS=OFF build error 2026-06-30 15:36:19 +01:00
compat-in-docker.sh Header updates 2023-11-03 12:21:36 +00:00
compat.sh Merge pull request #10663 from yiwu0b11/remove_unused_ffdh_code 2026-05-13 16:49:20 +00:00
context-info.sh Fix test and formatting in ssl_context_info 2025-04-29 22:02:24 +02:00
Descriptions.txt
make-in-docker.sh Header updates 2023-11-03 12:21:36 +00:00
Makefile Make installable pqcp headers available to the libtestdriver1 build 2026-08-18 16:07:13 +02:00
ssl-opt.sh Merge pull request #10620 from mpg/ref-for-drivers 2026-08-13 09:56:09 +00:00