Skip to content

Commit 029dd82

Browse files
1 parent 701afdc commit 029dd82

2 files changed

Lines changed: 138 additions & 0 deletions

File tree

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"schema_version": "1.4.0",
3+
"id": "GHSA-h9cc-w26m-j342",
4+
"modified": "2026-05-21T19:45:08Z",
5+
"published": "2026-05-21T19:45:08Z",
6+
"aliases": [
7+
"CVE-2026-46542"
8+
],
9+
"summary": "nimiq-keys: Denial of service in Ed25519 multisig delinearization via invalid curve points",
10+
"details": "### Impact\n\nA denial-of-service vulnerability exists in the Ed25519 multisig delinearization code path. `Ed25519PublicKey::delinearize()` in `keys/src/multisig/mod.rs` called `.unwrap()` on curve point decompression, which panics when a public key is\nconstructed from 32 bytes that do not represent a valid point on the Ed25519 curve. `Ed25519PublicKey` construction only validates byte length, not curve membership, so invalid keys can reach the delinearization path and crash the\nhosting process.\n\nA secondary panic existed in `Commitment::From<[u8; 32]>`, which similarly called `.unwrap()` on a failing curve point decompression.\n\n**Who is affected:** Browser and desktop wallet users of the web-client WASM library and the `nimiq-wallet` crate, when initiating a multisig operation with an attacker-supplied public key. An attacker must convince the user to include\na crafted public key in a multisig setup — this is not a remotely triggerable node/validator crash.\n\n**Who is NOT affected:** Validator nodes, consensus, blockchain, mempool, and networking code. There is no on-chain multisig account type; multisig is a purely client-side construct, and no validator/consensus code calls the multisig delinearization path.\n\n### Patches\n\nSee [PR](https://github.com/nimiq/core-rs-albatross/pull/3713).\n\n### Workarounds\n\nNo code-level workaround exists short of the patch. Users of wallet applications can mitigate exposure by only performing multisig operations with public keys received from trusted sources.\n\n### Resources\n- Affected code: `keys/src/multisig/mod.rs`, `keys/src/multisig/commitment.rs`",
11+
"severity": [
12+
{
13+
"type": "CVSS_V3",
14+
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L"
15+
}
16+
],
17+
"affected": [
18+
{
19+
"package": {
20+
"ecosystem": "crates.io",
21+
"name": "nimiq-keys"
22+
},
23+
"ranges": [
24+
{
25+
"type": "ECOSYSTEM",
26+
"events": [
27+
{
28+
"introduced": "0"
29+
},
30+
{
31+
"fixed": "1.4.0"
32+
}
33+
]
34+
}
35+
]
36+
}
37+
],
38+
"references": [
39+
{
40+
"type": "WEB",
41+
"url": "https://github.com/nimiq/core-rs-albatross/security/advisories/GHSA-h9cc-w26m-j342"
42+
},
43+
{
44+
"type": "WEB",
45+
"url": "https://github.com/nimiq/core-rs-albatross/pull/3713"
46+
},
47+
{
48+
"type": "WEB",
49+
"url": "https://github.com/nimiq/core-rs-albatross/commit/3bc449a8138960c4de6bfd506bad1730c621d4de"
50+
},
51+
{
52+
"type": "PACKAGE",
53+
"url": "https://github.com/nimiq/core-rs-albatross"
54+
},
55+
{
56+
"type": "WEB",
57+
"url": "https://github.com/nimiq/core-rs-albatross/releases/tag/v1.4.0"
58+
}
59+
],
60+
"database_specific": {
61+
"cwe_ids": [
62+
"CWE-617"
63+
],
64+
"severity": "MODERATE",
65+
"github_reviewed": true,
66+
"github_reviewed_at": "2026-05-21T19:45:08Z",
67+
"nvd_published_at": null
68+
}
69+
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"schema_version": "1.4.0",
3+
"id": "GHSA-vghx-352f-93jm",
4+
"modified": "2026-05-21T19:46:15Z",
5+
"published": "2026-05-21T19:46:15Z",
6+
"aliases": [
7+
"CVE-2026-46543"
8+
],
9+
"summary": "nimiq-blockchain: Genesis batch set request",
10+
"details": "### Impact\nA remote peer can crash any full node by sending a RequestBatchSet message containing the genesis block's hash. The handler calls `get_epoch_chunks` which iterates backwards through macro blocks using `Policy::macro_block_before`. When it reaches the genesis block number, `macro_block_before` panics with \"No macro blocks before genesis block\".\n\n### Patches\n[The patch for this vulnerability](https://github.com/nimiq/core-rs-albatross/pull/3745) is formally released as part of [v1.5.0](https://github.com/nimiq/core-rs-albatross/releases/tag/v1.5.0).\n\n### Workarounds\nNo Workaround, although requesting the genesis batch set is not used during normal operation.\n\n### Resources\nSee [PR](https://github.com/nimiq/core-rs-albatross/pull/3745).",
11+
"severity": [
12+
{
13+
"type": "CVSS_V3",
14+
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
15+
}
16+
],
17+
"affected": [
18+
{
19+
"package": {
20+
"ecosystem": "crates.io",
21+
"name": "nimiq-blockchain"
22+
},
23+
"ranges": [
24+
{
25+
"type": "ECOSYSTEM",
26+
"events": [
27+
{
28+
"introduced": "0"
29+
},
30+
{
31+
"fixed": "1.5.0"
32+
}
33+
]
34+
}
35+
]
36+
}
37+
],
38+
"references": [
39+
{
40+
"type": "WEB",
41+
"url": "https://github.com/nimiq/core-rs-albatross/security/advisories/GHSA-vghx-352f-93jm"
42+
},
43+
{
44+
"type": "WEB",
45+
"url": "https://github.com/nimiq/core-rs-albatross/pull/3745"
46+
},
47+
{
48+
"type": "WEB",
49+
"url": "https://github.com/nimiq/core-rs-albatross/commit/8e8b0abdb1b66f5e9b25b3833879f05c173a5596"
50+
},
51+
{
52+
"type": "PACKAGE",
53+
"url": "https://github.com/nimiq/core-rs-albatross"
54+
},
55+
{
56+
"type": "WEB",
57+
"url": "https://github.com/nimiq/core-rs-albatross/releases/tag/v1.5.0"
58+
}
59+
],
60+
"database_specific": {
61+
"cwe_ids": [
62+
"CWE-617"
63+
],
64+
"severity": "MODERATE",
65+
"github_reviewed": true,
66+
"github_reviewed_at": "2026-05-21T19:46:15Z",
67+
"nvd_published_at": null
68+
}
69+
}

0 commit comments

Comments
 (0)