Cloudanix VulnDB

CVE-2022-40281

High · 7.5

CVSS

7.5

EPSS

0.7%

Published

Sep 8, 2022

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A programming mistake in certain smart devices can let remote attackers gradually learn secret information that should stay private.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Data Exposure
Component
Library
Class
Information Disclosure
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Missing X509_free call after SSL_get_peer_certificate in cyassl_connect_step2 leaves certificate objects allocated, resulting in memory disclosure of peer certificate contents over repeated TLS connections.

Why it matters to the business

Organizations running affected embedded devices face potential leakage of cryptographic material or session data to remote observers, increasing compliance risk and requiring emergency patching on long-lived IoT fleets with no vendor fixes available.

How an attack unfolds

An attacker initiates repeated TLS handshakes to a vulnerable device; each connection allocates an X509 object that is never freed, allowing memory scraping or side-channel observation of certificate data across many sessions.

How to fix it

Apply the upstream memory-management correction to cyassl_connect_step2 or migrate to a maintained TLS stack; where source changes are possible, insert X509_free immediately after use of the peer certificate.

How to confirm the fix worked

Review source for presence of X509_free after every SSL_get_peer_certificate call in cyassl.c; perform memory-leak testing under repeated TLS handshakes and confirm no growth in allocated certificate objects.

Typical attack path

  1. Identify reachable TizenRT devices exposing TLS endpoints
  2. Establish multiple TLS connections to trigger certificate allocation
  3. Monitor or dump process memory to recover leaked X509 structures
  4. Extract sensitive fields such as public keys or distinguished names

How to detect it

Search process memory dumps and TLS connection logs for repeated allocation patterns without corresponding frees around certificate handling; correlate with high volumes of inbound TLS connections from single sources.

What your security team should do

  • Inventory all TizenRT deployments and prioritize network segmentation for any still running the vulnerable code
  • Disable unnecessary TLS client features if the cyassl path cannot be patched
  • Monitor upstream TizenRT repositories for any future maintenance releases addressing the leak

The record

An issue was discovered in Samsung TizenRT through 3.0_GBM (and 3.1_PRE). cyassl_connect_step2 in curl/vtls/cyassl.c has a missing X509_free after SSL_get_peer_certificate, leading to information disclosure.

Affected packages

Ecosystem Package Introduced Fixed
Ubuntu:16.04:LTS 0ad 0 No fix
Ubuntu:18.04:LTS 0ad 0 No fix
Ubuntu:20.04:LTS 0ad 0 No fix
Ubuntu:22.04:LTS 0ad 0 No fix
Ubuntu:24.04:LTS 0ad 0 No fix
Ubuntu:24.10 0ad 0 No fix
Ubuntu:25.04 0ad 0 No fix
Ubuntu:25.10 0ad 0 No fix
Ubuntu:Pro:16.04:LTS 0ad 0 No fix
Ubuntu:Pro:18.04:LTS 0ad 0 No fix
Ubuntu:Pro:20.04:LTS 0ad 0 No fix

Related vulnerabilities