VU#701544: mpc-lib Hardened Derivation Fails to Protect Ancestor Isolation
A vulnerability exists in Fireblocks' mpc-lib library's BIP32 hardened derivation implementation. This flaw allows an attacker to recover higher-level private key shares from a compromised lower-level share. The issue arises when a parent private key is missing, leading the system to substitute a null buffer, effectively becoming a known constant of zero. This violation of ancestor isolation means a compromised descendant share can be used to derive its parent share. The vulnerability can then be repeated up the entire key hierarchy. While this does not immediately allow for theft of funds, it significantly weakens security defenses. The hardened derivation is no longer a reliable isolation layer for signer shares. The compromise can propagate silently, leaving no error signals. Integrators are advised to treat chain codes as secret, as the derivation delta calculation depends on them. Keeping chain codes confidential prevents public computability of the delta. Alternatively, do not solely rely on hardened derivation for isolation between signer shares. Auditing derivation paths and acknowledging potential cross-hierarchy compromise is also recommended. A complete solution requires a library code change, for which no vendor fix is currently available.