CVE-2026-49343
ŚrednieCVSS 5.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% wszystkich znanych CVE
Streszczenie
Klever-Go, implementacja protokołu blockchain Klever w Go, w wersjach przed 1.7.18 ma podatność na wyczerpanie zasobów w synchronizatorach trie danych konta. Błędy w ścieżkach błędów powodują trwałe zużycie slotów throttlera, co może doprowadzić do zatrzymania synchronizacji i awarii bootstrapu. Poprawka w wersji 1.7.18.
Ocena ryzyka
Atakujący może spowodować wyczerpanie zasobów, co prowadzi do niedostępności węzłów i walidatorów, wpływając na dostępność sieci.
Rekomendacja
Zaleca się aktualizację Klever-Go do wersji 1.7.18, która zawiera poprawkę.
Oryginalny opis (angielski, źródło NVD)
Klever-Go is the Go implementation of the Klever blockchain protocol. In versions prior to 1.7.18, the account-data trie syncers are vulnerable to a resource-exhaustion flaw that leaks bounded throttler slots on error paths. In syncDataTrie() (in both userAccountsSyncer.go and kappAccountsSyncer.go), StartProcessing() reserves a slot from the NumGoRoutinesThrottler, but the corresponding EndProcessing() is only called on the success path and on the duplicate-root early return. As a result, any error from trie.NewTrie(), trie.NewTrieSyncer(), or trieSyncer.StartSyncing() (including the network-dependent timeout path) permanently consumes one slot for the lifetime of the throttler. An attacker who can repeatedly cause trie-node sync failures or timeouts during bootstrap can exhaust the bounded throttler, after which further account-data trie syncs stop making progress and SyncAccounts() returns a timeout. Because epoch bootstrap in syncUserAccountsState() and syncKappAccountsState() aborts on any such error, this causes bootstrap to fail, a core availability issue affecting fresh, restarting, or resyncing nodes and validators. This issue is fixed in version 1.7.18.

