nimiq-blockchain обеспечивает постоянное блочное хранилище для реализации Nimiq на Rust. В версии 1.3.0 и более ранних версиях проверка метки времени блока требует, чтобы метка времени >= родительская.метка времени для блоков без пропуска и метка времени == родительская.метка времени + MIN_PRODUCER_TIMEOUT для блоков пропуска, но видимая проверка верхней границы по настенным часам отсутствует. Вредоносный валидатор, создающий блоки, может устанавливать временные метки блоков в произвольном отдаленном будущем.
Это напрямую влияет на расчет вознаграждения через Policy::supply_at() и patch_delay() в блокчейне/src/reward.rs, увеличивая денежную массу сверх запланированного графика эмиссии.
Показать оригинальное описание (EN)
nimiq-blockchain provides persistent block storage for Nimiq's Rust implementation. In 1.3.0 and earlier, block timestamp validation enforces that timestamp >= parent.timestamp for non-skip blocks and timestamp == parent.timestamp + MIN_PRODUCER_TIMEOUT for skip blocks, but there is no visible upper bound check against the wall clock. A malicious block-producing validator can set block timestamps arbitrarily far in the future. This directly affects reward calculations via Policy::supply_at() and batch_delay() in blockchain/src/reward.rs, inflating the monetary supply beyond the intended emission schedule.
Характеристики атаки
Последствия
Строка CVSS v3.1