{"id":"CVE-2026-10512","state":"PUBLISHED","title":"X25519 x86_64 assembly final reduction leaves non-canonical field element","description":"The X25519 x86_64 assembly implementation fails to clear the most significant bit during the final modular reduction, so the computed result may not be fully reduced modulo the field prime 2^255 - 19. This can leave the field element in a non-canonical form, producing an incorrect result from the scalar multiplication and potentially a wrong shared secret. The final carry-propagation chains in the x64 and AVX2 reduction routines could overflow into the top bit, and the high limb was not masked afterward, so the 255-bit field element was left non-canonical.","publishedAt":"2026-06-25T19:58:16.013Z","updatedAt":"2026-06-26T13:49:49.898Z","severity":{"score":2.3,"label":"Low","version":"4.0","vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N","source":"wolfSSL"},"assigner":"wolfSSL","products":["wolfSSL wolfSSL"],"affected":[{"vendor":"wolfSSL","product":"wolfSSL","defaultStatus":"unaffected","versions":[{"version":"5.6.4","status":"affected","lessThanOrEqual":"5.9.1","versionType":"semver"}],"collectionURL":"https://github.com/wolfSSL/wolfssl"}],"references":["https://github.com/wolfSSL/wolfssl/pull/10536","https://www.wolfssl.com/docs/security-vulnerabilities/"],"weaknesses":["CWE-682"],"ingestedAt":"2026-10-29T20:10:33.477Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/10xxx/CVE-2026-10512.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-10512","state":"PUBLISHED","datePublished":"2026-06-25T19:58:16.013Z","dateUpdated":"2026-06-26T13:49:49.898Z","assignerShortName":"wolfSSL","assignerOrgId":"50d2cd11-d01a-48ed-9441-5bfce9d63b27","dateReserved":"2026-06-01T04:32:49.584Z"},"containers":{"cna":{"title":"X25519 x86_64 assembly final reduction leaves non-canonical field element","descriptions":[{"lang":"en","value":"The X25519 x86_64 assembly implementation fails to clear the most significant bit during the final modular reduction, so the computed result may not be fully reduced modulo the field prime 2^255 - 19. This can leave the field element in a non-canonical form, producing an incorrect result from the scalar multiplication and potentially a wrong shared secret. The final carry-propagation chains in the x64 and AVX2 reduction routines could overflow into the top bit, and the high limb was not masked afterward, so the 255-bit field element was left non-canonical."}],"affected":[{"vendor":"wolfSSL","product":"wolfSSL","defaultStatus":"unaffected","versions":[{"version":"5.6.4","status":"affected","lessThanOrEqual":"5.9.1","versionType":"semver"}],"collectionURL":"https://github.com/wolfSSL/wolfssl"}],"references":[{"url":"https://github.com/wolfSSL/wolfssl/pull/10536","tags":["patch"]},{"url":"https://www.wolfssl.com/docs/security-vulnerabilities/"}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"HIGH","attackRequirements":"PRESENT","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","subConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","subIntegrityImpact":"NONE","vulnAvailabilityImpact":"LOW","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"LOW","baseScore":2.3,"vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-682","lang":"en","description":"CWE-682 Incorrect Calculation","type":"CWE"}]}],"providerMetadata":{"shortName":"wolfSSL","orgId":"50d2cd11-d01a-48ed-9441-5bfce9d63b27","dateUpdated":"2026-06-25T19:58:16.013Z"},"credits":[{"lang":"en","value":"Haruki Oyama","type":"finder"}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"Vulnogram 1.0.2"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-06-26T13:49:37.963089Z","id":"CVE-2026-10512","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-06-26T13:49:49.898Z"}}]}}}