Vulnerabilities (CVE)

Filtered by vendor Dfinity
Angry Yack Logo
Total 5 CVE
CVE Vendors Products Updated CVSS v2 CVSS v3
CVE-2024-1631 1 Dfinity 1 Icp-js-core 2025-12-10 N/A 9.1 CRITICAL
Impact: The library offers a function to generate an ed25519 key pair via Ed25519KeyIdentity.generate with an optional param to provide a 32 byte seed value, which will then be used as the secret key. When no seed value is provided, it is expected that the library generates the secret key using secure randomness. However, a recent change broke this guarantee and uses an insecure seed for key pair generation. Since the private key of this identity (535yc-uxytb-gfk7h-tny7p-vjkoe-i4krp-3qmcl-uqfgr- ...

Show More

CVE-2024-4435 1 Dfinity 1 Stable Structures 2025-12-10 N/A 5.9 MEDIUM
When storing unbounded types in a BTreeMap, a node is represented as a linked list of "memory chunks". It was discovered recently that when we deallocate a node, in some cases only the first memory chunk is deallocated, and the rest of the memory chunks remain (incorrectly) allocated, causing a memory leak. In the worst case, depending on how a canister uses the BTreeMap, an adversary could interact with the canister through its API and trigger interactions with the map that keep consuming memor ...

Show More

CVE-2024-11991 1 Dfinity 1 Motoko 2025-12-08 N/A 5.6 MEDIUM
Motoko's incremental garbage collector is impacted by an uninitialized memory access bug, caused by incorrect use of write barriers in a few locations. This vulnerability could potentially allow unauthorized read or write access to a Canister's memory. However, exploiting this bug requires the Canister to enable the incremental garbage collector or enhanced orthogonal persistence, which are non-default features in Motoko.
CVE-2023-6245 1 Dfinity 1 Candid 2024-11-21 N/A 7.5 HIGH
The Candid library causes a Denial of Service while parsing a specially crafted payload with 'empty' data type. For example, if the payload is `record { * ; empty }` and the canister interface expects `record { * }` then the Rust candid decoder treats empty as an extra field required by the type. The problem with the type empty is that the candid Rust library wrongly categorizes empty as a recoverable error when skipping the field and thus causing an infinite decoding loop. Canisters using ...

Show More

CVE-2024-7884 1 Dfinity 1 Canister Developer Kit For The Internet Computer 2024-09-12 N/A 7.5 HIGH
When a canister method is called via ic_cdk::call* , a new Future CallFuture is created and can be awaited by the caller to get the execution result. Internally, the state of the Future is tracked and stored in a struct called CallFutureState. A bug in the polling implementation of the CallFuture allows multiple references to be held for this internal state and not all references were dropped before the Future is resolved. Since we have unaccounted references held, a copy of the internal state ...

Show More