CVE-2026-53753
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 87 - wyżej niż 87% wszystkich znanych CVE
Streszczenie
Crawl4AI przed wersją 0.8.7 zawiera podatność w funkcji _safe_eval_expression() w mechanizmie computed fields. Walidator AST blokuje tylko atrybuty zaczynające się od podkreślenia, ale atrybuty obiektów generatora i ramki (gi_frame, f_back, f_builtins) nie zaczynają się od podkreślenia, co umożliwia całkowitą ucieczkę z sandboksa i wykonanie dowolnego kodu. Atak nie wymaga uwierzytelnienia (JWT domyślnie wyłączone) i jest wyzwalany przez POST /crawl z spreparowanym schematem ekstrakcji.
Ocena ryzyka
Organizacja narażona jest na zdalne wykonanie dowolnego kodu bez uwierzytelnienia, co może prowadzić do pełnego przejęcia serwera, kradzieży danych lub dalszego ataku na infrastrukturę.
Rekomendacja
Należy natychmiast zaktualizować Crawl4AI do wersji 0.8.7 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy tymczasowo wyłączyć endpoint POST /crawl lub wdrożyć uwierzytelnianie JWT.
Inne podatności w Crawl4AI
Zobacz wszystkie- CVE-2026-56260Krytyczne
Crawl4AI przed wersją 0.8.7 zawiera podatność umożliwiającą dowolny zapis plików w endpointach /screenshot i /pdf serwera API Docker. Parametr output_path akceptuje dowolne ścieżki systemowe bez walidacji, co pozwala atakującemu na nadpisanie plików serwera i spowodowanie odmowy usługi.
- CVE-2026-57572Krytyczne
Crawl4AI przed wersją 0.9.0 zawiera podatność w API Dockera, która pozwala na wstrzyknięcie argumentów do przeglądarki Chromium. Atakujący może wykorzystać przełączniki Chromium do podmiany polecenia uruchomienia procesu potomnego, co prowadzi do wykonania dowolnego kodu w kontenerze.
- CVE-2026-57571Krytyczne
W bibliotece Crawl4AI przed wersją 0.9.0 wykryto podatność na zapis dowolnego pliku. Atakujący może wpłynąć na nazwę pliku docelowego poprzez nagłówek Content-Disposition lub sugerowaną nazwę pliku, co umożliwia zapis pliku poza katalogiem docelowym. Może to prowadzić do zdalnego wykonania kodu.
- CVE-2026-26216Krytyczne
Crawl4AI w wersjach przed 0.8.0 zawiera podatność zdalnego wykonania kodu w API Docker. Punkt końcowy /crawl akceptuje parametr hooks zawierający kod Python, który jest wykonywany za pomocą exec(). Dozwolone wbudowane funkcje obejmowały __import__, co pozwala nieuwierzytelnionym atakującym na importowanie dowolnych modułów i wykonywanie poleceń systemowych.
- CVE-2026-119122Średnie
Crawl4AI przed 0.9.5 zawiera podatność blind server-side request forgery w serwerze Docker, która pozwala klientom API obejść proxy wyjściowe poprzez włączenie check_cache_freshness. Atakujący mogą zapisać w pamięci podręcznej kontrolowany URL, a następnie wywołać CacheValidator, aby podążał za przekierowaniami 302 lub DNS rebinding do adresów wewnętrznych i metadanych chmury w celu odkrywania portów i usług.
- CVE-2026-119121Średnie
Crawl4AI od 0.9.0 do 0.9.4 zawiera podatność wstrzyknięcia JavaScript w serwerze API Docker, która pozwala uwierzytelnionym klientom API uruchomić dowolny JavaScript na stronie crawlowej poprzez pola css_selector i wait_for z listy dozwolonych. Atakujący mogą wstrzyknąć cudzysłowy do css_selector lub dostarczyć warunki js: w wait_for, omijając blokadę js_code, aby zmienić stan strony i zwracaną treść crawlowania.
- CVE-2026-119120Wysokie
Crawl4AI w wersjach od 0.9.0 do 0.9.5 nie filtruje pola model_name w CosineStrategy w niezaufanych treściach żądań API Docker. Uwierzytelniony klient może wybrać model HuggingFace ładowany przez serwer, wskazując złośliwe repozytorium z plikiem wag pickle.
- CVE-2026-119119Wysokie
Crawl4AI przed wersją 0.9.5 zawiera podatność na odmowę usługi w serwerze API Docker, gdzie funkcja _clamp_untrusted() nie ogranicza pól delay_before_return_html, mean_delay i max_range w niezaufanych treściach CrawlerRunConfig. Nieuwierzytelniony atakujący może wysyłać ogromne wartości do /crawl lub /crawl/stream.
- CVE-2026-119118Średnie
Crawl4AI w wersji przed 0.9.5 zawiera podatność na nieprawidłową walidację certyfikatów, ponieważ Chromium jest zawsze uruchamiany z flagą --ignore-certificate-errors. Atakujący w sieci (man-in-the-middle lub kontrolujący DNS) mogą dostarczać sfałszowaną treść do crawlera oraz odczytywać wysyłane ciasteczka i nagłówki. Dodatkowo twardo zakodowana flaga --no-sandbox nadpisuje ustawienie CRAWL4AI_CHROMIUM_SANDBOX.
- CVE-2026-115508Średnie
Crawl4AI w wersjach od 0.7.0 przed 0.9.5 zawiera podatność na nadmierną złożoność wyrażeń regularnych w serwerze API Dockera, pozwalającą uwierzytelnionym klientom API na przesyłanie nieograniczonych wyrażeń regularnych w treści żądań /crawl. Atakujący mogą przesyłać wzorce powodujące katastrofalne cofanie poprzez RegexExtractionStrategy.custom, RegexChunking.patterns lub pola schematów JsonCss, JsonXPath i JsonLxml przeciwko spreparowanej stronie, aby zamrozić cały serwer, w tym /health.
Oryginalny opis (angielski, źródło NVD)
Crawl4AI is an open-source LLM friendly web crawler & scraper. Prior to 0.8.7, the _safe_eval_expression() function in the computed fields feature uses an AST validator that only blocks attributes starting with underscore. Python generator and frame object attributes (gi_frame, f_back, f_builtins) do NOT start with underscore, enabling a complete sandbox escape to achieve arbitrary code execution. The attack requires no authentication (JWT disabled by default) and is triggered via POST /crawl with a crafted extraction schema. This vulnerability is fixed in 0.8.7.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

