On first install, install-core downloads chainparams.cpp from the mutable bitcoin/bitcoin master branch independently of the authenticated Bitcoin Core release. It extracts numeric storage-size values from that unsigned file and uses them to calculate the prune value written to settings.json.
Affected code: bails/.local/bin/install-core.
Impact: manipulated sizing metadata can disable or badly size pruning, allowing Bitcoin Core to exhaust Persistent Storage on constrained devices and cause denial of service.
Expected fix: obtain sizing metadata from the exact authenticated Bitcoin Core release/tag, validate the parsed values against conservative local bounds, and fail safely to pruning if authenticity, parsing, or version matching fails.
On first install,
install-coredownloadschainparams.cppfrom the mutablebitcoin/bitcoinmaster branch independently of the authenticated Bitcoin Core release. It extracts numeric storage-size values from that unsigned file and uses them to calculate theprunevalue written tosettings.json.Affected code:
bails/.local/bin/install-core.Impact: manipulated sizing metadata can disable or badly size pruning, allowing Bitcoin Core to exhaust Persistent Storage on constrained devices and cause denial of service.
Expected fix: obtain sizing metadata from the exact authenticated Bitcoin Core release/tag, validate the parsed values against conservative local bounds, and fail safely to pruning if authenticity, parsing, or version matching fails.