CVE-2026-72784
ŚrednieCVSS 5.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 4 - wyżej niż 4% wszystkich znanych CVE
Streszczenie
Craft CMS w wersjach >= 5.0.0-RC1 przed 5.10.6 oraz >= 4.0.0-RC1 przed 4.18.2 zawiera podatność na podrabianie żądań po stronie serwera (SSRF) w mutacji GraphQL save<Volume>Asset, która pobiera adres URL dostarczony przez atakującego po stronie serwera. Walidacja anty-SSRF jest niekompletna: validateIp() nie obejmuje zakresów CGNAT (100.64.0.0/10) ani NAT64 (64:ff9b::/96), a jedyne sprawdzenie IP odbywa się po wysłaniu żądania. Atakujący posiadający token GraphQL z uprawnieniami tylko do tworzenia zasobów może ujawnić wewnętrzną zawartość HTTP z celów CGNAT/NAT64, wymusić wychodzące żądania GET do wewnętrznych hostów (w tym RFC1918, loopback i endpointy metadanych) oraz enumerować wewnętrzne usługi.
Ocena ryzyka
Ryzyko ujawnienia wewnętrznych zasobów sieciowych, skanowania wewnętrznych usług oraz potencjalnego dostępu do wrażliwych danych lub endpointów metadanych.
Rekomendacja
Zaktualizuj Craft CMS do wersji 5.10.6 lub 4.18.2 (w zależności od używanej gałęzi), które zawierają poprawki. Dodatkowo ogranicz uprawnienia tokenów GraphQL i monitoruj ruch wychodzący.
Inne podatności w Craft CMS
Zobacz wszystkie- CVE-2026-109307Średnie
Craft CMS w wersjach od 5.0.0 do 5.10.14 (przed 5.10.14) zawiera podatność na DOM-based XSS w przepływie logowania i weryfikacji 2FA w panelu administracyjnym, gdzie kontrolowany przez użytkownika returnUrl akceptujący adresy javascript: jest używany w nawigacji po stronie klienta. Atakujący może nakłonić ofiarę z włączonym 2FA do otwarcia spreparowanego adresu /admin/login?verify=1 pomiędzy podaniem hasła a weryfikacją TOTP, wykonując JavaScript w uwierzytelnionym panelu administracyjnym z uprawnieniami ofiary.
- CVE-2026-109306Średnie
Craft CMS od wersji 5.0.0 do 5.10.14 (przed 5.10.14) zawiera brak autoryzacji w metodzie AppController::actionSwitchToLicensedEdition(), co pozwala każdemu uwierzytelnionemu użytkownikowi na zmianę zainstalowanej edycji. Użytkownicy front-end z niskimi uprawnieniami mogą wywołać tę akcję, gdy licencjonowana edycja się nie zgadza, trwale obniżając edycję witryny w konfiguracji projektu, czego administratorzy nie mogą cofnąć z panelu administracyjnego.
- CVE-2026-84802Średnie
Craft CMS w wersjach od 5.7.0 do przed 5.10.12 zawiera podatność na ujawnienie informacji w AssetsController::actionMoveInfo, która nie egzekwuje uprawnień do woluminów. Uwierzytelnieni użytkownicy panelu sterowania mogą wysyłać żądania POST do punktu końcowego assets/move-info z dowolnymi folderIds, aby uzyskać liczbę zasobów i całkowity rozmiar przechowywania dla woluminów, do których nie mają dostępu.
- CVE-2026-84801Wysokie
Craft CMS przed wersją 5.10.11 nie weryfikuje statusu administratora w punkcie końcowym actionGetPasswordResetUrl, co pozwala użytkownikom niebędącym administratorami z uprawnieniem administrateUsers na generowanie linków resetowania hasła dla kont administratorów. Atakujący może ustawić nowe hasło dla administratora i przejąć panel kontrolny.
- CVE-2026-84800Wysokie
Craft CMS w wersjach od 5.0.0-RC1 do 5.10.11 zawiera brak autoryzacji w AssetsController::actionReplaceFile. Gdy żądanie podaje sourceAssetId i targetFilename bez assetId, uprawnienie replacePeerFiles nie jest egzekwowane, co pozwala autoryzowanemu autorowi z uprawnieniem replaceFiles na nadpisanie plików innych użytkowników w tym samym folderze.
- CVE-2026-84798Wysokie
Craft CMS w wersjach od 5.0.0-RC1 do 5.10.11 nie wykonuje niezależnej kontroli autoryzacji w ElementsController::actionDeleteForSite. Metoda sprawdza uprawnienia tylko dla własnego szkicu użytkownika, a następnie usuwa kanoniczny element bez ponownej weryfikacji, co pozwala uwierzytelnionemu użytkownikowi bez uprawnienia deleteEntriesForSite na trwałe usunięcie wpisów.
- CVE-2026-84797Średnie
Craft CMS przed wersją 5.10.11 zawiera podatność na obejście autoryzacji w ElementsController::actionDuplicate(), która pozwala uwierzytelnionym użytkownikom z uprawnieniem createEntries na usuwanie cudzych wstępnych wersji roboczych. Atakujący mogą wykorzystać parametr deleteProvisionalDraft, aby usunąć niezapisany szkic innego użytkownika bez odpowiednich kontroli autoryzacji, uzyskując dostęp do treści w trakcie tworzenia.
- CVE-2026-84796Wysokie
Craft CMS przed wersją 5.10.11 zawiera podatność obejścia zakresu witryny w resolverach mutacji GraphQL, które nie weryfikują siteId przez ArgumentManager::prepareArguments(). Atakujący z tokenami ograniczonymi do jednej witryny mogą czytać, modyfikować lub usuwać wpisy w innych witrynach.
- CVE-2026-84793Średnie
Craft CMS w wersjach od 5.0.0-RC1 do przed 5.10.11 zawiera podatność na trwały cross-site scripting w polu nazwy witryny, które nie oczyszcza danych wejściowych. Administratorzy mogą wstrzykiwać dowolne skrypty JavaScript w nazwie witryny, które wykonują się, gdy inni użytkownicy przeglądają strony ustawień panelu sterowania.
- CVE-2026-84792Średnie
Craft CMS przed wersją 5.10.11 zawiera podatność na złamaną kontrolę dostępu w punkcie końcowym element-indexes/save-elements, która pozwala użytkownikom panelu sterowania przenosić wpisy do sekcji, których nie mogą edytować. Atakujący z ograniczonymi uprawnieniami do sekcji mogą przenosić lub publikować wpisy w nieautoryzowanych sekcjach, nadpisując atrybut sectionId po wstępnych kontrolach autoryzacji, omijając walidację uprawnień sekcji docelowej.
Oryginalny opis (angielski, źródło NVD)
Craft CMS versions >= 5.0.0-RC1 before 5.10.6 and >= 4.0.0-RC1 before 4.18.2 contain a server-side request forgery vulnerability in the GraphQL save<Volume>Asset mutation, which fetches an attacker-supplied URL server-side. The anti-SSRF validation is incomplete: validateIp() does not cover CGNAT (100.64.0.0/10) or NAT64 (64:ff9b::/96) ranges, and the only IP check runs after the request has already been issued. An attacker holding a GraphQL token scoped only to asset-creation permissions can disclose internal HTTP content from CGNAT/NAT64 targets, force outbound GET requests to internal hosts (including RFC1918, loopback, and metadata endpoints), and enumerate internal services.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

