CVE-2026-47252
KrytyczneCVSS 9.0Streszczenie
Anyquery przed wersją 0.4.5 pozwala uwierzytelnionym użytkownikom z uprawnieniami INSERT lub UPDATE do wirtualnych tabel na macOS na wykonanie poleceń systemowych. Wtyczki Chrome, Brave, Edge i Safari interpolują kontrolowany przez SQL adres URL do skryptu AppleScript lub JXA przekazywanego do osascript.
Ocena ryzyka
Atakujący może wykonać dowolne polecenia z uprawnieniami procesu anyquery na hoście macOS, co prowadzi do pełnej kompromitacji systemu.
Rekomendacja
Zaktualizuj Anyquery do wersji 0.4.5 lub nowszej, która naprawia tę podatność.
Inne podatności w Anyquery
Zobacz wszystkie- CVE-2026-50006Krytyczne
Anyquery przed wersją 0.4.5 przekazuje nieuwierzytelnione zapytania SQL z portu serwera kompatybilnego z MySQL do SQLite bez ograniczania celów systemu plików ATTACH DATABASE. Zdalny atakujący może wybrać dowolną ścieżkę zapisywalną przez proces serwera Anyquery, spowodować utworzenie tam pliku bazy danych przez SQLite i umieścić w nim kontrolowaną przez siebie treść tabeli. Umożliwia to tworzenie lub nadpisywanie dowolnych plików, powodując utratę integralności systemu plików i odmowę usługi; zdalne wykonanie kodu jest możliwe tylko wtedy, gdy inna usługa interpretuje zapisany plik lub proces ma odpowiednio uprzywilejowany cel zapisu. Luka została naprawiona w wersji 0.4.5.
- CVE-2026-54629Wysokie
Anyquery przed wersją 0.4.5 udostępnia moduły wirtualnych tabel SQLite (csv_reader, log_reader) przez port serwera MySQL bez uwierzytelnienia, co pozwala zdalnemu atakującemu na odczyt dowolnych plików z systemu.
- CVE-2026-54628Wysokie
Anyquery przed wersją 0.4.5 udostępnia przez nieuwierzytelniony port serwera MySQL kompatybilne z SQLite moduły tabel wirtualnych obsługujące URL-e (json_reader, log_reader) bez ograniczania docelowych adresów wychodzących. Zdalny atakujący może podać adres loopback, sieci prywatnej lub link-local (np. metadane chmury), co powoduje pobranie zasobu przez go-getter i udostępnienie odpowiedzi jako danych tabeli.
- CVE-2026-47253Wysokie
W Anyquery przed wersją 0.4.5 funkcja SQL clear_plugin_cache(plugin) w namespace/other_functions.go przekazuje kontrolowany przez wywołującego parametr plugin przez path.Join do os.RemoveAll bez odrzucania segmentów przejścia katalogowego. Posiadacz tokenu bearer z niskimi uprawnieniami może wywołać tę funkcję przez endpoint /v1/query, powodując rekursywne usunięcie dowolnego katalogu zapisywalnego przez proces serwera.
Oryginalny opis (angielski, źródło NVD)
Anyquery is an SQL query engine built on top of SQLite. Prior to 0.4.5, authenticated users with INSERT or UPDATE access to affected macOS virtual tables can execute operating-system commands because the Chrome plugin and equivalent Brave, Edge, and Safari variants interpolate a SQL-controlled URL into AppleScript or JXA source passed to osascript. In plugins/chrome/tabs.go, tabsTable.Insert() passes the URL through fmt.Sprintf(newTabScript, url), and tabsTable.Update() uses fmt.Sprintf(setURLScript, pk, url). A URL containing quote and newline characters can break out of the intended string or property record and append script statements, resulting in arbitrary command execution with the privileges of the anyquery process on the macOS host. This issue is fixed in version 0.4.5.

