Masque Attack

Masque Attack: mire érdemes figyelni?

#HÍREK
2014. 11. 11.
Már a múlt hét sem volt felhőtlen az Apple számára, ha az iOS 8 biztonságát nézzük, ugyanis ekkor látott napvilágot a WireLurker nevű malware, ami főleg kínai felhasználókat támadott meg illegális forrásokból letöltött alkalmazásokon keresztül.

Most a FireEye nevű biztonsági cég talált egy kiskaput az iOS-ben, ami szerintük – a felhasználók figyelmetlensége esetén – potenciálisan sokkal veszélyesebb lehet, mint a WireLurker. Felfedezésüket Masque Attack névre keresztelték, ugyanis arra jöttek rá, hogyan álcázhatják magukat veszélyes alkalmazások más, biztonságosan működő appoknak. Az iOS rengeteg biztonsági megoldást tartalmaz, a Masque Attack ezeket kerüli meg egy ügyes módszerrel.

Mire van szüksége a támadónak?
  1. Először is rendelkeznie kell egy nagyvállalati fejlesztői regisztrációval az Apple-nél, vagy a megtámadni kívánt eszköz UDID-jával (egyedi azonosítójával).
  2. Le kell másolnia egy egyébként veszélytelen, népszerű alkalmazást, ami már telepítve van a telefonra. (A FireFly példájában a Gmail appot cserélik ki egy olyanra, ami a Gmail webes felületét tölti be.)
  3. Rá kell vennie a felhasználót arra, hogy az App Store-on kívülről töltse le a kártékony alkalmazást. (Például küldeni egy linket SMS-ben vagy e-mailben.)
  4. A felhasználónak egy felugró ablakban, mely arra figyelmeztet, hogy a futtatni kívánt alkalmazás nem megbízható forrásból származik, engedélyeznie kell az app futtatását.

Mivel a felhasználó UDID-jának megszerzése nem egyszerű feladat, első körben ez korlátozza a potenciális „áldozatok” számát. Éppen ezért, a támadók vállalati iOS-fejlesztő fiókokhoz próbálhatnak hozzájutni. A nagyvállalatok számára biztosított tanúsítványok által aláírt alkalmazások bármely iOS-es eszközre telepíthetők, tehát nincs szükség jailbreakre vagy egyéb nem támogatott megoldásokra.

Az Apple azonban bármelyik pillanatban visszavonhatja bármely fejlesztő tanúsítványát, tehát ha felfedezik, hogy az egyik nagyvállalati profillal kártékony alkalmazásokat terjesztenek, távolról meg tudják akadályozni, hogy az ehhez a profilhoz tartozó tanúsítvánnyal rendelkező alkalmazások elinduljanak a telefonokon. Éppen ezért a Masque Attack leginkább célzott támadásra használható, kevés, elszigetelt felhasználóval.

Masque Attack
Hogyan működik a támadás?

A Masque Attack során a támadó fél lecserél egy megbízható alkalmazást a telefonon a saját appjára. Ehhez arra van szüksége, hogy egy telepített alkalmazás Bundle ID-jával megegyező Bundle ID-jú appot telepítsen a telefonra (a korábbi példánál maradva: com.google.Gmail). Ekkor a telepítés felülírja a korábbi, azonos ID-val rendelkező alkalmazást. A támadás pont ezért nem használható az App Store-ból történő letöltéssel, mivel az Apple megköveteli, hogy minden alkalmazás egyedi Bundle ID-val rendelkezzen. Az Apple gyári alkalmazásaival nem működik a trükk, azokat nem lehet felülírni.

Amennyiben az eredeti alkalmazás nem titkosított formában tárolta a telefonon a saját adatbázisát, a támadó fél innentől kezdve hozzáférhet az alkalmazás adataihoz. Ezen kívül például feldobhat egy párbeszédablakot, amiben bejelentkezési adatokat kérhet el, melyeket aztán továbbíthat a kártékony alkalmazást fejlesztő egyén számára.

Fontos kiemelni, hogy ez nem egy közelmúltbeli változás az iOS rendszerben, és igazából nem feltétlenül is egy bug: ezt a funkciót sok fejlesztő használja teljesen legális célokra, így frissítik vagy cserélik le például a nagyvállalatok által használt egyedi alkalmazásokat a munkatársak telefonjain. A probléma abból adódik, hogy az egyes appok Bundle ID-ja nincs hozzákötve a fejlesztőhöz, illetve az általa használt tanúsítványhoz. Ezen persze a későbbiekben változtathat az Apple (és valószínűleg változtatni is fog, ezzel a legegyszerűbb bezárni a rést), bár ez néhány fejlesztőnek valószínűleg kellemetlenséget okoz majd.

Masque Attack
Hogyan előzhetem meg a támadást?

A védekezés rendkívül egyszerű: ne telepítsünk semmilyen alkalmazást, ami nem az App Store-ból származik. Ezt sokszor, sok helyen hallhattuk már, és igaz is: megbízhatatlan forrásból származó alkalmazások a felhasználó engedélyével kártékony célokat szolgálhatnak (iOS és OS X esetén is). Ha soha nem telepítesz ilyen appokat az iPhone-odra, akkor már be is védted magad a támadás ellen.

Ha kapsz egy linket e-mailben, vagy egy weboldalon böksz valahova, és felugrik egy ablak, mely arra figyelmeztet, hogy nem megbízható forrásból származó alkalmazás készül telepüni, ne engedélyezd a telepítést. Ez általánosságban és mindig elmondható, szintén iOS és OS X esetén is: ha nem tudjuk, hogy mihez kell az engedélyünk, inkább ne nyomjunk az igen vagy elfogadás gombra.

Ha gyanítod, hogy esetleg már célpontja vagy a Masque Attacknak (töltöttél le alkalmazásokat az iPhone-odra vagy iPad-edre az App Store-on kívülről, melyek felülírtak egy korábbi appot), távolítsd el a telepített profilt a telefonodról. Ezt iOS 7 alatt könnyedén megteheted a Settings > General > Profiles részen. iOS 8 alatt nehezebb a feladat, mivel az Apple eltávolította ezt a menüpontot. A profilok eltávolításához pl. az iPhone Configuration Utility-re lesz szükség Macen vagy Windowson. Ezután töröld az álcázott alkalmazást, és töltsd le újra az App Store-ból. Egy jelszócsere sem árt az összes szóba jöhető helyen.

A FireEye bemutatóvideója a módszerről (a biztonsági profilt korábban már elfogadták):

Forrás: FireEye via iMore. Képek és videó: FireEye.