WireLurker: ha warezolsz, semmin se csodálkozz

Ez a cikk legalább 1 éve frissült utoljára. A benne szereplő információk a megjelenés idején pontosak voltak, de mára elavultak lehetnek.

Nem hinnénk, hogy túl nagy újdonságot mondanánk azzal, hogy nem érdemes warezolni, mert könnyen pórul járhat az ember, elvégre semmi sincs ingyen, és noha az adott alkalmazás tört verziójáért nem kellett kifizetni semmit, az még legkevésbé sem jelenti azt, hogy cserébe ne kapnánk némi pluszt is ajándékba.

adat_biztonsag

A jailbreaket a warezzal rendszeresen és következetesen összemosók már ebben az esetben is épp cinikusan összekacsintottak, mikor az is kiderült, hogy valójában nem sokat számít a WireLurker szempontjából, hogy a készülék fel van-e törve, mert a jailbreak nélküli készülékekre is fel tudta telepíteni, amit akart, mindössze egy enterprise provisioning profil segítségével. Lássuk, mit érdemes tudni róla, és mit lehet tenni ellene.

WireLurker – a kínaiak már megint a spájzban vannak

A WireLurker egy olyan trójai program, ami egy kínai “alkalmazásboltból” letölthető Mac-es appokban található meg. Eddig 467db, az előbb említett kínai oldalról származó és a WireLurkerrel fertőzött appot azonosítottak a Palo Alto Networks munkatársai.

A kártékony program támadási célpontjai a jelek szerint a 64 bites OS X rendszerek, nincs belőle 32 bites verzió. Ha a felhasználó ebből a kínai “alkalmazásboltból” tölt le egy tört appot, akkor az abban lévő WireLurker megvárja, míg root jogot kap, majd ezután system daemonként bemásolja magát az operációs rendszerbe. (Az alkalmazásbolt azért idézőjeles, mert valójában egy jellemzően warez-oldalról van szó, így nem nevezhető boltnak.)

wirelurker_diag

Az így feltelepült daemon a libimobiledevice-t használva várakozik, hogy egy, iOS-t futtató eszköz kapcsolódjon a számítógéphez. Ekkor kihasználja, hogy egy korábban párosított eszköz esetén már megbízható a kapcsolat a számítógéppel (tehát a készüléken korábban egyszer már rányomtunk a számítógép megbízhatóként való elfogadására), és kiolvassa annak sorozatszámát, a telefonszámot, az iTunes Store azonosítót és más információkat, amiket aztán továbbít egy távoli szerver felé.

WireLurker_adatbanyaszat

Ezen túl egyébként ártalmatlannak tűnő alkalmazások kártékony másolatait is megpróbálja feltelepíteni a készülékre, valamint a warezolók által használt “PP助手正版” appot.

Ha a készülék jailbreakelt és az afc2 (Apple File Conduit) is telepítve van rá, akkor sokkal kártékonyabb kód kerül a készülékre, ami azonosításra alkalmas információkat bont ki az iMessage-előzményekből, a névjegyzékből, valamint egyéb fájlokból, amikhez így hozzáférése van.

A jelek szerint a WireLurkert leginkább a készülékek tulajdonosának beazonosítása érdekli, mintsem adatok vagy tartalmak ellopása, vagy bármi más, rongálás vagy kártékony működés. Másképp fogalmazva: a WireLurker kifejezetten a (kínai) szoftverkalózok kilétét szeretné kideríteni.

A trójai program működéséről részletesen a Palo Alto Networks cikkéből tájékozódhatnak az érdeklődők.

Ahogyan azt már megszokhattuk, a jailbreaket kategorikusan elutasítók itt is csípőből rávágják kaján vigyorral az arcukon, hogy “na tessék, itt egy újabb ok, ami miatt nem érdemes jailbreakelni!”. Ezzel a kijelentéssel azonban ismét több gond van.

Egyrészt a jailbreak önmagában még nem baj – de még ha baj is, messze nem akkora, mint amekkorának ilyen esetben egyesek szeretik kikiáltani. Az afc2 ráadásul alapból nincs fent a készüléken, emellett a WireLurker által telepített sfbase.dylib egy Cydia Substrate-et igénylő kiegészítő, így ha a Cydia Substrate sincs fent a készülékünkön (az ugyanis szintén nem része a jailbreaknek), akkor ez az sfbase.dylib sem tud sok vizet zavarni valójában (analógiaként: hiába van üzemanyag az autóban, ha annak nincs kereke, nem megy az úgy sehova). Ezen túl a WireLurker által adott “ajándék” egy enterprise provisioning segítségével még a jailbreak nélküli készülékekre is tud települni.

