CVE-2023-31135
NiskieCVSS 3.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 4 - wyżej niż 4% wszystkich znanych CVE
Streszczenie
Dgraph to rozproszona baza danych GraphQL. Istniejące logi audytu są podatne na ataki brute force z powodu kolizji nonce — pierwsze 12 bajtów pochodzi z baseIv, a ostatnie 4 bajty z długości szyfrowanej linii logu, co powoduje wielokrotne użycie tego samego nonce. Wszystkie logi audytu wygenerowane przez wersje Dgraph <v23.0.0 są dotknięte problemem.
Ocena ryzyka
Atakujący z dostępem do systemu przechowującego logi może wykorzystać kolizje nonce do ataków brute force i odszyfrowania danych audytu. Może to prowadzić do ujawnienia poufnych informacji z logów.
Rekomendacja
Zaktualizuj Dgraph do wersji v23.0.0. Jeśli aktualizacja nie jest możliwa, przechowuj istniejące logi audytu w bezpiecznym miejscu i dodatkowo zaszyfruj je zewnętrznym narzędziem, np. gpg.
Inne podatności w Dgraph
Zobacz wszystkie- CVE-2026-102748Krytyczne
W Dgraph przed wersją 25.4.0 Dgraph Zero rejestruje administracyjne trasy HTTP na porcie 6080 bez uwierzytelniania, gdy interfejs administracyjny jest włączony. Trasa /removeNode przyjmuje kontrolowane przez atakującego wartości id i group i przekazuje je do Server.RemoveNode, gdzie grupa 0 może wywołać ProposePeerRemoval. Zdalny nieuwierzytelniony atakujący, który może połączyć się z portem HTTP Zero, może odczytać topologię przez /state, przydzielić identyfikatory przez /assign, uzyskać dostęp do wystawionej trasy administracyjnej /moveTablet lub usunąć członkostwo przez /removeNode, zakłócając płaszczyznę kontrolną Zero i destabilizując węzły Alpha, które od niej zależą. Rejestracja tras odbywa się w dgraph/cmd/zero/run.go, a zademonstrowana ścieżka usuwania członkostwa prowadzi do Server.RemoveNode i ProposePeerRemoval.
- CVE-2026-54061Krytyczne
Dgraph Alpha przed wersją 25.3.5 udostępnia niezabezpieczone RPC do importu snapshotów na publicznym porcie gRPC :9080. Nieuwierzytelniony klient sieciowy może otworzyć strumień StreamExtSnapshot i wysłać dane Badger do docelowego magazynu, co prowadzi do usunięcia i zastąpienia istniejących danych.
- CVE-2026-63637Wysokie
Dgraph przed wersją 25.3.8 w funkcji maybeQuoteArg w graphql/resolve/query_rewriter.go przekazuje filtry wyrażeń regularnych do generowanego DQL bez odpowiedniego cytowania lub walidacji, co pozwala na wstrzyknięcie operatorów DQL, ujawnienie niezamierzonych węzłów lub rozszerzenie celów modyfikacji i usuwania. Problem naprawiono w wersji 25.3.8.
- CVE-2026-44840Wysokie
W Dgraph przed wersją 25.3.4 wykryto podatność na wstrzykiwanie DQL w zapytaniu GraphQL `checkUserPassword`. Wartości haseł dostarczane przez użytkownika są bezpośrednio interpolowane do zapytania DQL `checkpwd()` za pomocą `fmt.Sprintf` bez żadnego oczyszczania lub parametryzacji. Atakujący może wstrzyknąć hasło zawierające cudzysłów, aby wydostać się z literału łańcuchowego DQL i dołączyć dowolne bloki zapytań DQL.
Oryginalny opis (angielski, źródło NVD)
Dgraph is an open source distributed GraphQL database. Existing Dgraph audit logs are vulnerable to brute force attacks due to nonce collisions. The first 12 bytes come from a baseIv which is initialized when an audit log is created. The last 4 bytes come from the length of the log line being encrypted. This is problematic because two log lines will often have the same length, so due to these collisions we are reusing the same nonce many times. All audit logs generated by versions of Dgraph <v23.0.0 are affected. Attackers must have access to the system the logs are stored on. Dgraph users should upgrade to v23.0.0. Users unable to upgrade should store existing audit logs in a secure location and for extra security, encrypt using an external tool like `gpg`.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

