| タイトル | NimiqのNimiq Proof of Stake (core-rs-albatross)における複数の脆弱性 |
|---|---|
| 概要 | nimiq-block は Nimiq の Rust 実装で使用されるブロックプリミティブを含んでいます。`SkipBlockProof::verify` はそのクォーラムチェックを `BitSet.len()` を使って計算し、その後 `BitSet` のインデックスを反復処理して、各 `usize` インデックスをスロット検索のために `u16`(`slot as u16`)にキャストします。バージョン 1.3.0 より前では、攻撃者が 65536 間隔で範囲外のインデックスを含む `MultiSignature.signers` を持つ `SkipBlockProof` を検証させることができました。これらのインデックスが `len()` を膨らませつつ、集約時には同じ範囲内の `u16` スロットに衝突します。これにより、悪意のあるバリデーターは実際の署名者スロット `2f+1` よりはるかに少ないスロット数で、単一の BLS 署名を同じ係数で乗算することでスキップブロック証明の検証を通過させることが可能になります。この脆弱性の修正は v1.3.0 に含まれており、既知の回避策は存在しません。 |
| 想定される影響 | 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃により、他のソフトウェアにも影響が及ぶ可能性があります。 |
| 対策 | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年4月22日0:00 |
| 登録日 | 2026年4月27日11:18 |
| 最終更新日 | 2026年4月27日11:18 |
| CVSS3.0 : 緊急 | |
| スコア | 9.6 |
|---|---|
| ベクター | CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:H |
| Nimiq |
| Nimiq Proof of Stake (core-rs-albatross) 1.3.0 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年04月27日] 掲載 |
2026年4月27日11:18 |
| 概要 | nimiq-block contains block primitives to be used in Nimiq's Rust implementation. `SkipBlockProof::verify` computes its quorum check using `BitSet.len()`, then iterates `BitSet` indices and casts each `usize` index to `u16` (`slot as u16`) for slot lookup. Prior to version 1.3.0, if an attacker can get a `SkipBlockProof` verified where `MultiSignature.signers` contains out-of-range indices spaced by 65536, these indices inflate `len()` but collide onto the same in-range `u16` slot during aggregation. This makes it possible for a malicious validator with far fewer than `2f+1` real signer slots to pass skip block proof verification by multiplying a single BLS signature by the same factor. The patch for this vulnerability is included as part of v1.3.0. No known workarounds are available. |
|---|---|
| 公表日 | 2026年4月23日5:16 |
| 登録日 | 2026年4月25日4:06 |
| 最終更新日 | 2026年4月25日2:11 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:nimiq:nimiq_proof-of-stake:*:*:*:*:*:rust:*:* | 1.3.0 | ||||