CVE-2026-18737
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 15 - wyżej niż 15% wszystkich znanych CVE
Streszczenie
Shlink zawiera podatność na ślepe wstrzykiwanie SQL, która pozwala każdemu posiadaczowi klucza API na wstrzyknięcie dowolnych fragmentów SQL poprzez niezweryfikowaną wartość direction w parametrze orderBy endpointu statystyk tagów. Atakujący może skonstruować złośliwy string direction zawierający podzapytania SQL, które trafiają niesanityzowane do klauzuli ORDER BY Doctrine QueryBuilder, umożliwiając ekstrakcję wrażliwych danych, takich jak długie URL-e, rekordy odwiedzin, adresy IP, dane geolokalizacyjne, user-agenty oraz zahaszowane sekrety kluczy API.
Ocena ryzyka
Ryzyko obejmuje wyciek wrażliwych danych, w tym kluczy API i danych odwiedzających, co może prowadzić do naruszenia poufności i integralności systemu.
Rekomendacja
Zaleca się natychmiastową aktualizację Shlink do wersji, która zawiera poprawkę usuwającą tę podatność. Należy również ograniczyć uprawnienia kluczy API i stosować parametryzowane zapytania.
Inne podatności w Shlink
Zobacz wszystkie- CVE-2026-50887Krytyczne
W wersji 5.0.1 shlink występuje podatność typu Server-Side Request Forgery (SSRF) w automatycznym komponencie rozwiązywania tytułów krótkich URL, co pozwala atakującym na skanowanie zasobów wewnętrznych poprzez dostarczenie spreparowanego longUrl.
- CVE-2026-18738Średnie
Shlink w wersjach 5.0.0 do 5.1.5 zawiera podatność na wstrzykiwanie formuł CSV. Nieuwierzytelniony atakujący może wysłać pojedyncze żądanie do dowolnego skróconego URL-a, umieszczając złośliwe wartości w nagłówkach User-Agent, Referer lub ścieżce żądania, które zaczynają się od znaków wyzwalających formuły (=, +, -, @). Po wyeksportowaniu danych wizyt do pliku CSV i otwarciu go w programie arkuszowym, formuły DDE lub WEBSERVICE są wykonywane na komputerze administratora.
- CVE-2026-18736Średnie
Shlink zawiera podatność na fałszowanie żądań po stronie serwera (SSRF), która pozwala uwierzytelnionym posiadaczom klucza API na zmuszenie serwera do wysłania dowolnych żądań HTTP GET poprzez podanie spreparowanego długiego URL-a podczas tworzenia skróconego URL-a z włączoną automatyczną rozdzielczością tytułu. Atakujący mogą użyć URL-i wskazujących na publiczne hosty, które przekierowują do wewnętrznych celów, w tym adresów loopback, zakresów link-local oraz endpointów metadanych chmury, takich jak 169.254.169.254, w celu eksfiltracji informacji o usługach wewnętrznych.
Oryginalny opis (angielski, źródło NVD)
Shlink contains a blind SQL injection vulnerability that allows any authenticated API key holder to inject arbitrary SQL fragments by supplying an unvalidated direction value in the orderBy query parameter of the tag statistics endpoint. Attackers can craft a malicious direction string containing SQL subqueries that flows unsanitized into a Doctrine QueryBuilder ORDER BY clause, enabling time-based, boolean-oracle, and error-based extraction of sensitive data including long URLs, visitor records, IP addresses, geolocation data, user agents, and hashed API key secrets from any tenant.

