Avastasime suuremahulise, aasta aega kestnud reklaamvara rünnaku, mille jooksul installiti ainuüksi Google Plays äppe kaheksa miljonit korda.
Tuvastasime 42 Google Play äppi, mida sai alla laadida alates 2018. aasta juulist. Nendest 21 olid ikka veel saadaval meie avastuse ajal. Teavitasime leitud rakendustest Google ’i turbetiimi ning nimetatud äpid eemaldati koheselt. Siiski on rakendused ikka veel saadaval kolmandates äpipoodides. Tuvastatud reklaamvara ühine nimetus on Android/AdDisplay.Ashas.
Joonis 1. ESETi poolt tuvastatud Android/AdDisplay.Ashas perekonna rakendused
Joonis 2. Android/AdDisplay.Ashas perekonna populaarseim liige Google Plays oli üle viie miljoni allalaadimisega Video downloader master
Ashasi funktsionaalsus
Kõik äpid pakuvad lisaks reklaamvarana toimimisele ka lubatud funktsionaalsusi. Reklaamvara funktsionaalsus on ühesugune kõikides analüüsitud rakendustes. Märkus: Allpool toodud funktsionaalsuse analüüs kirjeldab ühte äppi, ent kehtib kõikide Android/AdDisplay.Ashas perekonna rakenduste kohta.
Pärast käivitamist ühendub rakendus selle C&C serveriga (mille IP-aadress on rakenduses base64-kodeerituna). See edastab “kodu” põhiandmeid mõjutatud seadme kohta: seadme tüüp, OS versioon, keel, installitud äppide arv, vaba mäluruum, aku olek, info seadme juurdumise ja arendaja režiimi lubatavuse osas ning kas Facebook ja FB Messenger on installitud.
Joonis 3. Mõjutatud seadme kohta teabe edastamine
Äpp saab C&C serverilt konfiguratsiooniandmeid, mis on vajalikud varjamiseks, püsivuseks ja rakenduste kuvamiseks.
Joonis 4. C&C serverilt on saadud konfiguratsioonifail
Ründaja kasutab varjamiseks ja püsivuseks mitmeid nippe.
Esiteks, püüab pahatahtlik rakendus teha kindlaks, kas seda testib Google Play turbemehhanism. Selleks saab rakendus C&C serverilt isGooglelp väärtuse, mis näitab, kas mõjutatud seadme IP-aadress sobib tuntud Google’i serverite IP-aadresside vahemikku. Kui server tagastab väärtuse positiivsena, ei käivita rakendus reklaamvara nimikoormust.
Teiseks, rakendus võib seada reklaamide kuvamiste vahele kohandatud viivituse. Meie poolt uuritud näidiste konfiguratsioon oli seatud 24-minutilise viivitusega peale seadme avamist. Selline viivis indikeerib, et tüüpiline testimisprotseduur, mis kestab vähem kui 10 minutit, ei tuvasta soovimatut käitumist. Samuti, mida pikem on viivitus, seda väiksem on oht, et kasutaja seostab soovimatuid reklaame konkreetse rakendusega.
Kolmandaks, tuginedes serveri vastusele, võib äpp peita oma ikoone ja luua selle asemel otseteid. Kui tavakasutaja üritab pahatahtlikust äpist vabaneda, eemaldab ta tõenäoluselt ainult otsetee ning rakendus toimib edasi kasutaja teadmata. See varjamise tehnika on saanud populaarseks Google Play kaudu reklaamvaraga levitatavate ohtude seas.
Joonis 5. Reklaamvara poolt rakendatud reklaamide kuvamise ajaline viivitus
Kui pahatahtlik rakendus on saanud konfiguratsiooniandmeid, on mõjutatud seade valmis kuvama reklaame vastavalt ründaja soovidele; igat reklaami kuvatakse täisekraanil. Kui kasutaja tahab teada kuvatava reklaami päritolu, klõpsates selleks valikule “Recent apps”, võetakse kasutusele järjekordne nipp: rakendus kuvab Facebooki või Google’i ikooni, nagu on näha joonisel 6. Reklaamvara jäljendab neid kahte rakendust, et näida õige ja vältida kahtlusi ning püsida mõjutatud seadmes võimalikult kaua.
Joonis 6. Reklaamvara tegevus imiteerib Facebooki (vasakul). Kui kasutaja vajutab ikoonile pikalt, kuvatakse tegevuse eest vastutava rakenduse nimi (paremal).
Lõpuks on Ashasi perekonna reklaamvara peitnud oma koodi com.google.xxx paketi nime taha. Näidates end Google’i teenuse osana võib pääseda liigsest kontrollist. Mõned tuvastamismehhanismid ja liivakastid võiva ressursside raiskamise ennetamiseks märkida nimetatud paketi nimed lubatuks.
Joonis 7. “com.google” paketti peidetud pahatahtlik kood
Arendaja jahtimine
Reklaamvara arendaja tuvastmiseks kasutasime avatud lähtekoodiga teavet. Arendaja osutus ka rünnaku operaatoriks ja C&C serveri omanikuks. Järgmistes lõikudes kirjeldame oma püüdlusi sama arendaja teiste rakenduste leidmises ja meie kasutajate kaitsmises.
Esiteks, tuvastasime registreeritud C&C domeeniga seotud teabe põhjal registreerija nime koos täiendavate andmetega, nagu riik ja e-posti aadress, nagu on näha jooniselt 8.
Joonis 8. Teave Ashasi reklaamvara poolt kasutatava C&C domeeni kohta
Teades, et domeeni registripidajale edastatud teave võib olla võlts, jätkasime oma otsinguid. E-posti aadress ja riik viisid meid Vietnami Ülikoolis õpivate üliõpilaste nimekirjani – see kinnitab domeeni registreerimisel kasutatud isiku olemasolu.
Joonis 9. C&C domeeni registreerijat sisaldav ülikooli õpperühma tudengite nimekiri
Meie ründaja ülikooli räige eraelu puutumatuse tava rikkumise tõttu teame nüüd isiku sünnikuupäeva (tõenäoliselt: täiendava kinnitusena, saime teada, et isik kasutas näiliselt oma sünniaastat Gmaili aadressi osana), teame, et isik oli tudeng ning ka ülikooli, kus isik õppis. Saime kinnitust ka tema poolt edastatud telefoninumbri õigsuses. Lisaks saime ka tema ülikooli ID; kiire googeldamine näitas meile osa tema eksami hindeid. Tema õppetulemused jäävad siiski meie uuringu ulatusest välja.
Tuginedes meie süüdlase e-posti aadressile, suutsime leida tema GitHubi hoidla, mis tõestas, et ta on tõepoolest Androidi arendaja, ent see ei sisaldanud selle blogipostituse kirjutamise hetkel avalikult kättesaadavat Ashasi reklaamvara koodi.
Ent reklaamvara paketi nime kiire Google’i otsing andis vasteks projekti “TestDelete”, mis oli mingil hetkel tema hoidlas ka saadaval
Pahatahtlikul arendajal on äpid ka Apple’i App Store’is. Mõned nendest on iOS versioonid Google Playst eemaldatud äppidest, ent ükski ei sisalda reklaamvara funktsionaalsust.
Joonis 10. App Store’is avaldatud pahatahtliku arendaja rakendused, mis ei sisalda Ashasi reklaamvara
Otsides edasi arendaja toiminguid, leidsime ka tema Youtube’i kanali, mis levitab Ashasi reklaamvara ja muid tema projekte. Mis aga puudutab Ashasi perekonda, siis reklaamvideot “Head Soccer World Champion 2018 – Android, ios” vaadati peaaegu kolm miljonit korda ja kahte teist videot vaadati sadu tuhandeid kordi, nagu on näha jooniselt 11.
Joonis 11. Pahatahtliku arendaja YoutTube’i kanal
Tema YouTube’i kanal andis meile veel väärtuslikku teavet: kasutaja osales enda projekti õppevideos. Tänu sellele projektile saime teada tema Facebooki profiili, kus on infot ka tema õpingute kohta eelnimetud ülikoolis.
Joonis 12. C&C domeeni registreerija Facebooki profiil (peapilt ja profiilipilt on eemaldatud)
Pahatahtliku arendaja Facebooki profiilil avastasime Facebooki lehe, Minigameshouse ning sellega seonduva domeeni minigameshouse[.]net. Antud domeen sarnaneb kasutaja reklaamvaras kasutatud C&C kommunikatsioonile, minigameshouse[.]us.
Kontrollides Minigameshouse lehte selgub, et kasutaja on tõepoolest domeeni minigameshouse[.]us omanik: domeeni registreetimisel kasutatud number on sama, mida kuvab ka kasutaja Facebooki leht.
Joonis 13. C&C domeeni registreerija hallatav Facebooki leht kasutab Ashasi reklaamvara poolt registreeritud pahatahtliku C&C-ga sama baasdomeeninime (minigameshouse) ja telefoninumbrit
Huvitav on asjaolu, et Minigameshouse’i Facebooki lehel reklaamib pahatahtlik arendaja nii Google Plays kui ka App Store’is allalaadimiseks Ashasi perekonna väliseid mänge. Ometi eemaldati kõik mängud Google Playst – vaatamata asjaolule, et osa mänge ei sisaldanud reklaamvara funktsionaalsust.
Lisaks kõigele muule, on üks arendaja YouTube’i videotest – “Instant Game’i” väljatöötamise õpetus Facebooki jaoks – näide täielikust talitluskindluse eiramisest. Nägime, et tema viimati külastatud veebilehed olid Ashasi reklaamvara sisaldavad äppide lehed Google Plays. Ründaja kasutas ka oma e-posti kontot, et logida videos sisse mitmetesse teenustesse, mis identifitseerib teda ilma igasuguse kahtluseta reklaamvara domeeni omanikuna.
Tänu videole suutsime tuvastada veel kolm äppi, mis sisaldasid reklaamvara funktsionaalsust ja olid saadaval Google Plays.
Joonis 14. Ekraanipilt arendaja YouTube’i videost on näha Ashasi reklaamvara vaatamist Google Plays
ESET telemeetria
Joonis 15. ESETi tuvastatud Androidi seadmete Android/AdDisplay.Ashas reklaamvara riikide kaupa
Kas reklaamvara on kahjulik?
Kuna reklaamvara sisaldavate rakenduste tegelik olemus on tavakasutajate eest varjatud, tuleks pidada neid rakendusi ja nende arendajaid ebausaldusväärseteks. Seadmesse installituna võivad reklaamvara sisaldavad äpid muuhulgas:
- Tüütada kasutajaid pealetükkivate reklaamidega, sealhulgas petureklaamidega
- Raisata seadme akuressursse
- Tekitada suuremat võrguliiklust
- Koguda kasutaja isiklikku teavet
- Varjata oma olemasolu püsivuse saavutamiseks
- Teenida kasutaja sekkumiseta tulu oma operaatorile
Kokkuvõte
Tuginedes ainult avatud lähtekoodi intelligentsusele, suutsime tuvastada Ashasi reklaamvara arendaja, teha kindlaks tema identiteedi ja avastada täiendavaid reklaamvaraga nakatunud rakendusi. Nähes, et arendaja ei püüdnud oma identiteeti varjata, tundub tõenäoline, et tema kavatsused polnud algselt pahatahtlikud – seda kinnitab ka asjaolu, et mitte kõik tema poolt avaldatud äpid sisaldasid soovimatut reklaami.
Oma Google Play “karjääri” teatud hetkel otsustas ta ilmselt kasvatada oma reklaamitulu, lisades reklaamvara funktsionaalsuse oma rakenduste koodidesse. Rekmlaamvaras kasutatud erinevad varjamise ja püsivuse meetodid näitavad meile, et süüdlane oli lisatud funktsioonalsuse pahatahtlikkusest teadlik ja püüdis seda varjata.
Soovimatute või kahjulike funktsioonide sisse nihverdamine populaarsetesse ja healoomulistesse äppidesse on “halbade” arendajate seas levinud tava ning me oleme pühendunud nimetatud rakenduste leidmisele. Lõpetuseks lisame, et avaldame kõik oma leiud, et aidatada Androidi kasutajatel end kaitsta.
Rünnaku näitajad (IoCs)
Paketi nimi | Räsi | Installimisi |
---|---|---|
com.ngocph.masterfree | c1c958afa12a4fceb595539c6d208e6b103415d7 | 5,000,000+ |
com.mghstudio.ringtonemaker | 7a8640d4a766c3e4c4707f038c12f30ad7e21876 | 500,000+ |
com.hunghh.instadownloader | 8421f9f25dd30766f864490c26766d381b89dbee | 500,000+ |
com.chungit.tank1990 | 237f9bfe204e857abb51db15d6092d350ad3eb01 | 500,000+ |
com.video.downloadmasterfree | 43fea80444befe79b55e1f05d980261318472dff | 100,000+ |
com.massapp.instadownloader | 1382c2990bdce7d0aa081336214b78a06fceef62 | 100,000+ |
com.chungit.tankbattle | 1630b926c1732ca0bb2f1150ad491e19030bcbf2 | 100,000+ |
com.chungit.basketball | 188ca2d47e1fe777c6e9223e6f0f487cb5e98f2d | 100,000+ |
com.applecat.worldchampion2018 | 502a1d6ab73d0aaa4d7821d6568833028b6595ec | 100,000+ |
org.minigamehouse.photoalbum | a8e02fbd37d0787ee28d444272d72b894041003a | 100,000+ |
com.mngh.tuanvn.fbvideodownloader | 035624f9ac5f76cc38707f796457a34ec2a97946 | 100,000+ |
com.v2social.socialdownloader | 2b84fb67519487d676844e5744d8d3d1c935c4b7 | 100,000+ |
com.hikeforig.hashtag | 8ed42a6bcb14396563bb2475528d708c368da316 | 100,000+ |
com.chungit.heroesjump | c72e92e675afceca23bbe77008d921195114700c | 100,000+ |
com.mp4.video.downloader | 61E2C86199B2D94ABF2F7508300E3DB44AE1C6F1 | 100,000+ |
com.videotomp4.downloader | 1f54e35729a5409628511b9bf6503863e9353ec9 | 50,000+ |
boxs.puzzles.Puzzlebox | b084a07fdfd1db25354ad3afea6fa7af497fb7dc | 50,000+ |
com.intatwitfb.download.videodownloader | 8d5ef663c32c1dbcdd5cd7af14674a02fed30467 | 50,000+ |
com.doscreenrecorder.screenrecorder | e7da1b95e5ddfd2ac71587ad3f95b2bb5c0f365d | 50,000+ |
com.toptools.allvideodownloader | 32E476EA431C6F0995C75ACC5980BDBEF07C8F7F | 50,000+ |
com.top1.videodownloader | a24529933f57aa46ee5a9fd3c3f7234a1642fe17 | 10,000+ |
com.santastudio.headsoccer2 | 86d48c25d24842bac634c2bd75dbf721bcf4e2ea | 10,000+ |
com.ringtonemakerpro.ringtonemakerapp2019 | 5ce9f25dc32ac8b00b9abc3754202e96ef7d66d9 | 10,000+ |
com.hugofq.solucionariodebaldor | 3bb546880d93e9743ac99ad4295ccaf982920260 | 10,000+ |
com.anit.bouncingball | 6e93a24fb64d2f6db2095bb17afa12c34b2c8452 | 10,000+ |
com.dktools.liteforfb | 7bc079b1d01686d974888aa5398d6de54fd9d116 | 10,000+ |
net.radiogroup.tvnradio | ba29f0b4ad14b3d77956ae70d812eae6ac761bee | 10,000+ |
com.anit.bouncingball | 6E93A24FB64D2F6DB2095BB17AFA12C34B2C8452 | 10,000+ |
com.floating.tube.bymuicv | 6A57D380CDDCD4726ED2CF0E98156BA404112A53 | 10,000+ |
org.cocos2dx.SpiderSolitaireGames | adbb603195c1cc33f8317ba9f05ae9b74759e75b | 5,000+ |
games.puzzle.crosssum | 31088dc35a864158205e89403e1fb46ef6c2c3cd | 5,000+ |
dots.yellow.craft | 413ce03236d3604c6c15fc8d1ec3c9887633396c | 5,000+ |
com.tvngroup.ankina.reminderWater | 5205a5d78b58a178c389cd1a7b6651fe5eb7eb09 | 5,000+ |
com.hdevs.ringtonemaker2019 | ba5a4220d30579195a83ddc4c0897eec9df59cb7 | 5,000+ |
com.carlosapps.solucionariodebaldor | 741a95c34d3ad817582d27783551b5c85c4c605b | 5,000+ |
com.mngh1.flatmusic | 32353fae3082eaeedd6c56bb90836c89893dc42c | 5,000+ |
com.tvn.app.smartnote | ddf1f864325b76bc7c0a7cfa452562fe0fd41351 | 1,000+ |
com.thrtop.alldownloader | f46ef932a5f8e946a274961d5bdd789194bd2a7d | 1,000+ |
com.anthu91.soccercard | 0913a34436d1a7fcd9b6599fba64102352ef2a4a | 1,000+ |
com.hugofq.wismichudosmildiecisiete | 4715bd777d0e76ca954685eb32dc4d16e609824f | 1,000+ |
com.gamebasketball.basketballperfectshot | e97133aaf7d4bf90f93fefb405cb71a287790839 | 1,000+ |
com.nteam.solitairefree | 3095f0f99300c04f5ba877f87ab86636129769b1 | 100+ |
com.instafollowers.hiketop | 3a14407c3a8ef54f9cba8f61a271ab94013340f8 | 1+ |
C&C server
MITRE ATT&CK tehnikad
Taktika | ID | Nimi | Kirjeldus |
---|---|---|---|
Esmane juurdepääs | T1475 | Edastada pahatahtlik rakendus läbi App Store’i | Pahavara imiteerib Google Play autentseid teenuseid |
Püsivus | T1402 | Rakenduse automaatne käivitamine seadme käivitamisel | Androidi rakendus võib kuulata BOOT_COMPLETED broadcasti, tagades rakenduse funktsionaalsuse aktiveerimise igal seadme käivitamisel |
Mõju | T1472 | Teenida pettusega saadud reklaamtulu | Generates revenue by automatically displaying ads |
Kiitus @jaymin9687-le juhtimast meie tähelepanu rakenduses “Video downloader master” kuvatavate soovimatute reklaamide probleemile
Allikas: Welivesecurity
Jaga artiklit