CVE-2026-45013
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 13 - wyżej niż 13% wszystkich znanych CVE
Streszczenie
ApostropheCMS to system zarządzania treścią oparty na Node.js, który w wersjach do 4.29.0 ma lukę w procesie resetowania hasła. Luka ta pozwala atakującemu na wysłanie fałszywego żądania resetu, które prowadzi do wysłania linku resetującego na domenę atakującego.
Ocena ryzyka
Atakujący może przejąć konto ofiary, jeśli zna jej adres e-mail, co stwarza poważne zagrożenie dla bezpieczeństwa danych użytkowników.
Rekomendacja
Zaleca się skonfigurowanie `apos.baseUrl`, aby zapobiec wykorzystaniu nagłówka `Host` przez atakujących oraz monitorowanie dostępnych aktualizacji zabezpieczeń.
Inne podatności w ApostropheCMS
Zobacz wszystkie- CVE-2026-53609Krytyczne
ApostropheCMS to system zarządzania treścią oparty na Node.js, który w wersjach do 4.30.0 pozwala na nieautoryzowane modyfikacje prototypu obiektów przez uwierzytelnionych edytorów. Wykorzystanie operatora `$pullAll` umożliwia zapis dowolnych wartości do `Object.prototype`, co prowadzi do obejścia autoryzacji na wszystkich punktach końcowych REST API.
- CVE-2026-71553Wysokie
ApostropheCMS to system zarządzania treścią oparty na Node.js. W wersji 4.32.0 i wcześniejszych, PATCH /api/v1/article/:id akceptuje dziedziczoną ścieżkę toString.call i przekazuje ją przez moduł narzędziowy do apos.util.set() i apos.util.get(), co pozwala uwierzytelnionemu edytorowi nadpisać właściwość call funkcji Object.prototype.toString i spowodować trwałą awarię procesu (denial of service) do czasu restartu.
- CVE-2026-63670Średnie
ApostropheCMS to open source'owy system zarządzania treścią oparty na Node.js. Przed wersją 2.17.6, funkcja sanitizeHtml() może przepuścić niedozwolony wykonywalny markup przez packages/sanitize-html/index.js, gdy textarea lub xmp jest zawarte w allowedTags, ponieważ dosłowny ukośnik po nazwie znacznika końcowego surowego tekstu jest traktowany jako tekst przez htmlparser2, a handler ontext emituje tę treść bez escapowania, podczas gdy przeglądarka parsuje następujący markup img onerror jako aktywny HTML. Problem naprawiono w wersji 2.17.6.
- CVE-2026-63669Średnie
ApostropheCMS przed wersją 4.32.0 ma podatność w operacji move() modułu strony, która nie egzekwuje uprawnienia _create dla docelowego rodzica, gdy przenoszenie jest zwykłe (nie archiwizacja). Pozwala to uwierzytelnionemu edytorowi lub współtwórcy przenieść kontrolowaną stronę do ograniczonego poddrzewa i zmienić kolejność chronionych stron.
- CVE-2026-63667Średnie
ApostropheCMS przed wersją 3.6.2 ma podatność w module import-export, gdzie ścieżka źródłowa załącznika jest konstruowana z kontrolowanych przez atakującego pól _id, name i extension bez zapewnienia, że ścieżka pozostaje w katalogu wyodrębnionych załączników. Pozwala to uwierzytelnionemu współtwórcy zaimportować spreparowane archiwum, odczytać plik hosta z dozwolonym rozszerzeniem i opublikować skopiowany plik pod nieuwierzytelnionym adresem URL uploads.
- CVE-2026-45014Średnie
ApostropheCMS to otwartoźródłowy system zarządzania treścią oparty na Node.js. Wersje do 4.29.0 włącznie są podatne na przechowywane ataki typu cross-site scripting z powodu niesanitizowanej nazwy wyświetlanej użytkownika w podpowiedzi wersji roboczej.
- CVE-2026-45012Wysokie
ApostropheCMS to otwartoźródłowy system zarządzania treścią oparty na Node.js. W wersjach do 4.29.0 w procesie importu widgetu rich-text występuje podatność na uwierzytelnione ataki SSRF, umożliwiająca atakującemu wymuszenie na serwerze pobrania kontrolowanych przez niego adresów URL.
- CVE-2026-45011Wysokie
ApostropheCMS w wersji 4.29.0 zawiera podatność na przechowywane ataki XSS w funkcjonalności widgetu obrazów. Użytkownik z rolą Edytora może skonfigurować link widgetu obrazów, aby używał ładunku URL javascript:, co pozwala na publikację złośliwego widgetu na stronie.
Oryginalny opis (angielski, źródło NVD)
ApostropheCMS is an open-source Node.js content management system. Versions up to and including 4.29.0 have a password reset flow that constructs the reset URL using `req.hostname`, which is derived directly from the attacker-controlled HTTP `Host` header when `apos.baseUrl` is not explicitly configured. An unauthenticated attacker who knows a victim's email address can send a crafted reset request that causes the application to email the victim a reset link pointing to the attacker's domain. When the victim clicks the link, the valid reset token is delivered to the attacker, enabling full account takeover. As of time of publication, no known patched versions are available.

