CVE-2026-115720
ŚrednieCVSS 5.0Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 28 - wyżej niż 28% wszystkich znanych CVE
Streszczenie
Frappe Builder przed wersją 1.36.1 zawiera podatność SSRF w builder/api.py, gdzie funkcja assert_not_private_url() sprawdza tylko początkową nazwę hosta, zanim wywołania requests.get(url) podążą za przekierowaniami bez przypięcia IP. Uwierzytelniony atakujący może wywołać endpoint convert_to_webp (bez dekoratora uprawnień) z URL przekierowującym do wewnętrznych celów, takich jak usługi metadanych chmury, co umożliwia SSRF, skanowanie portów wewnętrznych lub zawieszenie żądania (DoS) z powodu braku limitu czasu.
Ocena ryzyka
SSRF może pozwolić na dostęp do wewnętrznych usług i metadanych chmury oraz na skanowanie sieci wewnętrznej. Brak limitu czasu umożliwia także ataki typu denial of service.
Rekomendacja
Zaktualizuj Frappe Builder do wersji 1.36.1 lub nowszej.
Inne podatności w Frappe Builder
Zobacz wszystkie- CVE-2026-115718Średnie
Frappe Builder w wersjach od 1.33.0 przed 1.36.0 zawiera podatność braku autoryzacji w endpoincie improve_prompt, pozwalającą dowolnej uwierzytelnionej sesji nie-Guest na wywoływanie uzupełnień LLM bez kontroli uprawnień. Atakujący mogą wywołać API improve_prompt, aby wykorzystać zapisany klucz API OpenRouter właściciela witryny przez resolve_api_key, zużywając płatne kredyty LLM i zamieniając witrynę w darmowe proxy LLM.
- CVE-2026-115717Wysokie
Frappe Builder przed wersją 1.36.1 zawiera podatność SSRF w punkcie API convert_to_webp, który nie stosuje kontroli dostępu has_page_write i wykonuje niechronione żądanie requests.get podążające za przekierowaniami bez ponownej walidacji adresów IP. Użytkownik z niskimi uprawnieniami może wskazać adres wewnętrzny lub użyć DNS rebinding i otwartych przekierowań, aby serwer pobrał zasoby sieci wewnętrznej lub metadane chmury, a odpowiedzi obrazów są zapisywane pod publicznie czytelnym adresem /files/.
Oryginalny opis (angielski, źródło NVD)
Frappe Builder before 1.36.1 contains a server-side request forgery vulnerability in builder/api.py where the assert_not_private_url() guard validates only the initial hostname before callers invoke requests.get(url) with default redirect-following and no IP pinning, allowing an attacker-supplied public URL to HTTP-redirect to internal or link-local addresses the guard never validated. An authenticated attacker can call the convert_to_webp endpoint, which lacks a permission decorator, with a URL that redirects to internal targets such as cloud metadata services to perform SSRF, internal port scanning, or trigger a request-hang denial of service due to the missing timeout.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