Azt mindenesetre érdemes kiemelni, hogy jailbreak nélkül az iOS saját sandboxingja miatt az így telepített kártékony app kevesebb dologhoz fér hozzá – de azt se felejtsük el, hogy hiába figyelmeztet minket az iOS, hogy engedélyezzük-e adott appnak a hozzáférést a névjegyzékünkhöz, vannak, akik már reflexből nyomják a jóváhagyást, anélkül, hogy egyáltalán végiggondolták volna, hogy egy “Hmm, hát ez az app meg mi és hogy kerül ide? Indítsuk csak el!” jellegű alkalmazásnak mire fel adnának engedélyt…

A dolog iróniája, hogy jailbreakelt készüléken a fertőzöttséget észrevenni is sokkal egyszerűbb, ahogyan azt kiirtani is – hiszen root jogunk és teljes hozzáférésünk van a fájlrendszerhez, ezeknek minden előnyével és hátrányával.

Másrészt a probléma ismét ott kezdődik, ha valaki nekiáll warezolni, mert akkor semmi sem garantálja, hogy az általa letöltött tört appal, játékkal nem kerül valami plusz “ajándék” a számítógépére. Ezzel kapcsolatban a józan észnek azonnal rázni kellene a vészcsengőt, amikor egy kínai oldalról tölt le valaki egy egyébként fizetős alkalmazást ingyenesen, függetlenül attól, hogy itt most Mac-es, vagy iOS-es appról legyen szó.

A gond tehát most sem elsősorban a jailbreak, hanem a warez, ráadásul épp a Mac-es alkalmazások warezolása. Ha pedig valaki eleve nem warezol, akkor hiába jailbreakelt egyébként a készüléke, gyakorlatilag csekély az esélye, hogy ilyen gondba keveredjen.

Hogyan lehet kivédeni?

A legfontosabb, hogy ne töltsünk le ismeretlen forrású, pláne tört appokat. Ne warezoljunk. Egyszerűen nem fogjuk tudni, nem csempésztek-e bele még valamit, amiből esetleg több kárunk származna, mint amennyibe az adott tört app egyébként kerülne.

Csak a saját számítógépünket jelöljük megbízhatónak. Ha ismeretlen géppel szeretnénk tölteni a készüléket, akkor jelöljük azt nem megbízhatónak és zárjuk le a készüléket, tölteni ebben az esetben is fog.

Lehetőleg ne használjunk ismeretlen hálózati adaptereket sem a készülék töltéséhez – noha a korábbi, BeagleBoard-alapú eszköz képes volt kijátszani egyes korlátozásokat, és így malware-t juttatni a készülékre, valójában még nem igazán volt arra példa, hogy ilyen “töltő” kerüljön közkézre, így ez nem igazán tekinthető azért napi szintű fenyegetésnek.

Ellenőrizzük az esetleg telepített provisioning profilokat, és töröljük, ha olyat találunk, amiről nem tudjuk, mi az. A profilokat a Beállítások / Általános / Profilok alatt tudjuk ellenőrizni. Ha pedig az alábbit látjuk, akkor azt azonnal törölhetjük is:

WireLurker_provisioning

Attól sem kell tartanunk, hogy holmi custom firmware-t telepítünk véletlen a készülékünkre, mert erre az iPhone 4s-től kezdődően (A5 és újabb) jelenleg még csak mód sincs, bootrom-szintű exploit hiányában, tehát nem is léteznek ilyen, nem az Apple által kiadott operációs rendszer-verziók, amiktől óvakodni kellene. (A teljesség kedvéért itt megemlítenénk a Whited00r-t, ami egyébként kizárólag iPhone 2G és 3G, valamint iPod touch 1G és 2G készülékekre létezik, de az szintén nem egy külön operációs rendszer, hanem egy szanaszét moddolt 3.1.3, annak minden előnyével és hátrányával, és ami esetén viszont egyszer sem merült még fel ilyen, malware-jellegű probléma.)

És ha már megtörtént a baj?

Először is érdemes megemlíteni, hogy az Apple letiltotta az érintett enterprise provisioning profillal települt alkalmazások elindulását, így elvileg nem okozhatnak már problémát:

We are aware of malicious software available from a download site aimed at users in China, and we’ve blocked the identified apps to prevent them from launching. As always, we recommend that users download and install software from trusted sources.

Tudunk arról, hogy egy letöltő oldalról kártékony alkalmazás vett célba kínai felhasználókat, és blokkoltuk az azonosított appok elindulását. Mint mindig, most is azt tanácsoljuk a felhasználóknak, hogy csak megbízható helyről töltsenek le és telepítsenek alkalmazásokat.

Jailbreakelt készüléken

