Hlavní navigace

Jsou mobilní procesory trojským koněm smartphonů?

 Autor: Depositphotos
Tento měsíc odhalené zranitelnosti v mobilních čipech Qualcommu ukazují, že bezpečnostní problémy mobilů nemusí pocházet jen z malwaru v aplikacích.
Karel Wolf 25. 8. 2020
Doba čtení: 5 minut

Sdílet

Kdy se zkusíte zamyslet, kolik procesorů se vlastně nalézá ve vašem chytrém telefonu, odpověď vás možná překvapí. Jen SoC Snapdragon od Qualcommu, což je jeden z nejužívanějších čipů pro chytré telefony střední a vyšší třídy, jich obsahuje celou řadu. Každý z nich představuje potenciální útočný vektor. Když se pak skutečně ukáže, že je některý z nich obsahuje zranitelnosti, problém je na stole.

Přesně to se nedávno prokázalo u DSP čipů právě od výše zmiňovaného amerického výrobce. Výzkumníci izraelského Check Pointu odhalili v těchto čipech na 400 zranitelností dosud neznámého typu. Celý způsob útoku na letošním DEF CONu ve zkratce shrnul bezpečnostní výzkumník Slava Makkaveev ve své zhruba dvacetiminutové přednášce Pwn2Own Qualcomm Compute DSP for Fun and Profit

Společnost později vydala na toto téma také tiskovou zprávu, která se sice zmiňuje o překvapivém množství objevených zranitelností, samotným útokem se ale příliš nezabývá a je psána velmi diplomaticky ve vztahu k postiženému výrobci čipů.

V čem je chyba

Na jednom průměrném mobilním čipu nalezneme nejčastěji hned pět procesorů – ARM-based CPU, GPU, bezdrátový modem, Image Signal Processor a právě DSP, neboli digitální signálový procesor. DSP (který se dále dělí podle funkce na cDSP, aDSP, mDSP, sDSP) obstarává celou škálu úkonů, jeho hlavním benefitem je přitom vždy vysoký specializovaný výkon při velmi nízké spotřebě energie. Zaměřuje se na práci se signály v reálném čase a jejich přeměnu na zpracovatelná data (například rozpoznává váš hlas, když řeknete „Ahoj, Google!“). 

Technologie je zajímavá i tím, že tento typ čipů (které mimochodem představují obrovský a rychle rostoucí byznys) je na trh dodáván jako „černá skříňka“, kterou mohou spravovat a programovat jen privilegovaní OEM dodavatelé softwaru. Spuštěný kód pak musí být podepsán výrobcem, v našem případě společností Qualcomm.

V případě poměrně zásadního subsystému aDSP (audio digital-signal processing) a cDSP (compute digital-signal processing) se ovšem ukázalo, že může aplikace pro Android obejít podpis Qualcommu a spustit privilegovaný kód na DSP. To otevírá dveře škále útoků (spuštění privilegovaného kódu, DoS, ale i dalších). 

V případě Qualcommu se základní pochybení nalézalo na straně (Hexagon) SDK pro již zmiňované dodavatele softwaru. Několik vážných chyb v SDK ve finále vedlo ke stovkám skrytých zranitelností jak přímo v kódu vlastněného Qualcommem, tak v kódu jeho partnerů. Jako zranitelné se ukázaly prakticky všechny DSP knihovny, které se nalézají v SoC architektuře výrobce. Většina těchto bezpečnostních mezer byla navíc generována zcela automaticky.

Opravy potrvají měsíce

Qualcomm ve svých CPU využívá vlastní DSP označené jako Hexagon. Na tomto DSP běží operační systém QuRT OS, který, jak již bylo řečeno, spouští pouze kód podepsaný Qualcomem. Kvůli chybám v existujících knihovnách je ovšem možné neautorizovaně spouštět na DSP procesoru privilegovaný kód a přeměnit tak telefon například na velmi efektivní špehovací zařízení (využívat mikrofon, kameru, nahrávání hovorů), nebo z nich pohodlně vytáhnout třeba zvuková, obrazová a lokalizační data. 

Možnosti jsou však širší, útočníci mohou také s využitím zranitelností mobilní telefon znefunkčnit (provedení Denial of Service útoku), a celý škodlivý kód je přitom možné kompletně zneviditelnit a stejně tak jej využít ke skrytí jiného malwaru. K úspěšnému útoku přitom stačí přesvědčit oběť k nainstalování zdánlivě neškodné aplikace, která nepotřebuje žádná systémová oprávnění, takže nemusí vzbudit podezření.

