Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessInduce picotls client to connect to hostile TLS peer
-
ExploitSend HelloRetryRequest then spoofed ServerHello
-
ExecutionTrigger NULL pointer dereference in handshake
-
ImpactCrash client process (denial of service)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires picotls to be used specifically as the client-side TLS stack - the server-side use is not affected - and the victim client must initiate or complete a TLS handshake with an attacker-controlled or machine-in-the-middle peer. The peer must send a HelloRetryRequest and then a spoofed Hello message that the client processes, triggering the NULL-pointer dereference. Limiting factors that reduce real-world risk: impact is availability-only (process crash/DoS, no code execution or data exposure); the client must be induced to connect to the malicious peer (reflected in UI:R); and only revisions through 44bc503 are affected, with commit a06ca41 and later fixed. |
| Impact | This is a medium-severity, availability-only issue rather than a top-priority emergency. The input CVSS is 6.5 (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H): network-reachable and low-complexity with no privileges required (PR:N, so unauthenticated), but it requires user interaction (UI:R) because a picotls-based client must initiate/complete a handshake with the attacker-controlled or MITM peer, and impact is confined to availability (C:N/I:N) - a NULL-pointer dereference that crashes the consuming process. The vuln.today Decision label is this_month (not act_now/emergency), consistent with a real-but-bounded DoS. No EPSS score, no CISA KEV entry, and no public exploit were provided in the input, so exploitation probability and in-the-wild activity cannot be assessed from the data; the absence of KEV/EPSS is a data gap, not evidence of safety. Net: a legitimate patch-this-cycle issue for anyone running picotls in client mode, but not a widespread-exploitation crisis - the availability-only impact, UI:R dependency on connecting to a hostile peer, and client-only exposure all cap the real-world risk. |
| Exploit ScenarioDerived | An attacker who controls a TLS server, or who can machine-in-the-middle a connection, waits for a picotls-based client to connect, then responds with a HelloRetryRequest followed by a spoofed ServerHello that the client fails to validate, triggering a NULL-pointer dereference. The affected client process crashes, denying service to whatever other work that process was performing. No public exploit was identified in the provided data; the fix PR includes only a cipher-suite-mismatch regression test, not a crash PoC. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
A NULL-pointer dereference in the picotls TLS 1.3 library crashes any process that uses picotls as its client-side TLS stack when a malicious or man-in-the-middle peer answers a handshake with a HelloRetryRequest followed by a spoofed Hello message. Only builds up to and including revision 44bc503 are affected; the flaw is fixed in commit a06ca41. Impact is availability-only (process termination, no code execution or data disclosure), and the client must be induced to connect to the hostile peer, which is why the assessed vector carries a user-interaction requirement. No public exploit code and no confirmed active exploitation were identified at time of analysis.
RemediationAI
Apply the upstream fix by updating picotls to commit a06ca41 or later; the vendor advisory (https://github.com/h2o/picotls/security/advisories/GHSA-2xcv-h2pg-m99c) and PR https://github.com/h2o/picotls/pull/608 document the change, and no tagged release version is identified in the available sources, so distributors should be asked for the build that carries this commit. Because the trigger is client-side only, deployments that use picotls exclusively as a server-side stack are unaffected and need no urgent change. Where updating must be staged, reduce exposure by restricting outbound TLS connections to known-good upstream peers and by not pointing client-side picotls handshakes at untrusted or intermediary-terminated endpoints, accepting that this narrows legitimate connectivity; additionally, run TLS-client workloads under a supervisor or process isolation so a crash is restarted rather than taking down unrelated work in the same process, at the cost of added operational overhead and only partial blast-radius reduction.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
picotls is a C implementation of TLS 1.3 used by H2O and other projects, with pluggable crypto backends and cipher suites selected from a caller-supplied list. The weakness is CWE-476 (NULL pointer dereference) in the handshake state machine's ServerHello decoder. Under TLS 1.3 a server may respond to a ClientHello with a HelloRetryRequest and the client then expects a second, final ServerHello that must reuse the cipher suite named in the retry. The decoder in affected revisions did not enforce that invariant: it did not reject a HelloRetryRequest arriving while the client was already in the expect-second-ServerHello state, and it re-resolved the client's cipher suite from the incoming message rather than checking it against the already-negotiated suite. A spoofed Hello crafted into that window drove the key schedule into a state where no cipher-suite slot matched, so cipher-suite lookup returned no result and the code dereferenced a NULL pointer. The upstream fix adds an explicit unexpected-message alert when a retry request recurs in the second-ServerHello state, requires the final ServerHello cipher suite to equal the one chosen during the retry (failing with illegal_parameter otherwise), and adds an assertion guarding the cipher-slot lookup. The accompanying regression test mutates only the cipher-suite field of the final ServerHello to confirm the client aborts cleanly instead of crashing.
Know when Picotls gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
A hostile TLS peer crashes a picotls client with no authentication (PR:N), but the client must connect to that peer (UI:R); only availability is affected (C:N/I:N/A:H).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
DescriptionCVE.org
Picotls is a TLS protocol library that allows users select different crypto backends based on their use case. In affected revisions through 44bc503, when picotls is used as a client-side TLS stack, a peer can send a HelloRetryRequest followed by a spoofed Hello message that causes a null-pointer dereference. This can terminate the consuming process, including a process performing other work, resulting in denial of service. This issue is fixed in commit a06ca41.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Picotls is a TLS protocol library that allows users select different crypto backends based on their use case. Rated crit
Stack exhaustion in the Picotls minicrypto backend's custom ASN.1 validator allows an attacker who can supply crafted pr
EUVD-2026-114509
NVD
CVE.org
EPSS
GitHub
Exploit-DB