Jailbreakelt eszközön meglehetősen egyszerű a dolgunk. Mindössze nézzük meg, hogy az alábbi elérési útvonalon lévő fájl létezik-e vagy sem:

/Library/MobileSubstrate/DynamicLibraries/sfbase.dylib

Ha nem létezik ilyen fájl, akkor a készülék nem fertőzött. Ha létezik, akkor viszont vagy a saját Mac-ünk, vagy az lehet még fertőzött a WireLurkerrel, amelyikre legutóbb rádugtuk, és megbízhatóként jelöltük.

Azok számára pedig, akik nem akarnak manuálisan nyúlkálni a készülékük fájlrendszerében, készítettünk egy cydiás csomagot, ami ellenőrzi, hogy létezik-e az sfbase.dylib fájl, és eltávolítja azt, ha igen. Ha ezt a megoldást választod, akkor keresd a Szifon Source-on a WireLurker malware fix csomagot:

WireLurker.fix

A cydiás csomag csak a telepítése közben ellenőrzi és törli adott esetben a malware-t, a csomag ezután szükségtelen, így nyugodtan törölhető. Amennyiben a csomag azt írja, hogy a sfbase.dylib fájl nem található, akkor nincs további teendő. Ha viszont kiírta, hogy letörölte ezt a fájlt, akkor a következő dolgunk a Mac-ünk “tisztába tétele” legyen.

Mac esetén

Ha az iOS-t futtató készülékünk fertőzött volt, akkor azt csak egy számítógép tehette, így folytassuk a vizsgálódást a Mac-en. Ehhez a Palo Alto Networks készített egy egyszerű Python szkriptet, amit letölthetünk a projekt github-oldaláról. Ennél talán egyszerűbb, ha a Mac-en indítunk egy Terminalt, majd oda bemásoljuk egyenként az alábbi sorokat, és nyomunk egy-egy entert utánuk.

Első lépésként töltsük le a szkriptet a gépünkre:

curl -O https://raw.githubusercontent.com/PaloAltoNetworks-BD/WireLurkerDetector/master/WireLurkerDetectorOSX.py

Ezután futtassuk azt le (és kövessük az utasításait, amennyiben olyasmit ír ki):

python WireLurkerDetectorOSX.py

Ha ezeket megtettük, akkor a Mac is megszabadult a WireLurkertől. Érdemes egyúttal az összes olyan gépet megnézni ezzel a szkripttel, amire rádugtuk a készülékünket. Máskor pedig kétszer is gondoljuk meg, hogy honnan és mit is töltünk le.

PC és Windows esetén

Noha a WireLurker esetén a jelek szerint elsősorban az OS X-et futtató gépek az érintettek, időközben találtak belőle egy Windows-os változatot is. Itt már némileg bonyolultabb a dolog, de szintén a projekt github-oldalán találhatunk technikai részleteket arról, hogy mire érdemes Windows-os gépeken keresni.

Aggályok

A WireLurker a szakértők szerint egy meglehetősen egyszerűre összetákolt dolog, ugyanakkor az egész jelenség felvet némi aggályokat. Ha ismeretlen hátterű, és a trójai felépítése alapján nem is annyira hozzáértők képesek egy ilyet összedobni, akkor adott esetben egy kevésbé amatőr játékos (mint mondjuk egy titkosszolgálat) már sokkal komolyabb dolgokat használhat fel.

Ennek kapcsán szintén egy biztonsági szakértő, Jonathan Zdziarski több lépést is szorgalmaz az Apple részéről az ügyben.

Ezek még érdekelhetnek:


  1. @api74: használsz tört appokat? ha igen, tedd fel Cydiából a fent említett csomagunkat, hogy kiderüljön, érintett vagy-e. ha nem használsz tört appokat, mégis felkerült ez a számodra ismeretlen dolog a készülékedre, akkor töröld le – és ellenőrizd a géped is, ahogy a cikkben le van írva.

  2. Api: az nem program, hanem egy enterprise profil, szabályozásokat tartalmaz, olyan mint egy group policy asztali gépen.
    És 8.1ben egyébként hol vannak a profilok, mert ahol írtátok nincs?

  3. @api74: akkor gondolom, fent van valami kínai app letöltő, amiből ezt a kettőt letöltötted, és az tehette fel ezt a profilt. a fentiek alapján nem javasolt, mert ugye nem lehet tudni, esetleg mi mást tesz még fel, de ezt már neked kell mérlegelni.

  4. Köszi, nem tudtam.
    A tuneinnek amúgy van ingyenes változata és semmivel sem gyengébb a fizetősnél, navira meg ajánlom a navigont az T-s kártyával szintén ingyenes.

Írd le a véleményedet! (Moderációs elveinket ide kattintva olvashatod.)

Hozzászólás írásához be kell jelentkezned!