Přestože bylo po nahlášení chyb SDK promptně opraveno, většina telefonů je stále zranitelných. Všichni tvůrci softwaru pro DSP totiž musejí překompilovat svůj kód a ten následně dostat na koncová zařízení, přičemž řada starších Android telefonů bude zranitelná pravděpodobně i nadále.

„Předpokládáme, že úplné odstranění souvisejících problémů a rizik může trvat měsíce nebo i roky. Nyní je na výrobcích, jako jsou Google, Samsung, Xiaomi a další, aby integrovali záplaty do svých telefonů. Podle našich odhadů to ovšem bude chvíli trvat,“ prohlásil Yaniv Balmas, šéf cyber research ve společnosti Check Point.

Samotný Qualcomm sice tvrdí, že neexistují stopy po tom, že by dané zranitelnosti někdo zneužíval, přesto ale silně doporučuje koncovým uživatelům záplatovat jejich zařízení hned v okamžiku, kdy budou nové opravy kódu k dispozici, a mezitím instalovat aplikace pouze z opravdu důvěryhodných zdrojů (primárně Google Play Store).

O něco hlouběji do králičí nory

DSP, které jsou součástí SoC architektury ovládající mobilní zařízení, jsou samy o sobě poměrně mocným „system on a chip“ prvkem, který umožňuje vykonávat se zařízením poměrně širokou škálu činností – od rychlého dobíjení až po AI výpočty, kamerový streaming nebo zpracování audia a videa v nízkoenergetickém módu. 

V nějaké formě se tak s DSP čipy dnes setkáme prakticky ve všech typech jen trochu chytrých mobilních telefonů, ale také v obrovské škále zařízení, která sahá od uživatelské techniky až po IoT prvky. Zařízení mají často integrováno více DSP a každý z nich představuje dosud příliš dobře neprobádaný nový vektor útoku. Makkaveev ve své prezentaci ke konci (17:42) jako příklad demonstroval, jak může být zranitelnost v knihovnách DSP zneužita na zranitelném zařízení k vykonání náhodného kódu.

„Tyto čipy představují nový útočný vektor a slabá místa v sytému mobilních zařízení. To, co je činí nejzranitelnější, je fakt, že jsou spravovány téměř výhradně jako ‚černé skřínky‘, takže je velmi složité pro kohokoliv s výjimkou jejich výrobce revidovat jejich design, funkcionalitu či kód,“ prohlásil během své prezentace Makkaveev. 

To, že nepůjde o triviální problém, ostatně naznačuje i fakt, že si Check Point pro zranitelnosti objevené v cDSP zarezervoval hned 6 označení (jejich veřejný popis v databázi zranitelnosti stále chybí): CVE-2020–11201, CVE-2020–11202, CVE-2020–11206, CVE-2020–11207, CVE-2020–11208 a CVE-2020–11209.

Jako by samotný problém nestačil, knihovny pro Hexagon momentálně postrádají kontrolu verze a zranitelný software jednoho OEM dodavatele může běžet na zařízení jiného OEM. Vzniká tak ideální prostředí pro snadné šíření zranitelností napříč zařízeními s Androidem. 

Řešení v nedohlednu?

Jak ji bylo řečeno, Qualcomm promptně opravil své SDK a připravuje záplaty, které opraví současné děravé knihovny. Nicméně to přináší více otázek než uklidňujících odpovědí. 

WT100 SEO

Jak rychle se k těmto záplatám OEM výrobci dostanou? Která zařízení budou záplatována a která vzhledem ke svému stáří a vzrůstajícím nákladům na straně OEM výrobce ponechána svému osudu? Jak budou záplaty distribuovány uživatelům a kolik jich si je skutečně nainstaluje (pokud nebude záplata vynucena automaticky)?

Ani ideální scénář distribuce záplat nás ale coby uživatele neochrání před nezodpovědností výrobců, kterou naznačuje například zmiňovaná absence kontroly verzování. Dokud budou DSP čipy na trh dodávány jako blackbox, bude riziko stále nezdravě vysoké a můžeme se pouze spoléhat, že si doposud neobjevených zranitelností všimnou dříve bezpečnostní výzkumníci než útočníci.