Hlavní navigace

Aplikace na iOS používající internet jsou napadnutelné podvržením komunikace

Daniel Dočekal

Skycure, objevitelé již několika pěkných bezpečnostních chyb, v úterý zveřejnili detaily o nedostatcích řady aplikací v prostředí Apple iOS

Skycure zmiňují na svém blogu (viz HTTP Request Hijacking) bezpečnostní nedostatek v řadě aplikací v iOSu, které používají internetovou komunikaci. HRH, jak problém nazývají (HTTP Request Hijacking), v detailnější podobě zveřejnili na  RSA Europe

Zmiňují také, že jakkoliv vždy objevené bezpečnostní nedostatky v dostatečném předstihu i podobě oznamují postižené straně, v tomto případě jde o velké množství aplikací a není možné přistoupit k vyrozumění každého tvůrce jednotlivě.

HRH spočívá v podvržení HTTP komunikace, kterou dnešní aplikace využívají v nebývalé míře. V zásadě je možné požadavek na data z určitého serveru přesměrovat na server vlastní a zpět vrátit data pozměněná. Skycure upozorňuje, že něco takového se může hodit pro zpravodajské aplikace, nebo ještě lépe pro aplikace finanční. Lidé věří informacím, které jim takovéto aplikace předkládají a nenapadne je, že by někdo mohl informace změnit.

Samotný bezpečnostní nedostatek využívá 301 Moved Permanently, které v mobilních aplikacích vedek k ukládání informace o nové adrese do vyrovnávací paměti, přičemž mobil či tablet si pak takovéto přesměrování pamatuje a pracuje s ním i nadále. V případě aplikací pak zpravidla není možné vidět, že došlo k přesměrování – v mobilní aplikaci HTTP komunikace probíhá na pozadí, bez vědomí uživatele, ale hlavně bez možnosti vidět „s kým“ aplikace funguje.

HRH není samozřejmě nic nového, jde pouze o využití známého útoku MITM (Man In The Middle) – aplikace pošle požadavek na určitý server, útočník požadavek odchytí a vrátí odpověď (301) o přesměrování. Informace o přesměrování si ale aplikace zapamatuje a další požadavky bude automaticky posílat na novou adresu – což je poměrně nový prvek. A dělá to i poté, co už vlastní MITM mechanismus přestal fungovat.

Marcom

 Skycure v závěru oznámení zmiňují i možné nápravy. Ta první spočívá ve využití už tak dost podstatné věci, tedy přechod na https komunikaci, byť toto řešení nenapravuje problém zcela. Komplexnější řešení spočívá v změně objektu NSURLCache tak, aby neukládal přesměrování do vyrovnávací paměti. 

Není tak samozřejmě možné zabránit případnému probíhajícímu útoku typu MITM (ten může výrazně zkomplikovat právě komunikace přes https), ale zabrání se tak pokračování poté, co přestane aktivní mechanismus útoku být funkční. 

Našli jste v článku chybu?
5. 11. 2013 7:25
Ondřej Bouda (neregistrovaný)

Primárně je to určitě na aplikaci. Na druhou stranu - OS by se neměl spoléhat na to, že aplikace jsou napsané správně (nejsou), a tudíž by se měl snažit dopady špatně napsaných aplikací minimalizovat (kde to jde). A zrovna v tomhle případě OS tu chybu v aplikaci umocňuje...

4. 11. 2013 15:42

Nepadnul tady asi jediný spolehlivý způsob jak se proti tomu bránit - kontrola SSL certifikátu. Při připojení by aplikace měla například zkontrolovat jestli je certifikát "od nás" a pokud ne, tak zamítnout komunikaci a dát o tom uživateli vědět, že se jej třeba někdo snaží na této wifině napadnout.

V tomhle je OS nevinně, je to na vývojářích aplikací.