Blog 24/7

zero-click

TAB. 1Hasłopo angielsku
Po angielskuzero-click exploit
Którą formą pisaćpo angielsku Polski odpowiednik istnieje, ale w praktyce nikt tak nie pisze. Zostaw angielski, polski trzymaj jako synonim.
Inne formyatak zero-click · podatność zero-click · atak bez kliknięcia
KategoriaAtaki i socjotechnika

Zero-click to exploit albo atak, który przejmuje urządzenie lub aplikację bez żadnego działania ofiary. Google Project Zero opisuje ten scenariusz tak: nie jest potrzebna interakcja użytkownika, atakujący nie musi wysyłać wiadomości phishingowych, a exploit działa po cichu w tle [1]. Wystarczy, że program sam przetworzy odebraną wiadomość, plik albo połączenie sieciowe. Polski serwis Sekurak tłumaczy określenie jako atak, który nie wymaga dodatkowego działania ofiary [3].

Jak działa

W klasycznym ataku przez phishing ofiara musi kliknąć link albo otworzyć załącznik. Project Zero nazywa taki wariant exploitem one-click i przypomina, że w sprawie z 2016 roku ofiary dostawały linki w SMS-ach, a do infekcji dochodziło dopiero po kliknięciu [1]. Zero-click usuwa ten krok. Celem staje się kod, który uruchamia się automatycznie: parser obrazów, podgląd wiadomości, usługa nasłuchująca w sieci.

Project Zero opisał to na przykładzie exploita FORCEDENTRY firmy NSO. Punktem wejścia był iMessage, więc do ataku wystarczał numer telefonu albo identyfikator Apple ID [1]. iMessage przetwarzał otrzymane pliki GIF, zanim wiadomość pojawiła się na ekranie. Biblioteka ImageIO rozpoznawała jednak format po zawartości, a nie po rozszerzeniu, przez co ponad 20 kodeków obrazu stało się częścią powierzchni ataku [1]. Schemat poniżej pokazuje ogólny przebieg takiego ataku.

RYS. 1Atak zero-click przez komunikator

W skali CVSS cechę tę opisuje metryka User Interaction. Wartość None oznacza, że podatny system można wykorzystać bez interakcji jakiegokolwiek użytkownika; przy tej wartości ocena bazowa jest najwyższa [4].

Odmiany

Zero-click nie jest jedną klasą błędu. To warunek wykorzystania, który może dotyczyć różnych podatności: błędów pamięci, obejścia uwierzytelniania czy zdalnego wykonania kodu.

OdmianaKanał dostarczeniaPrzykład
wiadomość w komunikatorzeplik przetwarzany przed wyświetleniemFORCEDENTRY w iMessage [1]
załącznik systemowyobraz w załączniku PassKitBLASTPASS [2]
usługa w sieci lokalnejprotokół AirPlay na porcie TCP 7000AirBorne [3]
aplikacja weboważądanie HTTP bez logowanialuka we wtyczce WordPressa [5]

Wariant sieciowy bywa samorozprzestrzeniający się. Według opisu Sekuraka łańcuch luk AirBorne pozwalał stworzyć złośliwe oprogramowanie, które atakuje kolejne urządzenia w sieci, jak robak komputerowy [3]. Wymagał jednak obecności atakującego w tej samej sieci i odpowiedniego ustawienia dostępu do AirPlay [3].

W WordPressie

Strona internetowa nie ma skrzynki odbiorczej, ale ma odpowiednik zero-click: podatność wykorzystywaną bez uwierzytelnienia, do której wykorzystania nie trzeba też żadnego działania administratora. Atakujący wysyła żądanie HTTP, a serwer sam je przetwarza. W wektorze CVSS takie luki mają zwykle metryki Privileges Required i User Interaction ustawione na None [4].

Typowe miejsca to punkty końcowe dostępne dla niezalogowanych. Hak wp_ajax_nopriv_{$action} obsługuje żądania Ajax od użytkowników niezalogowanych, czyli wtedy, gdy is_user_logged_in() zwraca false [6]. Drugim miejscem jest REST API: podręcznik WordPressa każe sprawdzać w permission_callback, czy użytkownik może wykonać daną akcję, najlepiej przez current_user_can [7]. Błąd w takim miejscu to niezabezpieczony endpoint REST API.

Przykładem jest CVE-2024-10924 we wtyczce Really Simple Security, instalowanej według Sekuraka około 4 000 000 razy [5]. Luka tkwiła w REST API wtyczki i działała, gdy w niej włączono uwierzytelnianie dwuskładnikowe [5]. Atakujący mógł bez hasła i loginu zalogować się jako dowolny użytkownik, także administrator, podając w żądaniu jego identyfikator [5]. Nikt na stronie nie musiał niczego kliknąć.

Poprawnie zarejestrowana trasa REST wygląda tak:

register_rest_route( 'moja-wtyczka/v1', '/ustawienia', array(
    'methods'             => 'POST',
    'callback'            => 'moja_wtyczka_zapisz',
    'permission_callback' => function () {
        return current_user_can( 'manage_options' );
    },
) );

