Skip to content

Commit 02ae695

Browse files
1 parent 0d3fd78 commit 02ae695

File tree

2 files changed

+184
-0
lines changed

2 files changed

+184
-0
lines changed
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
{
2+
"schema_version": "1.4.0",
3+
"id": "GHSA-8frv-q972-9rq5",
4+
"modified": "2025-11-25T20:42:28Z",
5+
"published": "2025-11-25T20:42:28Z",
6+
"aliases": [
7+
"CVE-2025-66017"
8+
],
9+
"summary": "cggmp24 and cggmp21 are vulnerable to signature forgery through altered presignatures",
10+
"details": "### Impact\nThis attack is against presignatures used in very specific context:\n* Presignatures + HD wallets derivation: security level reduces to 85 bits \\\n Previously users could generate a presignature, and then choose a HD derivation path while issuing a partial signature via [`Presignature::set_derivation_path`](https://docs.rs/cggmp21/0.6.3/cggmp21/signing/struct.Presignature.html#method.set_derivation_path), which is malleable to attack that reduces target security level. To mitigate, this method has been removed from API.\n* Presignatures + \"raw signing\" (when signer signs a hash without knowing an original message): results into signature forgery attack \\\n Previously, users were able to configure [`Presignature::issue_partial_signature`](https://docs.rs/cggmp21/0.6.3/cggmp21/signing/struct.Presignature.html#method.issue_partial_signature) with hashed message without ever providing original mesage. In new API, this method only accepts digests for which original message has been observed.\n\n### Patches\n`cggmp24 v0.7.0-alpha.2` release contains API changes that make it impossible to use presignatures in contexts in which it reduces security. Follow [migration guidelines](https://github.com/LFDT-Lockness/cggmp21/blob/v0.7.0-alpha.2/CGGMP21_MIGRATION.md) to upgrade.\n\n### Workarounds\nUsers can continue using un-patched versions of library as long as they don't use presignatures in said scenarios where it weakens system security. To be sure, migrate to patched version that excludes presignatures from being used in such scenarios.\n\n### References\nRead this [blog post](https://www.dfns.co/article/cggmp21-vulnerabilities-patched-and-explained) to learn more.",
11+
"severity": [
12+
{
13+
"type": "CVSS_V4",
14+
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N"
15+
}
16+
],
17+
"affected": [
18+
{
19+
"package": {
20+
"ecosystem": "crates.io",
21+
"name": "cggmp21"
22+
},
23+
"ranges": [
24+
{
25+
"type": "ECOSYSTEM",
26+
"events": [
27+
{
28+
"introduced": "0"
29+
},
30+
{
31+
"last_affected": "0.6.3"
32+
}
33+
]
34+
}
35+
]
36+
},
37+
{
38+
"package": {
39+
"ecosystem": "crates.io",
40+
"name": "cggmp24"
41+
},
42+
"ranges": [
43+
{
44+
"type": "ECOSYSTEM",
45+
"events": [
46+
{
47+
"introduced": "0"
48+
},
49+
{
50+
"fixed": "0.7.0-alpha.2"
51+
}
52+
]
53+
}
54+
]
55+
}
56+
],
57+
"references": [
58+
{
59+
"type": "WEB",
60+
"url": "https://github.com/LFDT-Lockness/cggmp21/security/advisories/GHSA-8frv-q972-9rq5"
61+
},
62+
{
63+
"type": "WEB",
64+
"url": "https://github.com/LFDT-Lockness/cggmp21/commit/9d98157e151596573cb071da59d27a4e0ac9b8dc"
65+
},
66+
{
67+
"type": "PACKAGE",
68+
"url": "https://github.com/LFDT-Lockness/cggmp21"
69+
},
70+
{
71+
"type": "WEB",
72+
"url": "https://rustsec.org/advisories/RUSTSEC-2025-0127.html"
73+
},
74+
{
75+
"type": "WEB",
76+
"url": "https://rustsec.org/advisories/RUSTSEC-2025-0128.html"
77+
},
78+
{
79+
"type": "WEB",
80+
"url": "https://www.dfns.co/article/cggmp21-vulnerabilities-patched-and-explained"
81+
}
82+
],
83+
"database_specific": {
84+
"cwe_ids": [
85+
"CWE-327"
86+
],
87+
"severity": "HIGH",
88+
"github_reviewed": true,
89+
"github_reviewed_at": "2025-11-25T20:42:28Z",
90+
"nvd_published_at": null
91+
}
92+
}
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
{
2+
"schema_version": "1.4.0",
3+
"id": "GHSA-m95p-425x-x889",
4+
"modified": "2025-11-25T20:41:04Z",
5+
"published": "2025-11-25T20:41:04Z",
6+
"aliases": [
7+
"CVE-2025-66016"
8+
],
9+
"summary": "cggmp21 has a missing check in the ZK proof used in CGGMP21",
10+
"details": "### Impact\ncggmp21 concerns a missing check in the ZK proof that enables an attack in which a single malicious signer can reconstruct full private key.\n\n### Patches\n* `cggmp21 v0.6.3` is a patch release that contains a fix that introduces this specific missing check\n* However, cggmp21 recommends upgrading to `cggmp24 v0.7.0-alpha.2` which contains many other security checks as a precaution. Follow [migration guideline](https://github.com/LFDT-Lockness/cggmp21/blob/v0.7.0-alpha.2/CGGMP21_MIGRATION.md) to upgrade.\n\n### Workarounds\nUpdate to `cggmp21 v0.6.3`, a minor release that contains a minimal security patch.\n\nHowever, for full mitigation, users will need to upgrade to `cggmp24 v0.7.0-alpha.2` as it contains many more security check implementations.\n\n### Resources\nRead this [blog post](https://www.dfns.co/article/cggmp21-vulnerabilities-patched-and-explained) to learn more.",
11+
"severity": [
12+
{
13+
"type": "CVSS_V4",
14+
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N"
15+
}
16+
],
17+
"affected": [
18+
{
19+
"package": {
20+
"ecosystem": "crates.io",
21+
"name": "cggmp21"
22+
},
23+
"ranges": [
24+
{
25+
"type": "ECOSYSTEM",
26+
"events": [
27+
{
28+
"introduced": "0"
29+
},
30+
{
31+
"fixed": "0.6.3"
32+
}
33+
]
34+
}
35+
]
36+
},
37+
{
38+
"package": {
39+
"ecosystem": "crates.io",
40+
"name": "cggmp24"
41+
},
42+
"ranges": [
43+
{
44+
"type": "ECOSYSTEM",
45+
"events": [
46+
{
47+
"introduced": "0"
48+
},
49+
{
50+
"fixed": "0.7.0-alpha.2"
51+
}
52+
]
53+
}
54+
]
55+
}
56+
],
57+
"references": [
58+
{
59+
"type": "WEB",
60+
"url": "https://github.com/LFDT-Lockness/cggmp21/security/advisories/GHSA-m95p-425x-x889"
61+
},
62+
{
63+
"type": "WEB",
64+
"url": "https://github.com/LFDT-Lockness/cggmp21/commit/60e0ada5291e771d5649793329d99edd32285e72"
65+
},
66+
{
67+
"type": "PACKAGE",
68+
"url": "https://github.com/LFDT-Lockness/cggmp21"
69+
},
70+
{
71+
"type": "WEB",
72+
"url": "https://rustsec.org/advisories/RUSTSEC-2025-0129.html"
73+
},
74+
{
75+
"type": "WEB",
76+
"url": "https://rustsec.org/advisories/RUSTSEC-2025-0130.html"
77+
},
78+
{
79+
"type": "WEB",
80+
"url": "https://www.dfns.co/article/cggmp21-vulnerabilities-patched-and-explained"
81+
}
82+
],
83+
"database_specific": {
84+
"cwe_ids": [
85+
"CWE-347"
86+
],
87+
"severity": "CRITICAL",
88+
"github_reviewed": true,
89+
"github_reviewed_at": "2025-11-25T20:41:04Z",
90+
"nvd_published_at": null
91+
}
92+
}

0 commit comments

Comments
 (0)