CVE-2026-46378
ŚrednieCVSS 6.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
Podatność w narzędziu Dasel w wersjach od 3.0.0 do 3.10.1 powoduje nieskończoną pętlę podczas tokenizacji niezakończonego literału wyrażenia regularnego (np. r/). Atakujący może wykorzystać kontrolowany ciąg selektora do wyczerpania zasobów procesora.
Ocena ryzyka
Ryzyko polega na możliwości przeprowadzenia ataku DoS (Denial of Service) poprzez wysłanie specjalnie spreparowanego selektora, co może doprowadzić do znacznego obciążenia CPU i zakłócenia działania usługi.
Rekomendacja
Należy niezwłocznie zaktualizować Dasel do wersji 3.10.1 lub nowszej, która zawiera poprawkę eliminującą nieskończoną pętlę.
Inne podatności w Dasel
Zobacz wszystkie- CVE-2026-62866Średnie
Dasel w wersjach od 3.0.0 do 3.11.2 ma błąd w tokenizerze, który przy selektorze kończącym się białym znakiem odczytuje poza zakresem tablicy, powodując panikę i zakończenie procesu. Dotyczy to również danych wejściowych przekazywanych przez Tokenize() lub dasel.Query.
- CVE-2026-59168Średnie
Dasel w wersjach od 3.0.0 do 3.11.1 nie ma limitu głębokości rekurencji przy przetwarzaniu zagnieżdżonych struktur JSON lub XML. Głęboko zagnieżdżone dane atakującego mogą wyczerpać stos gorutyny, powodując krytyczny błąd i zatrzymanie całego procesu.
- CVE-2026-46377Średnie
Dasel w wersjach od 3.0.0 do 3.10.0 zawiera podatność w funkcji parseCurRune w tokenizerze, która nie sprawdza granic tablicy podczas przetwarzania sekwencji ucieczki w cytowanych ciągach znaków. Atakujący może dostarczyć specjalnie spreparowany selektor, powodując panic z powodu indeksu poza zakresem.
Oryginalny opis (angielski, źródło NVD)
Dasel is a command-line tool and library for querying, modifying, and transforming data structures. From 3.0.0 until 3.10.1, the selector lexer matchRegexPattern closure in (*Tokenizer).parseCurRune in selector/lexer/tokenize.go loops while tokenizing an unterminated regex literal such as r/ because peekRuneEqual returns false after the end of input, allowing attacker-controlled selector strings to consume CPU indefinitely. This issue is fixed in version 3.10.1.

