OpenClaw: luka CVE-2026-25253 umożliwia 1-klikowe RCE przez złośliwy link

securitybeztabu.pl 4 tygodni temu

Wprowadzenie do problemu / definicja luki

W OpenClaw ujawniono podatność o wysokiej istotności, która pozwala na zdalne wykonanie kodu (RCE) po jednym kliknięciu w link. Błąd otrzymał identyfikator CVE-2026-25253 i ocenę CVSS 8.8 (HIGH).

Łańcuch ataku jest szczególnie niebezpieczny, bo wykorzystuje typowy przepływ w przeglądarce (wejście na stronę) do wykradzenia tokenu uwierzytelniającego, a następnie przejęcia „gateway” narzędzia – co w praktyce może skończyć się pełną kontrolą nad hostem, na którym działa agent.

W skrócie

  • Co jest podatne: wersje OpenClaw przed 2026.1.29.
  • Wektor: użytkownik musi odwiedzić złośliwą stronę / kliknąć link (UI:R w CVSS).
  • Sedno problemu: UI kontrolne ufa parametrowi gatewayUrl z query string i automatycznie łączy się po WebSocket, wysyłając zapisany token.
  • Skutek: kradzież tokenu → operator-level dostęp do gateway API → zmiany konfiguracji i wykonanie kodu na hoście.
  • Naprawa: aktualizacja do 2026.1.29 (wydana 30 stycznia 2026) lub nowszej.

Kontekst / historia / powiązania

OpenClaw to self-hosted agent AI, który potrafi automatyzować działania w systemie (uruchamianie poleceń, praca na plikach, orkiestracja workflow). Taka klasa narzędzi ma „naturalnie” wysoki blast radius — przejęcie sesji operatora zwykle oznacza dostęp do wszystkiego, do czego agent ma uprawnienia.

W tym incydencie najważniejsze jest to, iż atak nie wymaga bezpośredniego dostępu do hosta ofiary na start — wystarcza przejęcie tokenu z warstwy przeglądarkowej, a resztę „dowozi” API/agent po stronie gateway.

Analiza techniczna / szczegóły luki

1) Zaufanie do gatewayUrl z query string

Opis podatności wskazuje, iż aplikacja (Control UI) pobiera gatewayUrl z parametrów URL i używa go do zestawienia połączenia. W wersjach podatnych brakuje walidacji/ograniczeń, przez co atakujący może podstawić własny adres.

2) Automatyczne połączenie WebSocket i „wyciek” tokenu

Najbardziej krytyczny element: UI auto-connectuje po załadowaniu, a w payloadzie połączenia WebSocket wysyła zapisany token gateway. jeżeli gatewayUrl wskazuje na serwer atakującego, token trafia wprost do niego.

3) Co daje token: przejęcie gateway i droga do RCE

Po przechwyceniu tokenu atakujący może połączyć się z instancją OpenClaw ofiary i uzyskać dostęp o poziomie operatora do gateway API, co umożliwia arbitralne zmiany konfiguracji i wykonanie kodu na hoście gateway. W praktyce oznacza to klasyczne „account/session takeover”, ale dla komponentu, który ma bardzo szerokie uprawnienia systemowe.

4) Warunek wstępny (ważne w ocenie ryzyka)

Podatność dotyczy wdrożeń, w których użytkownik zalogował się do Control UI (token istnieje i jest możliwy do wysłania). To typowy warunek dla ataków opartych o kradzież sesji.

Praktyczne konsekwencje / ryzyko

Skutki dla organizacji i użytkowników technicznych są ciężkie:

  • kompromitacja hosta (RCE) i przejęcie środowiska automatyzacji,
  • dostęp do lokalnie przechowywanych danych i poświadczeń, jeżeli agent ma do nich uprawnienia,
  • szybka eskalacja do incydentu klasy „full takeover”, bo agent bywa „mostem” do systemów, przeglądarek, plików i integracji.

Warto też podkreślić „operacyjny” aspekt 1-kliku: takie wektory świetnie sklejają się z phishingiem, drive-by oraz kampaniami w mediach społecznościowych, bo kliknięcie linku jest zachowaniem powszechnym i trudnym do wyeliminowania politykami.

Rekomendacje operacyjne / co zrobić teraz

  1. Zaktualizuj do OpenClaw 2026.1.29 lub nowszej wszędzie, gdzie narzędzie jest używane (dev/staging/prod).
  2. Rotacja/rewokacja tokenów i kluczy
    Jeśli w Twoim modelu wdrożenia tokeny są długowieczne, rozważ ich wymuszoną rotację po aktualizacji (aby „stare” wykradzione tokeny przestały działać).
  3. Ogranicz ekspozycję Control UI
  • wystawiaj panel administracyjny tylko za VPN / w sieci wewnętrznej,
  • rozważ dodatkową warstwę uwierzytelnienia (np. reverse proxy z SSO/MFA),
  • stosuj twarde reguły origin/host (allowlist) dla połączeń do gateway.
  1. Hardening po stronie aplikacji (jeśli utrzymujesz fork / wkład w projekt)
  • walidacja gatewayUrl (allowlist domen, schematów, portów),
  • usunięcie auto-connect lub wymuszenie świadomej zgody użytkownika,
  • ograniczenie sposobu przechowywania i wysyłania tokenów (minimalizacja ekspozycji w kontekście przeglądarki).
    To są dokładnie te elementy, które według opisu doprowadziły do eksfiltracji tokenu.
  1. Monitoring i detekcja nadużyć
  • szukaj nietypowych połączeń WebSocket i nieoczekiwanych zmian konfiguracji gateway,
  • koreluj logowania/wykorzystanie tokenów z anomaliami w zadaniach agenta (uruchamianie poleceń, modyfikacje plików),
  • dodaj alerty na „operator-level actions”, jeżeli Twoja telemetria to rozróżnia.

Różnice / porównania z innymi przypadkami

CVE-2026-25253 to dobry przykład, iż w agentach AI „prawdziwym wrogiem” bywa nie tyle model, co warstwa sterowania i zaufania między komponentami (UI → gateway). Klasyczne błędy webowe (zaufanie do danych wejściowych z URL, automatyczne połączenia, tokeny w nieodpowiednim kontekście) stają się krytyczne, gdy backend ma możliwość wykonywania działań systemowych.

W praktyce to wzorzec: session/token theft w narzędziu o wysokich uprawnieniach daje efekt porównywalny do RCE — bo „legalne” API umożliwia wykonanie tych samych destrukcyjnych czynności, tylko „w białych rękawiczkach”.

Podsumowanie / najważniejsze wnioski

  • CVE-2026-25253 to 1-klikowe przejęcie OpenClaw prowadzące do RCE przez eksfiltrację tokenu WebSocket.
  • Problem wynika z połączenia: zaufanie do gatewayUrl + auto-connect + wysyłka tokenu.
  • Aktualizacja do 2026.1.29 jest podstawową mitigacją, a dodatkowo warto utwardzić ekspozycję Control UI i rotować tokeny.

Źródła / bibliografia

  • The Hacker News — opis podatności i informacja o wersji naprawczej. (The Hacker News)
  • CCB Safeonweb — ostrzeżenie i zakres wersji podatnych. (ccb.belgium.be)
  • National Vulnerability Database (NIST) — rekord CVE i metryki. (NVD)
  • runZero — podsumowanie wpływu i zakresu wersji. (runZero)
  • SecurityWeek — opis scenariusza ataku i konsekwencji „gateway takeover”. (SecurityWeek)
Idź do oryginalnego materiału