CVE-2026-24904

Source
https://cve.org/CVERecord?id=CVE-2026-24904
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-24904.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-24904
Aliases
  • GHSA-fqh7-r5gf-3r87
Published
2026-01-29T21:19:53.261Z
Modified
2026-02-22T06:35:57.266450Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N CVSS Calculator
Summary
TrustTunnel has `client_random_prefix` rule bypass via fragmented or partial TLS ClientHello
Details

TrustTunnel is an open-source VPN protocol with a rule bypass issue in versions prior to 0.9.115. In tls_listener.rs, TlsListener::listen() peeks 1024 bytes and calls extract_client_random(...). If parse_tls_plaintext fails (for example, a fragmented/partial ClientHello split across TCP writes), extract_client_random returns None. In rules.rs, RulesEngine::evaluate only evaluates client_random_prefix when client_random is Some(...). As a result, when extraction fails (client_random == None), any rule that relies on client_random_prefix matching is skipped and evaluation falls through to later rules. As an important semantics note: client_random_prefix is a match condition only. It does not mean "block non-matching prefixes" by itself. A rule with client_random_prefix = ... triggers its action only when the prefix matches (and the field is available to evaluate). Non-matches (or None) simply do not match that rule and continue to fall through. The vulnerability is fixed in version 0.9.115.

Database specific
{
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
        "CWE-284"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/24xxx/CVE-2026-24904.json"
}
References

Affected packages

Git / github.com/trusttunnel/trusttunnel

Affected ranges

Type
GIT
Repo
https://github.com/trusttunnel/trusttunnel
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

v0.*
v0.9.100
v0.9.102
v0.9.105
v0.9.109
v0.9.20
v0.9.22
v0.9.23
v0.9.24
v0.9.26
v0.9.27
v0.9.38
v0.9.39
v0.9.40
v0.9.43
v0.9.47
v0.9.74
v0.9.96
v0.9.99

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-24904.json"