CVE-2026-22599
WysokieCVSS 7.2Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 67 - wyżej niż 67% wszystkich znanych CVE
Streszczenie
W Strapi (gałęzie 4.x przed 4.26.1 i 5.x przed 5.33.2) uwierzytelniony administrator mógł wstrzyknąć dowolne polecenia SQL poprzez atrybut `column.defaultTo` w API Content-Type Builder, ustawiając go jako krotkę `[wartość, { isRaw: true }]`. W zależności od silnika bazy danych umożliwiało to odczyt plików, atak DoS lub zdalne wykonanie kodu na serwerze bazy danych.
Ocena ryzyka
Może prowadzić do wycieku danych, awarii usługi lub pełnego przejęcia serwera bazy danych przez złośliwego administratora.
Rekomendacja
Zaktualizuj Strapi do wersji 4.26.1 lub 5.33.2 (lub nowszej). W wersji 5.33.2 i późniejszych API Content-Type Builder jest ograniczone do trybu deweloperskiego, co eliminuje wektor ataku w środowisku produkcyjnym.
Inne podatności w Strapi
Zobacz wszystkie- CVE-2026-27886Wysokie
Strapi to otwartoźródłowy system zarządzania treścią, który w wersjach od 4.0.0 do przed 5.37.0 nie wystarczająco sanitizował parametry zapytań przy filtrowaniu treści przez pola relacyjne. Atakujący bez uwierzytelnienia mógł wykorzystać parametr zapytania `where`, aby przeprowadzić atak boolean-oracle na prywatnych polach w tabeli `admin_users`, co umożliwiało przejęcie konta administratora.
- CVE-2023-22894ŚrednieAktywnie exploitowane
Strapi do wersji 4.5.5 pozwala atakującym z dostępem do panelu administracyjnego na odkrycie wrażliwych danych użytkowników poprzez wykorzystanie filtra zapytań. Atakujący może filtrować użytkowników po kolumnach zawierających wrażliwe informacje i wywnioskować wartości z odpowiedzi API. Super admin może odkryć hashe haseł i tokeny resetowania haseł wszystkich użytkowników.
- CVE-2026-108114Średnie
Strapi w wersjach od 5.47.0 do 5.57.0 zawiera podatność na nieprawidłową autoryzację, która pozwala tokenom API administratora zachować pełny dostęp do Menedżera Treści po ograniczeniu pól roli właściciela. Ponieważ funkcja reconcileTokenPermissionsToUserCeiling ignoruje uprawnienia tokenów z pominiętymi lub pustymi polami, posiadacze tokenów mogą nadal czytać pola treści, które administrator usunął z roli.
- CVE-2026-90561Wysokie
Strapi w wersjach 4.x do 4.26.2 oraz 5.x przed 5.48.1 zawiera podatność stored cross-site scripting w komponencie podglądu WYSIWYG menedżera treści, który nie usuwa znaczników script z tekstu sformatowanego. Użytkownik z rolą Author może zapisać złośliwe znaczniki script w polach tekstu sformatowanego, które wykonują się w sesji Editora lub Super Admina po rozwinięciu panelu podglądu, umożliwiając przejęcie konta.
- CVE-2026-57997Średnie
Wtyczka users-permissions w Strapi nie ogranicza algorytmów JWT, gdy parametr plugin::users-permissions.jwt.algorithm nie jest jawnie skonfigurowany, co pozwala na akceptację tokenów HS384 i HS512 obok domyślnego HS256. Atakujący posiadający jwtSecret może tworzyć tokeny z niestandardowymi wariantami HMAC, omijając ograniczenia algorytmów i osłabiając kontrolę uwierzytelniania.
- CVE-2026-22707Średnie
W Strapi w wersjach przed 5.33.3 punkty końcowe Content API wtyczki Upload nie egzekwowały skonfigurowanych przez administratora ograniczeń typu MIME. Uwierzytelniony użytkownik z uprawnieniem do uploadu przez Content API mógł przesłać zabronione typy plików, w tym HTML i SVG, co w domyślnej konfiguracji mogło prowadzić do przejęcia sesji administratora.
- CVE-2026-22706Średnie
W Strapi przed wersją 5.33.3 zmiana lub reset hasła użytkownika domyślnie nie unieważniały istniejących sesji refresh-token, ponieważ krok unieważniania zależał od dostarczonego przez wywołującego deviceId. Atakujący posiadający wcześniej refresh token mógł nadal generować nowe tokeny dostępu po resecie hasła przez prawowitego użytkownika, utrzymując nieautoryzowany dostęp do 30 dni. Poprawka w wersji 5.33.3 unieważnia wszystkie refresh tokeny przy każdej zmianie i resecie hasła.
- CVE-2025-64526Średnie
W Strapi w wersjach przed 5.45.0 middleware rate-limit w pluginie users-permissions budował klucz limitu m.in. na podstawie pola `ctx.request.body.email`, nawet na trasach, których schemat żądania nie zawiera pola email (np. /auth/local, /auth/reset-password, /auth/change-password). Nieuwierzytelniony atakujący mógł podać dowolną wartość email w treści żądania, uzyskując nowy klucz limitu przy każdym żądaniu i tym samym omijając ograniczenie liczby prób na IP. Umożliwiało to masowe ataki brute-force na dane logowania, kody resetowania hasła oraz credential stuffing.
- CVE-2025-53092Średnie
Strapi w wersjach przed 5.20.0 zawiera podatność na błędną konfigurację CORS w domyślnych instalacjach. Domyślnie Strapi odzwierciedla wartość nagłówka Origin w nagłówku odpowiedzi Access-Control-Allow-Origin bez odpowiedniej walidacji lub białej listy, co pozwala witrynie kontrolowanej przez atakującego wysyłać żądania z poświadczeniami do backendu Strapi. Podatność naprawiono w wersji 5.20.0.
- CVE-2025-3930Średnie
Strapi używa tokenów JWT do uwierzytelniania. Po wylogowaniu lub dezaktywacji konta token JWT nie jest unieważniany, co pozwala atakującemu, który ukradł lub przechwycił token, na jego ponowne użycie aż do daty wygaśnięcia (domyślnie 30 dni). Istnienie endpointu /admin/renew-token pozwala na nieograniczone odnawianie tokenów bliskich wygaśnięcia, co zwiększa wpływ ataku. Problem naprawiono w wersji 5.24.1.
Oryginalny opis (angielski, źródło NVD)
Strapi is an open source headless content management system. In versions on the 4.x branch prior to 4.26.1 and on the 5.x branch prior to 5.33.2, a database-query injection vulnerability existed in the Strapi Content-Type Builder write API. An authenticated administrator could inject arbitrary database statements through the `column.defaultTo` attribute when creating or modifying a content type. Setting `defaultTo` as a tuple `[value, { isRaw: true }]` caused the value to be passed directly into Knex's `db.connection.raw()` during schema migration without sanitization, allowing arbitrary statement execution at the database layer. Depending on the database engine, this enabled arbitrary file read via database utility functions, denial of service via forced server crash on schema-migration error, and on engines that permit external program execution, remote code execution against the database server. The patch in versions 4.26.1 and 5.33.2 addresses this by restricting all Content-Type Builder write APIs to development mode only. Production deployments running v5.33.2 or later return 404 for requests against `/content-type-builder/content-types` and related endpoints, removing the network-reachable attack surface entirely.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

