CVE-2026-7531 is a use-after-free in wolfSSL post-quantum hybrid key share handling, scored 9.8 by NVD. A malicious TLS 1.3 server sending a truncated hybrid key share can trigger it in a client. It follows an incomplete fix of CVE-2026-5460. wolfSSL lists the fix in 5.9.2.
What's affected
wolfSSL builds that handle TLS 1.3 post-quantum hybrid key shares, in releases before 5.9.2. The wolfSSL vulnerability page lists the fix for this CVE in 5.9.2 and points to pull request 10327.
The direction is client side: a malicious server sends a truncated hybrid key share, and the client's error cleanup path works on freed memory. The earlier issue, CVE-2026-5460, was released in 5.9.1, and this entry says that fix was incomplete.
The project rates it Low on its own page, while NVD scores it 9.8. The record does not explain the gap, so read the wolfSSL page for context and use the NVD score if your policy is based on it.
How to check if you're exposed
If you build wolfSSL, read the version from the header.
grep LIBWOLFSSL_VERSION_STRING wolfssl/version.h
For packaged builds, ask the package manager. Then check whether your build enables the post-quantum hybrid key exchange groups and whether your client connects to servers you do not control. Products that embed wolfSSL, such as appliances and firmware, need a vendor update.
What to do now
- Update wolfSSL to 5.9.2 or later and rebuild applications that link it statically.
- Ask vendors of embedded products whether they bundle wolfSSL and which version.
- If you cannot update yet and you do not need hybrid post-quantum key exchange, consider building without it.
- Add wolfSSL to your software inventory so related advisories match.
- Review the other fixes listed for 5.9.2 on wolfSSL's page.
Why it matters
The record maps this to CWE-416, use after free. When a hybrid key share arrives truncated, the code takes an error path to clean up, and that cleanup touched memory that had already been released.
Error paths are the least exercised code in most libraries, and a fix that handles one failure may leave a neighboring failure unhandled, which is what an incomplete fix means here. The lesson for maintainers is to test malformed and truncated input at every parsing stage. For users, it is to track follow up CVEs on the same component.
The KEV flag is false and the record does not describe exploitation.
Tracking follow up CVEs
This entry is described as an incomplete fix for CVE-2026-5460, which was released in 5.9.1. If you updated to 5.9.1 for that issue and stopped there, you are still exposed to this one. Keep a habit of reading the release notes of any security release a few weeks later, because follow up reports on the same code are common. A fix tends to draw more review to the area.
wolfSSL's page lists a number of other fixes in 5.9.2 as well, so the upgrade carries value beyond this entry. Since many products embed the library, check your firmware and appliances too. Those depend on the vendor's release schedule.
About the severity gap
The vendor labels this issue Low and NVD gives 9.8. Both can be reasoned about. The NVD vector assumes network access, no privileges and full impact on confidentiality, integrity and availability. The vendor view presumably weighs how hard it is to turn the freed memory into something useful. I could not confirm the vendor's reasoning from the page. A sensible approach is to patch on your normal cycle at the least, and sooner if a client of yours connects to servers you do not control.
The free in-browser dependency scan at gold.safeguard.sh/scan can show whether a project you maintain pulls in an affected package, and the Gold vulnerability directory keeps the record for this CVE.
Try it yourself
Click through it at your own pace, or open it full screen.
Quick check
Which wolfSSL version fixes CVE-2026-7531?
wolfSSL's vulnerability page lists 5.9.2.
Why is the vendor severity lower than NVD's?
The vendor lists Low and NVD scores 9.8. The record does not explain the difference, so check the wolfSSL page for context.
Sources
Last reviewed: 19 October 2026.