Spad.dylib/AdThief – már 75.000 készülék termel bevételt a “reklámfogóknak”

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 meglepő módon az iOS esetén jóformán alig lehet malware-ekről beszélni, így amikor egy-egy ilyen valahogy mégis előfordul, az szinte azonnal akkora figyelmet kap, hogy hamar megoldás is születik rá. Legutóbb ez történt az unflod.dylib esetén is, ami a jailbreakes felhasználókat érintette, és az Apple ID-kat valamint az azokhoz tartozó jelszavakat továbbította egy vélhetően kínai szerverre. Ez persze elég egyszerűen orvosolható volt, ahogy azt a korábbi cikkünkben is leírtuk.

AdThief_01

A legújabb malware, ami az AdThief nevet kapta (teljes nevén iOS/AdThief.A!tr), valójában már márciusban előkerült, és ellentétben az unflod.dylib tevékenységével, ez nem a felhasználókat, hanem inkább azokat a fejlesztőket károsítja meg, akik különféle reklámszolgáltatók segítségével szereznek plusz bevételt az alkalmazásaikban megjelenő reklámok után. Az AdThief ugyanis módosítja az így kiszolgált reklámok forrását, és ezért a megjelenő reklám után már nem kap az adott fejlesztő bevételt, mert az már nem az ő ID-ján keresztül, vagy nem a vele szerződött reklámkiszolgálótól érkezik. A malware működéséhez jailbreak szükséges, mivel mindezt egy Cydia Substrate kiegészítő segítségével teszi, és így megtalálni szintén viszonylag egyszerű. Az viszont egyelőre nem derült ki, hogy hogyan kerül a malware a fertőzött készülékre, de kijelenthető, hogy ebben az esetben sem maga a jailbreak a hibás (hiszen annak alapból nem része a Cydia Substrate!), hanem a különféle feltört csomagokat tartalmazó warez-source-ok. De lássuk részletesebben.

A Cydia Substrate (vagy korábban MobileSubstrate) arra való, hogy egyes folyamatok más folyamatok működését megváltoztathassák: ez teszi lehetővé például, hogy a lezárt képernyő működését megváltoztatva arra új funkciókat tehessünk ki egy adott kiegészítő segítségével, vagy a szoftveres függetlenítést végző ultrasn0w úgy módosíthassa a baseband szoftverének futását annak működése közben, hogy az egyszerűen átugorja azt a részt, amikor a készülék függőségét összevetné a betett SIM-mel a rendszer, így eldöntve, hogy elfogadja-e azt, vagy sem. A Cydia Substrate alapból nem része a jailbreaknek, az csak az egyes, ezt a környezetet használó kiegészítők telepítésekor kerül a rendszerbe.

A mobil eszközökön megjelenő reklámok általában egy adott azonosítóval (referral vagy publisher ID) jelzik az adott reklámszolgáltató felé, hogy a reklám betöltése után vagy az arra történt kattintásért melyik, velük szerződött fejlesztőnek kell részesedést fizetni. Az AdThief tehát pontosan ezt alkalmazza: egy Cydia Substrate kiegészítővel úgy módosítja az általa támogatott reklámkiszolgálók felé irányuló lekérést, hogy az a fejlesztő eredeti ID-ja helyett a malware szerzőinek ID-ját illessze be, ezzel pedig nekik generáljon bevételt a fejlesztő helyett.

Nézzük meg az alábbi sorokat, amiket a malware visszafejtésével nyertek ki a biztonsági szakértők:

AdThief_03

Ez emberi nyelvre lefordítva gyakorlatilag azt mutatja, hogy a 14. sorban a malware megadja a saját reklámozási azonosítóját (setAdUnitID). Ráadásul az eredeti reklám egy YouMi-tól származó lenne, de ezt egy az egyben kicseréli egy Google Ads-től származóra, amiből persze a felhasználó nem vesz észre semmit, hiszen számára egyik reklám olyan, mint a másik.

A maleware által kezelt reklámkiszolgálók többsége kínai, de akad köztük amerikai és indiai is. Egész pontosan az alábbi 15 AdKit az, aminek reklámjai esetén az azok után járó bevételt elhappolja az eredetileg jogosult fejlesztőktől:

AdThief_02