Zagrożenia i skutki

Najgroźniejszą cechą zero-click jest brak sygnału dla ofiary. Project Zero pisze, że nawet osoby biegłe technicznie, które nie kliknęłyby linku, nie wiedzą, że są celem [1]. Autorzy dodają, że poza niekorzystaniem z urządzenia nie ma sposobu, by zapobiec takiemu atakowi [1].

Na telefonach zero-click służy głównie do instalacji oprogramowania szpiegowskiego, takiego jak Pegasus, zaliczanego do kategorii rządowych trojanów [1]. Na stronach WordPress skutkiem luki bez interakcji jest zwykle przejęcie konta administratora, a dalej wszystko, co administrator może zrobić [5]. Ponieważ atak nie wymaga ofiary, da się go zautomatyzować i prowadzić masowo.

Jak się bronić

Po stronie użytkownika telefonu podstawą jest szybka aktualizacja oprogramowania. Citizen Lab po odkryciu BLASTPASS wezwał do natychmiastowej aktualizacji urządzeń Apple, a osobom szczególnie narażonym zalecił tryb Lockdown Mode [2]. Według Citizen Lab i zespołu bezpieczeństwa Apple ten tryb blokował właśnie ten atak [2]. Stoi to obok ostrożniejszej oceny Project Zero, że przed exploitem zero-click nie ma obrony [1]: tryb ograniczony zmniejsza powierzchnię ataku, ale nie usuwa samego problemu.

Po stronie właściciela strony obrona ma kilka warstw:

Historia i przykłady

  • 2021, FORCEDENTRY. Luka wykorzystana przez exploit NSO w iMessage została usunięta 13 września 2021 roku w iOS 14.8 jako CVE-2021-30860 [1]. Citizen Lab przechwycił exploit użyty przeciw saudyjskiemu aktywiście [1].
  • 2023, BLASTPASS. Citizen Lab opisał 7 września 2023 roku łańcuch, który przejmował iPhone'y z iOS 16.6 bez działania ofiary, przez załączniki PassKit ze złośliwymi obrazami [2]. Apple nadał mu identyfikatory CVE-2023-41064 i CVE-2023-41061 [2].
  • 2024, Really Simple Security. Sekurak opisał 18 listopada 2024 roku lukę CVE-2024-10924 pozwalającą zalogować się jako dowolny użytkownik WordPressa [5].
  • 2025, AirBorne. Zespół Oligo Security Research opisał serię luk w AirPlay i AirPlay SDK, w tym CVE-2025-24252 i CVE-2025-24206, których połączenie dawało zdalne wykonanie kodu na macOS [3].
TAB. 2

Przypisy

7
  1. [1] A deep dive into an NSO zero-click iMessage exploit: Remote Code Execution · Google Project Zero
  2. [2] BLASTPASS: NSO Group iPhone Zero-Click, Zero-Day Exploit Captured in the Wild · The Citizen Lab
  3. [3] AirBorne, czyli Zero-Click RCE w applowej usłudze AirPlay · Sekurak
  4. [4] Common Vulnerability Scoring System v3.1: Specification Document · FIRST
  5. [5] Jak przy włączonym 2FA można się zalogować na dowolnego użytkownika (podatność w popularnym pluginie do WordPressa) · Sekurak
  6. [6] wp_ajax_nopriv_{$action} — Hook · WordPress.org
  7. [7] Adding Custom Endpoints — REST API Handbook · WordPress.org
TAB. 3

Hasła w tym artykule

19
TAB. 4

Linkują tutaj

2

Wszystkie kategorie → · Hasło w słowniku →

Blog 24/7
05.11CISA i FBI wzywają do zabezpieczenia sterowników chłodzenia po atakach w Europietherecord.media05.11Midnight Blizzard atakowała iPhone'y i Androidy przez zainfekowane strony w Europie i USAsecurityweek.com05.11APT29 kradła dane z iPhone'ów i Androidów przez przejęte i podrobione stronytherecord.media05.11Grupa APT29 przejęła skrypt Plerdy i atakowała niezałatane iPhone'y i Androidythehackernews.com05.11Microsoft wykrył 7,3 mld wiadomości phishingowych w III kwartale 2026microsoft.com05.11DigiCert ujawnia wyciek danych klientów i skanów dokumentów tożsamościbleepingcomputer.com05.11CWPdoor podmienia serwer cwpsrv w Control Web Panel i otwiera tylne wejście do Linuksableepingcomputer.com05.11Brytyjskie NCSC ostrzega, że narzędzia AI zwiększyły liczbę wykrywanych luk zero-daythehackernews.com05.11Skaner RootEvidence sprawdza starą lukę w Cisco IOS i dodaje nagłówki Opt-Outisc.sans.edu05.11Włamanie do portalu grantowego Norad, zagrożone dane 20 614 użytkownikówhelpnetsecurity.com