CVE-2026-32614
Infinity-Point Ciphertext Forgery in Go ShangMi SM9 Decryption
Publication date: 2026-03-16
Last updated on: 2026-03-16
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| go_shangmi | gmsm | to 0.41.1 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-347 | The product does not verify, or incorrectly verifies, the cryptographic signature for data. |
Attack-Flow Graph
AI Powered Q&A
What immediate steps should I take to mitigate this vulnerability?
The vulnerability is fixed in version 0.41.1 of the Go ShangMi (GMSM) Library. To mitigate this vulnerability, you should upgrade the GMSM library to version 0.41.1 or later.
Can you explain this vulnerability to me?
The vulnerability exists in the Go ShangMi (GMSM) cryptographic library's SM9 decryption implementation prior to version 0.41.1. During decryption, the elliptic-curve point C1 in the ciphertext is checked to be on the curve but the implementation does not explicitly reject the point at infinity. An attacker can exploit this by constructing C1 as the point at infinity, causing the bilinear pairing result to become a predictable constant. This allows the attacker, knowing only the target user's UID, to derive the decryption key material and forge a ciphertext that passes integrity checks.
How can this vulnerability impact me? :
This vulnerability can allow an attacker to forge ciphertexts that appear valid and pass integrity checks without having proper authorization. Since the attacker can derive key material using only the target user's UID, it compromises the integrity of encrypted communications or data protected by the SM9 scheme in the GMSM library. This could lead to unauthorized data manipulation or impersonation attacks.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
I don't know