WhatsApp, Signal a Threema obsahujú zraniteľnosť

Výskumníci identifikovali zraniteľnosť, ktorá narúša súkromie polohy používateľov aplikácií WhatsApp, Signal a Threema.

Táto správa skúma zistenia výskumníkov a ponúka potenciálne riešenia na zmiernenie vektora útoku. Tím výskumníkov zistil, že spustením špeciálne vytvoreného časového útoku je možné odvodiť polohu používateľov populárnych aplikácií na zasielanie okamžitých správ s presnosťou, ktorá presahuje 80%. Trik spočíva v meraní času, za ktorý útočník dostane oznámenie o stave doručenia správy odoslanej cieľu. Keďže mobilné internetové siete a infraštruktúra serverov aplikácií IM majú špecifické fyzikálne vlastnosti, ktoré majú za následok štandardné dráhy signálu, tieto oznámenia majú predvídateľné oneskorenia na základe polohy používateľa. Meraním týchto oneskorení v prípravnej fáze práce, ako je odosielanie správ, keď je známa poloha cieľa, by útočník mohol kedykoľvek v budúcnosti zistiť, kde sa príjemca správy nachádza, a to jednoduchým odoslaním novej správy a meraním času potrebného na doručenie oznámení o stave doručenia.

Ako výskumníci analyzovali vo svojom technickom dokumente, tento časový útok by mohol dobre fungovať na lokalizáciu krajiny, mesta, okresu príjemcu, a dokonca aj na lokalizáciu toho, či je pripojený na Wi-Fi alebo mobilný internet. Ak útočníci vykonajú dostatok testov na sformulovanie rozsiahleho súboru údajov proti cieľu, mohli by odvodiť jeho polohu zo súboru daných možných miest v meste, ako napríklad „domov“, „kancelária“, „telocvičňa“ atď. na základe ničoho iného ako oneskorenia oznámenia o doručení. Tieto oznámenia sú štandardom v mnohých populárnych aplikáciách IM a výskumníci potvrdili, že sú zneužiteľné aj proti (všeobecne) najbezpečnejším službám messengerov, ako sú Signal a Threema, ako aj WhatsApp. Na to, aby útok na časovanie fungoval, musí protivník použiť smartfón na odosielanie správ a aplikáciu na zachytávanie paketov, ako je Wireshark, na analýzu vlastnej prevádzky TCP a získanie informácií o časovaní.

Útočník a obeť sa musia navzájom poznať a musia viesť predchádzajúcu konverzáciu v aplikácii IM, čo je podmienkou útoku aj prípravných prác. Analýza sieťovej prevádzky môže útočníkovi pomôcť určiť, ktoré pakety sú doručenými stavovými oznámeniami. V aplikáciách testovaných výskumníkmi majú tieto pakety buď vopred určené veľkosti, alebo majú identifikovateľné vzory štruktúry. Ďalej musí útočník klasifikovať rôzne miesta a priradiť ich k nameraným časom „round-trip“ a potom sa pokúsiť tieto dvojice korelovať s polohou cieľa pomocou známeho súboru údajov. Dôsledky tohto útoku sú alarmujúce z hľadiska ochrany súkromia používateľov. Tieto platformy, najmä Signal a Threema, sa propagujú ako bezpečné a súkromné formy komunikácie, ktoré idú nad rámec bezpečnosti iných platforiem.

WhatsApp, najväčší z týchto troch uvedených, má podľa niektorých odhadov približne 2 miliardy používateľov. Signal a Threema sú oveľa menšie, majú približne 40 miliónov, resp. 10 miliónov používateľov. Hoci sa miliardy ľudí na celom svete spoliehajú na tieto platformy v oblasti bezpečnej a šifrovanej komunikácie, tieto zistenia nám ukazujú, že súkromie používateľov týkajúce sa polohy je naďalej zraniteľné voči útokom. Identifikujeme však niektoré potenciálne riešenia. Pri vykonávaní experimentov si výskumníci všimli, že niektoré zariadenia počas prijímania správ nečinne pracovali, čo môže pokaziť výsledky útoku a je prakticky nespoľahlivým protiopatrením. Solídnym spôsobom, ako sa môžu vývojári aplikácií vysporiadať s týmto problémom, je zavedenie systému, ktorý by náhodne určoval časy potvrdenia doručenia odosielateľovi.

Stačilo by čokoľvek od 1 do 20 sekúnd, aby sa tento časový útok nedal uskutočniť a zároveň by to nepoškodilo praktickú užitočnosť oznámení o stave doručenia. Z pohľadu používateľa, ak aplikácia umožňuje vypnúť funkciu oznámenia, ktorá informuje odosielateľa o prijatí správy, by sa použitím tohto nastavenia problém vyriešil rozhodne, pretože by sa odstránil zneužitý prvok. Napokon, používatelia môžu v mobilných zariadeniach využívať aj virtuálnu súkromnú sieť VPN (virtual private network), ktorá zvyšuje latenciu a pomáha zahmlievať údaje o polohe. Napríklad pripojenie k serveru VPN, ktorý sa nenachádza v blízkosti fyzickej polohy používateľa, by malo narušiť načasovanie stavových oznámení. Prerušované prepínanie umiestnenia servera VPN by ďalej zvýšilo variabilitu načasovania správ. To však predpokladá, že tieto aplikácie neobchádzajú sieť VPN, ale nedávne správy ilustrujú aj zraniteľnosti sietí VPN pre systém Android.

Dva z menovaných komunikátorov oznámili, že situáciu prešetrujú a čoskoro sa k správe vyjadria. Threema poskytla nasledujúce vyhlásenie: „Už sme zvažovali rôzne riešenia a vykonali sme rôzne testy, vrátane takých, pri ktorých klient náhodne mierne oneskorí oznámenia o doručení, aby sa tieto druhy časových analýz stali nepoužiteľnými.“ Upozorňujeme však, že praktická využiteľnosť týchto časových analýz je diskutabilná: Používatelia zvyčajne nemajú aplikáciu otvorenú stále a push oznámenia, ktoré prebúdzajú aplikáciu na pozadí, už pridávajú značné oneskorenie až niekoľko sekúnd.

Zdroj