CVE-2026-78555
KrytyczneCVSS 9.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 28 - wyżej niż 28% wszystkich znanych CVE
Streszczenie
RansomLook ujawniał pełne klucze API w źródle HTML uwierzytelnionej strony administracyjnej /admin/apikeys. Interfejs pokazywał tylko skróconą reprezentację klucza, ale pełny token był osadzony w ukrytych polach formularza używanych do akcji włączania/wyłączania, dostępu prywatnego i usuwania.
Ocena ryzyka
Osoba atakująca, która uzyska dostęp do źródła strony lub DOM, może odzyskać klucze API i użyć ich do nieautoryzowanego uwierzytelnienia z uprawnieniami przypisanymi do klucza, w tym dostępem do prywatnych danych.
Rekomendacja
Zastosuj poprawkę, która usuwa klucze API z renderowania strony i zastępuje je nieprzezroczystymi uchwytami opartymi na SHA-256.
Inne podatności w RansomLook
Zobacz wszystkie- CVE-2026-78387Krytyczne
RansomLook zawiera słabość autoryzacji w internetowym edytorze konfiguracji dostępnym przez punkt końcowy /admin/config. Punkt końcowy wymaga uwierzytelnionej sesji, ale nie przeprowadza jawnej kontroli uprawnień administratora przed umożliwieniem dostępu do funkcji zarządzania konfiguracją. Uwierzytelniony użytkownik o niskich uprawnieniach może modyfikować plik config/generic.json, zmieniając ustawienia powiadomień, LDAP, SMTP i ogólne ustawienia aplikacji.
- CVE-2026-78372Krytyczne
RansomLook nie egzekwuje spójnie kontroli autoryzacji przy dostępie do grup, rynków i notatek okupu oznaczonych jako prywatne. Nieuwierzytelniony lub nieautoryzowany zdalny atakujący może uzyskać dostęp do informacji związanych z prywatnymi encjami przez kilka widoków internetowych i punktów końcowych API. Funkcjonalność /compare może być również zapytana bezpośrednio z nazwą prywatnej encji, umożliwiając nieautoryzowanemu użytkownikowi pobranie informacji takich jak liczba postów, sumy luster i czas działania, nawet gdy encja jest wykluczona z normalnego interfejsu użytkownika.
- CVE-2026-78370Krytyczne
RansomLook zawiera wadę autoryzacji w starszej funkcji eksportu bazy danych, która może pozwolić nieuwierzytelnionym zdalnym użytkownikom na pobranie informacji przeznaczonych do pozostania prywatnymi. Punkt końcowy /export/<database> umożliwia eksport wybranych wewnętrznych baz danych bez wymagania uwierzytelnienia. Chociaż dla niektórych baz encji wykonywane jest ograniczone filtrowanie, inne eksportowalne bazy są zwracane bezpośrednio bez spójnego stosowania ograniczeń dostępu do prywatnych encji. W rezultacie informacje związane z grupami, rynkami, postami lub innymi rekordami oznaczonymi jako prywatne mogą być zawarte w eksporcie dostępnym dla nieuwierzytelnionego żądającego.
- CVE-2026-78553Wysokie
RansomLook utworzył klucz podpisywania sesji Flask bez ograniczenia uprawnień pliku, co skutkuje uprawnieniami takimi jak 0644. Inni lokalni użytkownicy mogą odczytać sekret kryptograficzny, co pozwala na generowanie ważnych ciasteczek sesyjnych i podszywanie się pod uwierzytelnionych użytkowników, w tym administratora.
- CVE-2026-78551Wysokie
Podatność w RansomLook umożliwia nieuwierzytelnionemu atakującemu enumerację nazw użytkowników, nieograniczone ataki siłowe na hasła oraz potencjalne wyczerpanie zasobów aplikacji. Problem wynika z różnic w czasie odpowiedzi dla istniejących i nieistniejących nazw użytkowników oraz braku ograniczeń liczby nieudanych prób logowania.
- CVE-2026-78391Wysokie
RansomLook zawiera podatność na trwały atak XSS w widoku szczegółów portfela kryptowalut. Adresy kryptowalut i nazwy blockchainów pochodzące z zewnętrznych źródeł, w tym publicznego feedu ransomwhe.re, były przechowywane bez wystarczającej walidacji i osadzane bezpośrednio w atrybucie onclick JavaScript. Mimo zastosowania autoescapingu Jinja, dane niezaufane umieszczone w stringu JavaScript wewnątrz atrybutu HTML mogły zostać zdekodowane przez parser HTML i wykonane jako kod.
- CVE-2026-78386Wysokie
RansomLook ujawnia wrażliwą konfigurację skrobania po stronie operatora przez nieuwierzytelnione odpowiedzi API. Rekordy lokalizacji związane z grupami ransomware i rynkami są zwracane prawie w całości nieuwierzytelnionym wywołującym, jeśli lokalizacja nie jest oznaczona jako prywatna. Rekordy te mogą zawierać wewnętrzne pola, takie jak nagłówki uwierzytelniające, ciasteczka sesji, skrypty inicjujące i szczegóły środowiska przeglądarki.
- CVE-2026-78385Wysokie
RansomLook zawiera niewystarczającą walidację zasobów w funkcji generowania analiz PDF. Dokumenty analiz są konwertowane z Markdown do HTML i przekazywane do WeasyPrint w celu renderowania PDF. Przed poprawką WeasyPrint używał domyślnego pobieracza URL, co pozwalało na nieograniczone rozwiązywanie referencji do zasobów zawartych w analizie.
- CVE-2026-78381Wysokie
RansomLook zawiera podatność typu path traversal w obsłudze pola screen powiązanego z postami grupowymi. Handler API GroupPost.get łączy wartość screen kontrolowaną przez bazę danych bezpośrednio z katalogiem source/ aplikacji i otwiera wynikową ścieżkę bez weryfikacji, czy rozwiązany plik pozostaje w zamierzonym katalogu. Złośliwa instancja nadrzędna może dostarczyć sekwencje traversal, takie jak ../config/generic.json, co prowadzi do odczytu dowolnych plików.
- CVE-2026-78380Wysokie
Podatność w RansomLook polega na braku egzekwowania ustawień prywatności grup i rynków ransomware podczas dystrybucji nowo zebranych postów ofiar do zewnętrznych kanałów powiadomień. Logika po przetworzeniu sprawdza tylko, czy pojedynczy post jest oznaczony jako prywatny, ale nie weryfikuje, czy grupa lub rynek, do którego post należy, jest skonfigurowany jako prywatny. W rezultacie informacje o ofiarach z prywatnych grup lub rynków mogą być automatycznie publikowane przez włączone kanały Rocket.Chat, Mastodon, Bluesky i e-mail, a także dodawane do publicznego feedu MISP.
Oryginalny opis (angielski, źródło NVD)
RansomLook exposed complete API keys in the HTML source of the authenticated /admin/apikeys administration page. Although the interface displayed only a shortened representation of each key, the full token was embedded in hidden form fields used by the enable/disable, private-access, and delete actions. As a result, API credentials could be recovered by inspecting the page source or DOM. The credentials could also be unintentionally exposed through components that retain or inspect HTTP response bodies, such as debugging proxies, browser caches, monitoring systems, or other intermediaries. An attacker obtaining one of these tokens could subsequently authenticate using the privileges assigned to that key, including access to private data where the key was granted such permissions. The patch removes API keys from subsequent page rendering and replaces them with SHA-256-derived opaque handles. Administrative actions submit only these handles, which are resolved back to the corresponding token on the server. The full API key is therefore disclosed only once, when it is initially created.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