Mivel ez gyakorlatilag csak a reklámokat használó fejlesztőknek okoz kárt, így a felhasználókat nem igazán érinti érzékenyen. Ugyanakkor a felhasználók tudta és engedélye nélkül a készülékre való kerülése egyúttal meg kell, hogy kondítsa bennünk a vészharangot: hiszen attól, hogy ez most éppen nem minket, felhasználókat vett célba, korábban az unflod.dylib ezzel szemben már az Apple ID-nkat akarta megszerezni. Így tehát mindenképpen oda kell figyelni arra, hogy honnan és mit telepít a készülékére bárki is.

Hogyan lehet kivédeni?

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

Az első, hogy a jailbreak önmagában még egyáltalán nem baj – de még ha baj is, messze nem akkora, mint amekkorának ilyen esetben egyesek szeretik kikiáltani. Mivel a malware működéséhez feltétel a Cydia Substrate, így ha ez a csomag nincs fent a készülékünkön, akkor várhatóan a malware sincs. A Cydia Substrate ugyanis nem része a jailbreaknek, azt a jailbreak után, Cydiából kell feltelepíteni, vagy pedig magától települ egy olyan csomag felrakásakor, amelynek a működéséhez ez szükséges.

A másik gond, hogy hiába van fent a Cydia Substrate is a készülékünkön, ha csak megbízható forrásból származó kiegészítőket telepítünk, akkor is elég valószínűtlen, hogy ilyesmi kerülhessen a készülékünkre.

A probléma ott kezdődik, ha valaki nekiáll warezolni, mert akkor semmi sem garantálja, hogy az általa letöltött tört kiegészítővel nem kerül valami plusz “ajándék” a készülékére. A warez kapcsán ráadásul érdemes szétválasztani az App Store-os appok és a Cydiából elérhető jailbreakes kiegészítők warezolását is. Előbbinél, tehát az App Store-os appok warezolása esetén az újabb módszereknél már nem is feltétel a jailbreak, mert a feltört appot megfelelő tanúsítvánnyal aláírják, és a TestFlight működéséhez hasonlóan telepíthető lesz jailbreak és App Store nélkül. A cydiás kiegészítők warezolása ugyanakkor nyilván megkívánja a jailbreaket is, és mivel a jailbreak teljes hozzáférést ad a rendszerhez (hiszen épp ez a célja), így a felhasználó felelőssége, hogy miket telepít ezek után. Ha ezek tört kiegészítők, mindenféle megbízhatatlan forrásból, akkor nem kell csodálkozni azon, ha ezt mások kihasználják.

A gond tehát nem elsősorban a jailbreak, hiába szeretik többen is ezt állítani, hanem a warez. Ha pedig valaki eleve nem warezol, akkor hiába jailbreakelt a készüléke, gyakorlatilag csekély az esélye, hogy ilyen gondba keveredjen.

Azt is megtehetjük, hogy egyetlen alkalmazásban sem nyomunk egy reklámra sem. Ezzel ugyan nem védtük ki a dolgot, hiszen a reklám már megjelent a készüléken, és egyes reklámkiszolgálók már ezért is fizetnek a hirdetési hely tulajdonosának (vagy eltérített reklám esetén a csalóknak ugye), de a csak megjelenített reklám sokkal kevesebb pénzt hoz az ilyen nyerészkedőknek, mint ami megjelenített és kattintást is generált.

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

Mivel a malware egy Cydia Substrate-alapú kiegészítő, így a legegyszerűbb, ha ellenőrizzük, szerepel-e az alábbi fájl a készülékünk fájlrendszerében, ebben a mappában vannak ugyanis a telepített kiegészítők:

/Library/MobileSubstrate/DynamicLibraries/spad.dylib és libgad.dylib

A malware esetén a pontos fájlnév ettől függetlenül változhat, így amennyiben ebben a mappában olyan más fájlokat találunk, amiket egyetlen telepített kiegészítőnkhöz sem tudunk kapcsolni, akkor előfordulhat, hogy érintett a készülékünk. Ebben az esetben távolítsuk el a Cydiában telepített minden olyan csomagot, amelyek tört kiegészítőkhöz köthetőek, és töröljük az ilyen csomagokat tartalmazó source-okat is.

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éteznek-e a spad.dylib és libgad.dylib fájlok, és eltávolítja őket, ha igen. Ha ezt a megoldást választod, akkor keresd a Szifon Source-on a Spad.dylib malware fix csomagot:

