CVE-2026-53924
WysokieCVSS 8.7Streszczenie
Gardens v2 to modułowe ramy zarządzania, które umożliwiają społecznościom tworzenie i zarządzanie wieloma pulami zarządzania z konfigurowalnymi parametrami i mechanizmami głosowania. Przed wersją 0xc9d4e0dacd937364793278180551e59d93cd43f9, StreamingEscrow.claim() poprawnie odrzuca wypłaty, gdy escrow jest sporny, ale bezwarunkowa ścieżka syncOutflow() wykonuje ten sam transfer nadwyżki salda bez sprawdzania sporu. Po zakwestionowaniu propozycji strumienia każdy może wywołać syncOutflow(), aby przenieść escrowed SuperTokens do beneficjenta propozycji, podczas gdy spór jest w toku. Jeśli propozycja zostanie później odrzucona, te tokeny nie mogą zostać odzyskane przez drainToStrategy(). Problem został naprawiony w wersji 0xc9d4e0dacd937364793278180551e59d93cd43f9.
Ocena ryzyka
Atakujący może wykorzystać syncOutflow() do wypłaty środków z escrow podczas trwającego sporu, co może prowadzić do strat finansowych i naruszenia integralności systemu.
Rekomendacja
Zaktualizuj Gardens v2 do wersji 0xc9d4e0dacd937364793278180551e59d93cd43f9 lub nowszej, która zawiera poprawkę. Ogranicz dostęp do syncOutflow() i audytuj transakcje escrow.
Inne podatności w Gardens v2
Zobacz wszystkie- CVE-2026-57445Wysokie
Gardens v2 to modułowe ramy zarządzania, które umożliwiają społecznościom tworzenie i zarządzanie wieloma pulami zarządzania z konfigurowalnymi parametrami i mechanizmami głosowania. W wersji dfba919e218e20d52db9f7b2e8d292d45a46c91b i wcześniejszych, normalne ścieżki wypłat beneficjenta w StreamingEscrow zachowują depositAmount(), podczas gdy aktywny strumień wymaga rezerwy escrow. Jednak ścieżka rozwiązywania sporów po stronie zatwierdzenia opróżnia całe dostępne saldo escrow do beneficjenta propozycji. W momencie publikacji nie są znane publiczne poprawki.
- CVE-2026-55658Wysokie
Gardens v2 to modułowe ramy zarządzania, które umożliwiają społecznościom tworzenie i zarządzanie wieloma pulami zarządzania z konfigurowalnymi parametrami i mechanizmami głosowania. W wersji 3e595f3 i wcześniejszych, gdy propozycja strumienia jest finansowana, klaster kontraktów strumieniowych przenosi rzeczywiste środki puli do StreamingEscrow propozycji, aby zabezpieczyć umowę Superfluid constant flow (depozyt CFA plus 0,5% marży). cancelProposal następnie zeruje jednostki członka GDA escrow, ale nigdy nie odzyskuje tego zablokowanego salda, a bezwarunkowe claim() przekazuje całe saldo escrow, w tym bufor finansowany z puli, do beneficjenta. Beneficjent jest wybierany przez składającego propozycję i domyślnie jest nim składający. Jedyną ścieżką zwracającą środki escrow do puli jest drainToStrategy, która jest tylkoStrategy i jest osiągana wyłącznie z orzeczenia odrzucającego spór, nigdy z anulowania lub naturalnego zakończenia. W momencie publikacji nie są znane publiczne poprawki.
Oryginalny opis (angielski, źródło NVD)
Gardens v2 is a modular governance framework that enables communities to create and manage multiple governance pools with customizable parameters and voting mechanisms. Prior to 0xc9d4e0dacd937364793278180551e59d93cd43f9, StreamingEscrow.claim() correctly rejects withdrawals while an escrow is disputed, but the permissionless syncOutflow() path performs the same excess-balance transfer without checking disputed. After a streaming proposal is challenged, anyone can call syncOutflow() to transfer escrowed SuperTokens to the proposal beneficiary while the dispute is pending. If the proposal is later rejected, those tokens cannot be recovered by drainToStrategy(). This issue has been patched in 0xc9d4e0dacd937364793278180551e59d93cd43f9.

