CVE-2026-61629
WysokieCVSS 7.5Streszczenie
W nginx ignition w wersjach od 2.29.0 do 2.40.0 middleware gin i18n w serwerze API działa przed każdym żądaniem HTTP i wywołuje golang.org/x/text/language.ParseAcceptLanguage na surowym nagłówku Accept-Language bez żadnego filtra rozmiaru lub kształtu. Parser ten ma kwadratową złożoność czasową dla długich list zniekształconych tagów językowych; zabezpieczenie CVE-2022-32149 ogranicza liczbę znaków '-' do 1000, ale nie ogranicza znaków '_', mimo że wewnętrzny skaner parsera traktuje '_' jak '-'. Pojedyncze nieuwierzytelnione żądanie GET z nagłówkiem Accept-Language zbudowanym z separatorów '_' zużywa około 2,4 sekundy CPU serwera.
Ocena ryzyka
Dziesięciu równoczesnych atakujących może wysycić maszynę z dziesięcioma rdzeniami na czas ataku, zużywając około 10 MiB/s przepustowości. Stanowi to poważne ryzyko odmowy usługi dla hosta uruchamiającego nginx-ignition.
Rekomendacja
Zaktualizuj nginx-ignition do wersji 2.40.1 lub nowszej. Do czasu aktualizacji rozważ ograniczenie rozmiaru nagłówka Accept-Language na poziomie serwera proxy.
Inne podatności w nginx ignition
Zobacz wszystkie- CVE-2026-61630Średnie
nginx ignition (UI dla serwera nginx) w wersjach 2.33.0 do 2.35.0 ma podatność, która pozwala użytkownikowi z włączonym OTP 2FA na ponowne użycie swojego TOTP w ciągu standardowego 30-sekundowego okna ważności. Wersja 2.35.1 naprawia ten problem.
- CVE-2026-61628Wysokie
W nginx ignition przed wersją 2.41.1 punkt końcowy POST /api/users/onboarding/finish jest zarejestrowany jako anonimowy (nieuwierzytelniony) i tworzy użytkownika z pełnymi uprawnieniami administratora ReadWrite. Ponieważ procedura obsługi używa wzorca check-then-act (TOCTOU) między sprawdzeniem „czy onboarding już zakończony?” a zapisem tworzenia użytkownika, bez atomowego zabezpieczenia, zdalny nieuwierzytelniony atakujący mogący dotrzeć do instancji w stanie przed onboardingiem może utworzyć dla siebie konto administratora, a równoczesne żądania mogą utworzyć wiele kont administratora w jednym wyścigu.
Oryginalny opis (angielski, źródło NVD)
nginx ignition is a user interface for the nginx web server. In versions 2.29.0 through 2.40.0, the gin i18n middleware in nginx-ignition's API server runs in front of every HTTP request and calls `golang.org/x/text/language.ParseAcceptLanguage` on the raw `Accept-Language` header without imposing any size or shape filter. The underlying parser has quadratic-time behaviour on long lists of malformed language tags. The CVE-2022-32149 guard that golang.org/x/text added in v0.3.8 caps the number of `-` characters in the input at 1000, but it does not cap `_` characters even though the parser's internal scanner aliases `_` to `-` before parsing. A single unauthenticated GET request with an `Accept-Language` header built out of `_` separators burns about 2.4 seconds of server CPU on the host running nginx-ignition; ten concurrent attackers saturate a ten-core box for the duration of the attack while consuming ~10 MiB/s of upstream bandwidth. Version 2.40.1 fixes this issue.