spad

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ő.

Fejlesztőknek

Látható, hogy a malware egyelőre nem támogatja az Apple által kínált iAd reklámjait, így noha a bevételből ott az Apple is részesül (ahogyan ugye az alkalmazások árából is), így érdemes lehet a reklámokat iAd-reklámokra cserélni az adott alkalmazásban. No persze az iAd támogatását beletenni a malware-be nem nagy dolog, de a hírek szerint az eddig megfertőzött 75.000 készülék esetén már legalább 22 millió reklámot “csípett nyakon” az AdThief, ami elég nagy szám, és az iAd segítségével, még ha csak átmenetileg is, de keresztbe tehetünk az ilyen nyerészkedőknek.

Ezek még érdekelhetnek:


  1. Ez a malware végül is a felhasználókra mennyire veszélyes? Hiszen, ha jol értelmeztem ez csak a fejlesztőknek okoz kárt, méghozzá anyagit, aminek persze ellenkező esetben én sem örülnék.
    Nem ruppótlankodásban, de én tweak-et pénzért nem szívesen töltenék le, nem szeretnék azért fizetni.
    Főleg azért, mert a Cydiában sem bizok meg annyira, hogy hozzákössem a számlámat, mert feltörhetőbbnek tartom, mint az AppStore-t. A hivatalos Store-rak teljesen más a helyzet, össze se merem számolni mennyi euró ment el alkalmazásokra, albumokra.

  2. @bberci: attól, hogy jelenleg ez a malware csak a reklámokat használó fejlesztőket károsítja meg, semmi sem garancia, hogy a későbbiekben nem telepít olyasmit a készülékedre, ami már neked okoz majd kárt.

    az, hogy nem szeretnél valamiért fizetni, teljesen más lapra tartozik, de kicsit hasonlítsuk most ahhoz, hogy a boltban is kifizeted, amit megveszel. a Cydiában PayPal és Amazon Payments segítségével fizethetsz, nem kell és nem is lehet bankkártyát megadni. de nem a Cydia fizetési rendszere fogja ellopni a bankkártyád adatait, hanem mondjuk egy olyan csomag, ami a tudtod nélkül települt fel egy tört kiegészítővel, és például figyeli az emailjeidet, az üzeneteidet, vagy adott esetben elmenti a Safariban a beírt adatokat, így egy online fizetésnél a bankkártyád adatait.

  3. Köszönöm a választ, a bankkártyás dolgot ezek szerint nem tudtam jól, paypalt pedig azóta nem használok mióta ismerősömmek feltörték, addig teljesen biztonságosnak tartottam. Persze nem arra céloztam, hogy a maga a Cydia vesz le illetéktelenül pénzt, hanem egy a repot ért támadáskor vki más.
    Viszont a Safari/bankkártya dolog aggasztóan hangzik, sok tört tweaket használok, valahogy lehet ez ellen védekezni? Ki lehet ezeket szűrni ?

  4. @bberci: “valahogy lehet ez ellen védekezni?”
    persze: ne használj tört tweakeket. a Cydia alapértelmezett forrásai esetén védve vagy, mert azok ellenőrzött, jóváhagyott források. ha ott bármi probléma előfordulna, az azonnal kiderül. az egyes repo-k nem tudnak pénzt levenni tőled csak úgy.

    ezzel szemben a tört tweakeket elérhetővé tévő források esetén viszont semmi garancia arra, hogy nem vernek át.

  5. Jó, értem én, csúnya dolog a "lopás", fizetni tweak-ért továbbra sem fogok, alkalmazásért igen. Meg van "sajnos" a lehetőség az ingyenes letöltésre, igy élek vele. applikaciot is lehetne warezolni, de nem teszem.
    ha olyan nagy kárt okoznának az olyan repok, amelyek törve kínálják a kiegészítőket, akkor kitilthatnák őket Cydia-bol, ebben az esetben, ha rá lennék szorulva, akkor fizetnék értük.
    Lényegtelen, ebben a témában ugysem nyerhetek.
    Tehát akkor úgy kérdezem, hogy van-e lehetőség a vírusok kivédésére úgy, hogy továbbra is tört tweakeket használok?

  6. Tweakért fizetni szerintem továbbra is vicc, alkalmazásért reális, de ezt a vitát már lefutottuk korábban 🙂
    Ez mondjuk egy ötletes malware, néha én is kiakadok a fejlesztőkön, amikor a használhatatlanságig televágják hirdetéssel egy kis profit reményében, vicces, hogy visszanyal kicsit a fagyi.
    Amúgy szerintem bele lehet nézni a kódba egy kis ügyességgel és akkor kideríthető, hogy mennyire is veszélyes egy adott tweak, valamikor volt nekem telepítve is egy memória figyelő tweak, amivel élőben tudtam debuggolni bármelyik futó appot.

  7. @bberci: “akkor kitilthatnák őket Cydia-bol”
    a Cydia figyelmeztet is ilyen source hozzáadásakor.

    “ha rá lennék szorulva, akkor fizetnék értük”
    a jailbreak nem jár, a tweakek sem járnak csak úgy, valaki dolgozott azzal a tweakkel, te meg kvázi ellopod. gondolom, te sem örülnél, ha fizetésnapkor azt mondaná a munkáltatód, hogy “köszi a melót, de ebben a hónapban most nincs kedvem fizetni érte”.

    “van-e lehetőség a vírusok kivédésére úgy, hogy továbbra is tört tweakeket használok?”
    mivel nem lehet kijelenteni, hogy adott esetben nem fognak átverni, és nem települ fel így egy adott tört tweak telepítésekor valami “bónuszként”, így jelenleg a legbiztosabb megoldás az, ha nem használsz tört dolgokat. nem hiszem, hogy annyi fizetős tweaket használnál, hogy ez megoldhatatlan kérdés lenne. a másik lehetőség, ha te magad vizsgálod át tüzetesen az adott csomagot, hogy “beleköpött-e valaki a pizzádba” útközben.

    @Jecy: “Tweakért fizetni szerintem továbbra is vicc”
    a tweakek nem járnak alanyi jogon. ha veszel egy kenyeret, az sincs ingyen, vagy a családi autódba is fizetni kell az üzemanyagot a sok egyéb költség mellett. csak hát azt nem tudod warezolni, mert azért feljelentenek, és jogi következményekkel jár. a fejlesztők pont azért tesznek valamibe reklámot, mert ha már te “csakazértsem” vagy hajlandó fizetni a munkájukért, legalább valami pénz csurogjon nekik, hiszen ők is pénzből élnek. azonnal megváltozna ez a fajta hozzáállásod, ha egyszer a te munkádat nem fizetné ki valaki, mert szerinte azért lenne vicc fizetni. azzal, hogy azokat bünteted, akik munkájáért fizetni szerinted vicc, pont azt eredményezi, hogy még több reklám lesz, vagy egy-egy tehetséges fejlesztő többet nem öli bele az idejét és a pénzét, hogy utána más azt ellopja, és így egyre kevesebb értelmes és valóban hasznos, minőségi tweak lesz majd. nyilván úgy, hogy nem ismered az adott fejlesztőt, sokkal könnyebb legyinteni ezekre, hiszen semmi személyes érintettséged nincs.

    “szerintem bele lehet nézni a kódba egy kis ügyességgel és akkor kideríthető, hogy mennyire is veszélyes egy adott tweak”
    ez így van, de aki nem ért ehhez, annak semmit nem fog ez mondani. egy-egy tweak árának megfizetésekor épp ezt az időt és hozzáértést fizeted ki az adott fejlesztőnek, aki megcsinálta helyetted a neked tetsző kiegészítést. ugyanakkor nem feltétlen fog kiderülni a veszélyesség, hiszen nyilván azért került fel így sokak készülékére, mert nem lehetett ennek utánanézni. nézd meg a cikk forrásául szolgáló virusbulletin dokumentumot, nem derült ki, hogy pontosan hogyan került az érintett készülékekre a malware, nem neveznek meg benne adott source-t vagy csomagot, hiszen egy ilyen malware lényege, hogy a felhasználót hamis bizalomban ringatva kerüljön fel a készülékre, hiszen akkor eszébe sem jut gyanakodni, és eltávolítani vagy megelőzni.

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

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