Byna almal van ons gebruik die dienste van aanlynwinkels, wat beteken dat ons vroeër of later die risiko loop om 'n slagoffer van JavaScript-snuffelaars te word - spesiale kode wat aanvallers op 'n webwerf implementeer om bankkaartdata, adresse, aanmeldings en wagwoorde van gebruikers te steel .
Byna 400 000 gebruikers van die British Airways-webwerf en mobiele toepassing is reeds deur snuffels geraak, asook besoekers aan die Britse webwerf van die sportreus FILA en die Amerikaanse kaartjieverspreider Ticketmaster. PayPal, Chase Paymenttech, USAePay, Moneris - hierdie en baie ander betaalstelsels was besmet.
Threat Intelligence Group-IB-ontleder Viktor Okorokov praat oor hoe snuffelaars webwerfkode infiltreer en betalingsinligting steel, asook watter CRM's hulle aanval.
"Versteekte bedreiging"
Dit het so gebeur dat JS-snuffelaars vir 'n lang tyd buite sig van antivirus-ontleders gebly het, en banke en betaalstelsels het dit nie as 'n ernstige bedreiging beskou nie. En heeltemal tevergeefs. Groep-IB kundiges
Laat ons in detail stilstaan by die vier families snuffels wat tydens die studie bestudeer is.
ReactGet Familie
Snuffelaars van die ReactGet-familie word gebruik om bankkaartdata op aanlyn inkopiewebwerwe te steel. Die snuffel kan werk met 'n groot aantal verskillende betaalstelsels wat op die webwerf gebruik word: een parameterwaarde stem ooreen met een betaalstelsel, en individuele bespeurde weergawes van die snuffel kan gebruik word om geloofsbriewe te steel, sowel as om bankkaartdata van betaling te steel vorme van verskeie betalingstelsels gelyktydig, soos die sogenaamde universele snuffel. Daar is gevind dat aanvallers in sommige gevalle phishing-aanvalle op aanlynwinkeladministrateurs uitvoer om toegang tot die werf se administratiewe paneel te verkry.
'n Veldtog wat hierdie familie snuffelaars gebruik, het in Mei 2017 begin; werwe wat CMS en Magento, Bigcommerce en Shopify-platforms gebruik, is aangeval.
Hoe ReactGet in die kode van 'n aanlynwinkel geïmplementeer word
Benewens die "klassieke" implementering van 'n skrif via 'n skakel, gebruik die operateurs van die ReactGet-familie snuffelaars 'n spesiale tegniek: met behulp van JavaScript-kode kyk hulle of die huidige adres waar die gebruiker geleë is aan sekere kriteria voldoen. Die kwaadwillige kode sal slegs uitgevoer word as die substring teenwoordig is in die huidige URL checkout of een stap afreken, eenblad/, uit/onepag, betaalpunt/een, ckout/een. Die snuffelkode sal dus presies uitgevoer word op die oomblik wanneer die gebruiker voortgaan om vir aankope te betaal en betalingsinligting in die vorm op die webwerf in te voer.
Hierdie snuffel gebruik 'n nie-standaard tegniek. Die slagoffer se betaling en persoonlike data word saam ingesamel en geënkodeer met behulp van basis64, en dan word die gevolglike string as 'n parameter gebruik om 'n versoek na die aanvallers se webwerf te stuur. Meestal boots die pad na die hek byvoorbeeld 'n JavaScript-lêer na resp.js, data.js ensovoorts, maar skakels na beeldlêers word ook gebruik, GIF и JPG. Die eienaardigheid is dat die snuffel 'n beeldvoorwerp skep wat 1 by 1 pixel meet en die voorheen ontvangde skakel as 'n parameter gebruik src Beelde. Dit wil sê, vir die gebruiker sal so 'n versoek in die verkeer soos 'n versoek vir 'n gewone prentjie lyk. 'n Soortgelyke tegniek is gebruik in die ImageID-familie van snuffelaars. Boonop word die tegniek om 'n 1 by 1 pixel-beeld te gebruik in baie wettige aanlyn-analise-skrifte gebruik, wat ook die gebruiker kan mislei.
Weergawe-analise
Ontleding van die aktiewe domeine wat deur ReactGet-snuffeloperateurs gebruik word, het baie verskillende weergawes van hierdie snuffelfamilie aan die lig gebring. Weergawes verskil in die teenwoordigheid of afwesigheid van verduistering, en daarbenewens is elke snuffel ontwerp vir 'n spesifieke betalingstelsel wat bankkaartbetalings vir aanlynwinkels verwerk. Nadat hulle die waarde van die parameter wat ooreenstem met die weergawenommer gesorteer het, het Group-IB-spesialiste 'n volledige lys van beskikbare snuffelvariasies ontvang, en deur die name van die vormvelde waarna elke snuffel in die bladsykode soek, het hulle die betalingstelsels geïdentifiseer waarop die snuffel gerig is.
Lys van snuffelaars en hul ooreenstemmende betalingstelsels
Snuffel URL | Betalingstelsel |
---|---|
|
Authorize.Net |
Kaartstoor | |
|
Authorize.Net |
Authorize.Net | |
|
eWAY Vinnig |
Authorize.Net | |
adyen | |
|
USAePay |
Authorize.Net | |
USAePay | |
|
Authorize.Net |
Moneris | |
USAePay | |
PayPal | |
Salie betaal | |
Verisign | |
PayPal | |
Streep | |
|
Realeks |
PayPal | |
LinkPoint | |
PayPal | |
PayPal | |
DataCash | |
|
PayPal |
|
Authorize.Net |
|
Authorize.Net |
Authorize.Net | |
Authorize.Net | |
|
Verisign |
|
Authorize.Net |
Moneris | |
|
Salie betaal |
|
USAePay |
|
Authorize.Net |
|
Authorize.Net |
|
ANZ eGate |
|
Authorize.Net |
|
Moneris |
|
Salie betaal |
Salie betaal | |
|
Jaag Paymentech |
|
Authorize.Net |
|
adyen |
PsiGate | |
Kuberbron | |
ANZ eGate | |
Realeks | |
|
USAePay |
|
Authorize.Net |
|
Authorize.Net |
|
ANZ eGate |
|
PayPal |
|
PayPal |
Realeks | |
|
Salie betaal |
|
PayPal |
|
Verisign |
Authorize.Net | |
|
Verisign |
Authorize.Net | |
|
ANZ eGate |
PayPal | |
Kuberbron | |
|
Authorize.Net |
|
Salie betaal |
Realeks | |
|
Kuberbron |
PayPal | |
PayPal | |
|
PayPal |
|
Verisign |
|
eWAY Vinnig |
|
Salie betaal |
Salie betaal | |
|
Verisign |
Authorize.Net | |
Authorize.Net | |
|
Eerste Data Global Gateway |
Authorize.Net | |
Authorize.Net | |
Moneris | |
|
Authorize.Net |
|
PayPal |
|
Verisign |
|
USAePay |
USAePay | |
Authorize.Net | |
Verisign | |
PayPal | |
|
Authorize.Net |
Streep | |
|
Authorize.Net |
eWAY Vinnig | |
|
Salie betaal |
Authorize.Net | |
|
Braintree |
|
Braintree |
|
PayPal |
|
Salie betaal |
|
Salie betaal |
|
Authorize.Net |
|
PayPal |
|
Authorize.Net |
Verisign | |
|
PayPal |
|
Authorize.Net |
|
Streep |
|
Authorize.Net |
eWAY Vinnig | |
Salie betaal | |
|
Authorize.Net |
Braintree | |
|
PayPal |
|
Salie betaal |
Salie betaal | |
|
Authorize.Net |
PayPal | |
Authorize.Net | |
|
Verisign |
|
Authorize.Net |
|
Authorize.Net |
|
Authorize.Net |
|
Authorize.Net |
|
Salie betaal |
Salie betaal | |
|
Westpac PayWay |
|
PayFort |
|
PayPal |
|
Authorize.Net |
|
Streep |
|
Eerste Data Global Gateway |
|
PsiGate |
Authorize.Net | |
Authorize.Net | |
|
Moneris |
|
Authorize.Net |
Salie betaal | |
|
Verisign |
Moneris | |
PayPal | |
|
LinkPoint |
|
Westpac PayWay |
Authorize.Net | |
|
Moneris |
|
PayPal |
adyen | |
PayPal | |
Authorize.Net | |
USAePay | |
EBizCharge | |
|
Authorize.Net |
|
Verisign |
Verisign | |
Authorize.Net | |
|
PayPal |
|
Moneris |
Authorize.Net | |
|
PayPal |
PayPal | |
Westpac PayWay | |
Authorize.Net | |
|
Authorize.Net |
Salie betaal | |
|
Verisign |
|
Authorize.Net |
|
PayPal |
|
PayFort |
Kuberbron | |
PayPal Payflow Pro | |
|
Authorize.Net |
|
Authorize.Net |
Verisign | |
|
Authorize.Net |
|
Authorize.Net |
Salie betaal | |
Authorize.Net | |
|
Streep |
|
Authorize.Net |
Authorize.Net | |
Verisign | |
|
PayPal |
Authorize.Net | |
|
Authorize.Net |
Salie betaal | |
|
Authorize.Net |
|
Authorize.Net |
|
PayPal |
|
Flint |
|
PayPal |
Salie betaal | |
Verisign | |
|
Authorize.Net |
|
Authorize.Net |
|
Streep |
|
Vet Zebra |
Salie betaal | |
|
Authorize.Net |
Eerste Data Global Gateway | |
|
Authorize.Net |
|
eWAY Vinnig |
adyen | |
|
PayPal |
QuickBooks-handelaarsdienste | |
Verisign | |
|
Salie betaal |
Verisign | |
|
Authorize.Net |
|
Authorize.Net |
Salie betaal | |
|
Authorize.Net |
|
eWAY Vinnig |
Authorize.Net | |
|
ANZ eGate |
|
PayPal |
Kuberbron | |
|
Authorize.Net |
Salie betaal | |
|
Realeks |
Kuberbron | |
|
PayPal |
|
PayPal |
|
PayPal |
|
Verisign |
eWAY Vinnig | |
|
Salie betaal |
|
Salie betaal |
|
Verisign |
Authorize.Net | |
|
Authorize.Net |
|
Eerste Data Global Gateway |
Authorize.Net | |
Authorize.Net | |
|
Moneris |
|
Authorize.Net |
|
PayPal |
Wagwoord snuffel
Een van die voordele van JavaScript-snuffels wat aan die kliëntkant van 'n webwerf werk, is hul veelsydigheid: kwaadwillige kode wat op 'n webwerf ingebed is, kan enige tipe data steel, of dit nou betalingsdata of die aanmelding en wagwoord van 'n gebruikersrekening is. Group-IB-spesialiste het 'n voorbeeld van 'n snuffel ontdek wat aan die ReactGet-familie behoort, wat ontwerp is om e-posadresse en wagwoorde van werfgebruikers te steel.
Kruising met ImageID-snuffel
Tydens die ontleding van een van die besmette winkels is gevind dat sy webwerf twee keer besmet is: benewens die kwaadwillige kode van die ReactGet-familiesnuffel, is kode van die ImageID-familiesnuffel opgespoor. Hierdie oorvleueling kan bewys wees dat die operateurs agter beide snuffelaars soortgelyke tegnieke gebruik om kwaadwillige kode in te spuit.
Universele snuffel
’n Ontleding van een van die domeinname wat met die ReactGet-snuffelinfrastruktuur geassosieer word, het aan die lig gebring dat dieselfde gebruiker drie ander domeinname geregistreer het. Hierdie drie domeine het die domeine van werklike webwerwe nageboots en is voorheen gebruik om snuffelaars te huisves. Toe die kode van drie wettige webwerwe ontleed is, is 'n onbekende snuffel opgespoor, en verdere ontleding het getoon dat dit 'n verbeterde weergawe van die ReactGet-snuffel was. Alle voorheen gemonitorde weergawes van hierdie snuffelfamilie was gemik op 'n enkele betalingstelsel, dit wil sê, elke betaalstelsel het 'n spesiale weergawe van die snuffelstelsel vereis. In hierdie geval is egter 'n universele weergawe van die snuffel ontdek wat in staat is om inligting te steel van vorms wat verband hou met 15 verskillende betaalstelsels en modules van e-handelwebwerwe om aanlynbetalings te maak.
Dus, aan die begin van die werk het die snuffel na basiese vormvelde gesoek wat die slagoffer se persoonlike inligting bevat: volle naam, fisiese adres, telefoonnommer.
Die snuffel het toe meer as 15 verskillende voorvoegsels gesoek wat ooreenstem met verskillende betaalstelsels en aanlynbetalingsmodules.
Vervolgens is die slagoffer se persoonlike data en betalingsinligting saam ingesamel en na 'n webwerf gestuur wat deur die aanvaller beheer word: in hierdie spesifieke geval is twee weergawes van die universele ReactGet-snuffel ontdek, geleë op twee verskillende gehackte werwe. Albei weergawes het egter gesteelde data na dieselfde gehackte werf gestuur zoobashop.com.
Ontleding van die voorvoegsels wat die sniffer gebruik het om na velde te soek wat die slagoffer se betalingsinligting bevat, het ons toegelaat om vas te stel dat hierdie snuffelmonster op die volgende betalingstelsels gemik was:
- Authorize.Net
- Verisign
- Eerste Data
- USAePay
- Streep
- PayPal
- ANZ eGate
- Braintree
- DataCash (MasterCard)
- Realex-betalings
- PsiGate
- Heartland Payment Systems
Watter gereedskap word gebruik om betalingsinligting te steel?
Die eerste instrument, wat tydens die ontleding van die aanvallers se infrastruktuur ontdek is, word gebruik om kwaadwillige skrifte wat verantwoordelik is vir die diefstal van bankkaarte te verdoesel. 'n Bash-skrif wat die projek se CLI gebruik, is op een van die aanvaller se gashere ontdek
Die tweede ontdekte hulpmiddel is ontwerp om kode te genereer wat verantwoordelik is vir die laai van die hoofsnuffel. Hierdie instrument genereer JavaScript-kode wat kontroleer of die gebruiker op die betaalbladsy is deur die gebruiker se huidige adres vir stringe te soek checkout, wa ensovoorts, en as die resultaat positief is, dan laai die kode die hoofsnuffel van die aanvallers se bediener af. Om kwaadwillige aktiwiteit te versteek, word alle reëls, insluitend toetslyne vir die bepaling van die betalingsbladsy, sowel as 'n skakel na die snuffel, geënkodeer met basis64.
Uitvissing-aanvalle
’n Ontleding van die aanvallers se netwerkinfrastruktuur het aan die lig gebring dat die kriminele groep dikwels uitvissing gebruik om toegang tot die administratiewe paneel van die teikenaanlynwinkel te kry. Aanvallers registreer 'n domein wat visueel soortgelyk is aan 'n winkel se domein, en ontplooi dan 'n vals Magento-administrasiepaneel-aanmeldingsvorm daarop. As dit suksesvol is, sal die aanvallers toegang kry tot die administratiewe paneel van die Magento CMS, wat hulle die geleentheid bied om webwerfkomponente te wysig en 'n snuffel te implementeer om kredietkaartdata te steel.
Infrastruktuur
Домен | Datum van ontdekking/verskyning |
---|---|
mediapack.info | 04.05.2017 |
adsgetapi.com | 15.06.2017 |
simcounter.com | 14.08.2017 |
mageanalytics.com | 22.12.2017 |
maxstatics.com | 16.01.2018 |
reactjsapi.com | 19.01.2018 |
mxcounter.com | 02.02.2018 |
apitstatus.com | 01.03.2018 |
orderracker.com | 20.04.2018 |
tagstracking.com | 25.06.2018 |
adsapigate.com | 12.07.2018 |
trust-tracker.com | 15.07.2018 |
fbstatspartner.com | 02.10.2018 |
billgetstatus.com | 12.10.2018 |
www.aldenmlilhouse.com | 20.10.2018 |
balletbeautlful.com | 20.10.2018 |
bargalnjunkie.com | 20.10.2018 |
payselector.com | 21.10.2018 |
tagsmediaget.com | 02.11.2018 |
hs-payments.com | 16.11.2018 |
ordercheckpays.com | 19.11.2018 |
geisseie.com | 24.11.2018 |
gtmproc.com | 29.11.2018 |
livegetpay.com | 18.12.2018 |
sydneysalonsupplies.com | 18.12.2018 |
newrelicnet.com | 19.12.2018 |
nr-public.com | 03.01.2019 |
cloudodesc.com | 04.01.2019 |
ajaxstatic.com | 11.01.2019 |
livecheckpay.com | 21.01.2019 |
asianfoodgracer.com | 25.01.2019 |
G-Analytics-familie
Hierdie familie snuffelaars word gebruik om klantekaarte van aanlynwinkels te steel. Die heel eerste domeinnaam wat deur die groep gebruik is, is in April 2016 geregistreer, wat kan aandui dat die groep middel 2016 met aktiwiteit begin het.
In die huidige veldtog gebruik die groep domeinname wat werklike dienste naboots, soos Google Analytics en jQuery, wat die aktiwiteit van snuffelaars verberg met wettige skrifte en domeinname soortgelyk aan wettige. Webwerwe wat die Magento CMS bestuur, is aangeval.
Hoe G-Analytics in die kode van 'n aanlynwinkel geïmplementeer word
'n Kenmerkende kenmerk van hierdie familie is die gebruik van verskeie metodes om gebruikerbetalingsinligting te steel. Benewens die klassieke inspuiting van JavaScript-kode in die kliëntkant van die webwerf, het die kriminele groep ook kode-inspuitingstegnieke in die bedienerkant van die webwerf gebruik, naamlik PHP-skrifte wat gebruiker-ingevoerde data verwerk. Hierdie tegniek is gevaarlik omdat dit dit moeilik maak vir derdeparty-navorsers om kwaadwillige kode op te spoor. Group-IB-spesialiste het 'n weergawe van 'n snuffel ontdek wat in die werf se PHP-kode ingebed is, met 'n domein as 'n hek dittm.org.
'n Vroeë weergawe van 'n snuffel is ook ontdek wat dieselfde domein gebruik om gesteelde data in te samel dittm.org, maar hierdie weergawe is bedoel vir installasie aan die kliëntkant van 'n aanlynwinkel.
Die groep het later sy taktiek verander en meer daarop begin fokus om kwaadwillige aktiwiteite en kamoeflering weg te steek.
Aan die begin van 2017 het die groep die domein begin gebruik jquery-js.com, voorgedoen as 'n CDN vir jQuery: wanneer die gebruiker na die werf van aanvallers gaan, word die gebruiker na 'n wettige werf herlei jquery.com.
En in die middel van 2018 het die groep die domeinnaam aangeneem g-analytics.com en het begin om die snuffels se aktiwiteite as 'n wettige Google Analytics-diens te vermom.
Weergawe-analise
Tydens die ontleding van die domeine wat gebruik word om snuffelkode te stoor, is gevind dat die webwerf 'n groot aantal weergawes bevat, wat verskil in die teenwoordigheid van verduistering, sowel as die teenwoordigheid of afwesigheid van onbereikbare kode wat by die lêer gevoeg is om aandag af te trek en versteek kwaadwillige kode.
Totaal op die werf jquery-js.com Ses weergawes van snuffelaars is geïdentifiseer. Hierdie snuffelaars stuur die gesteelde data na 'n adres wat op dieselfde webwerf as die snuffelaar self geleë is: hxxps://jquery-js[.]com/latest/jquery.min.js:
- hxxps://jquery-js[.]com/jquery.min.js
- hxxps://jquery-js[.]com/jquery.2.2.4.min.js
- hxxps://jquery-js[.]com/jquery.1.8.3.min.js
- hxxps://jquery-js[.]com/jquery.1.6.4.min.js
- hxxps://jquery-js[.]com/jquery.1.4.4.min.js
- hxxps://jquery-js[.]com/jquery.1.12.4.min.js
Later domein g-analytics.com, wat sedert middel 2018 deur die groep in aanvalle gebruik word, dien as 'n bewaarplek vir meer snuffelaars. In totaal is 16 verskillende weergawes van die snuffel ontdek. In hierdie geval was die hek vir die stuur van gesteelde data vermom as 'n skakel na 'n beeldformaat GIF: hxxp://g-analytics[.]com/__utm.gif?v=1&_v=j68&a=98811130&t=pageview&_s=1&sd=24-bit&sr=2560×1440&vp=2145×371&je=0&_u=AACAAEAB~&jid=1841704724&gjid=877686936&cid
= 1283183910.1527732071:
- hxxps://g-analytics[.]com/libs/1.0.1/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.10/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.11/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.12/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.13/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.14/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.15/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.16/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.3/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.4/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.5/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.6/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.7/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.8/analytics.js
- hxxps://g-analytics[.]com/libs/1.0.9/analytics.js
- hxxps://g-analytics[.]com/libs/analytics.js
Monetisering van gesteelde data
Die kriminele groep verdien geld met die gesteelde data deur kaarte te verkoop deur 'n spesiaal geskepte ondergrondse winkel wat dienste aan kaarters verskaf. Ontleding van die domeine wat deur die aanvallers gebruik is, het ons toegelaat om dit te bepaal google-analytics.cm is deur dieselfde gebruiker as die domein geregistreer cardz.vc. domein cardz.vc verwys na 'n winkel wat gesteelde bankkaarte verkoop Cardsurfs (Flysurfs), wat gewild geword het in die dae van die aktiwiteit van die ondergrondse verhandelingsplatform AlphaBay as 'n winkel wat bankkaarte verkoop wat met 'n snuffel gesteel is.
Ontleed die domein analities.is, geleë op dieselfde bediener as die domeine wat deur snuffelaars gebruik word om gesteelde data in te samel, het Group-IB-spesialiste 'n lêer ontdek wat koekiessteellogboeke bevat, wat blykbaar later deur die ontwikkelaar laat vaar is. Een van die inskrywings in die log het 'n domein bevat iozoz.com, wat voorheen in een van die snuffelaars wat in 2016 aktief was, gebruik is. Vermoedelik is hierdie domein voorheen deur 'n aanvaller gebruik om kaarte te versamel wat met 'n snuffel gesteel is. Hierdie domein is by 'n e-posadres geregistreer [e-pos beskerm], wat ook gebruik is om domeine te registreer cardz.su и cardz.vc, wat verband hou met die kaartwinkel Cardsurfs.
Op grond van die data wat verkry is, kan aanvaar word dat die G-Analytics-familie van snuffelaars en die ondergrondse winkel wat bankkaarte verkoop Cardsurfs deur dieselfde mense bestuur word, en die winkel word gebruik om bankkaarte te verkoop wat met die snuffel gesteel is.
Infrastruktuur
Домен | Datum van ontdekking/verskyning |
---|---|
iozoz.com | 08.04.2016 |
dittm.org | 10.09.2016 |
jquery-js.com | 02.01.2017 |
g-analytics.com | 31.05.2018 |
google-analytics.is | 21.11.2018 |
analities.na | 04.12.2018 |
google-analytics.to | 06.12.2018 |
google-analytics.cm | 28.12.2018 |
analities.is | 28.12.2018 |
googlc-analytics.cm | 17.01.2019 |
Illum familie
Illum is 'n familie snuffels wat gebruik word om aanlynwinkels aan te val wat die Magento CMS bestuur. Benewens die bekendstelling van kwaadwillige kode, gebruik die operateurs van hierdie snuffel ook die bekendstelling van volwaardige vals betaalvorms wat data stuur na hekke wat deur aanvallers beheer word.
By die ontleding van die netwerkinfrastruktuur wat deur die operateurs van hierdie sniffer gebruik word, is 'n groot aantal kwaadwillige skrifte, uitbuitings, vals betaalvorms, sowel as 'n versameling voorbeelde met kwaadwillige snuffelaars van mededingers opgemerk. Op grond van inligting oor die verskyningsdatums van die domeinname wat deur die groep gebruik word, kan aanvaar word dat die veldtog aan die einde van 2016 begin het.
Hoe Illum in die kode van 'n aanlynwinkel geïmplementeer word
Die eerste weergawes van die snuffel wat ontdek is, is direk in die kode van die gekompromitteerde webwerf ingebed. Die gesteelde data is gestuur na cdn.illum[.]pw/rekords.php, is die hek geënkodeer met behulp van basis64.
Later is 'n verpakte weergawe van die snuffel ontdek wat 'n ander hek gebruik - records.nstatistics[.]com/records.php.
Volgens
Ontleding van die aanvallers se webwerf
Group-IB-spesialiste het 'n webwerf ontdek en ontleed wat deur hierdie kriminele groep gebruik word om gereedskap te stoor en gesteelde inligting in te samel.
Onder die instrumente wat op die aanvallers se bediener gevind is, was skrifte en uitbuiting om voorregte in die Linux-bedryfstelsel te eskaleer: byvoorbeeld die Linux Privilege Escalation Check Script wat deur Mike Czumak ontwikkel is, sowel as 'n uitbuiting vir CVE-2009-1185.
Die aanvallers het twee uitbuitings direk gebruik om aanlynwinkels aan te val:
Tydens die ontleding van die bediener is ook verskeie voorbeelde van snuffels en vals betaalvorms ontdek wat deur aanvallers gebruik is om betalingsinligting van gehackte werwe in te samel. Soos u uit die lys hieronder kan sien, is sommige skrifte individueel vir elke gehackte werf geskep, terwyl 'n universele oplossing vir sekere CMS en betalingspoorte gebruik is. Byvoorbeeld, skrifte segapay_standart.js и segapay_onpage.js ontwerp vir implementering op webwerwe wat die Sage Pay-betalingspoort gebruik.
Lys van skrifte vir verskeie betaalpoorte
Skripsie | Betalingspoort |
---|---|
|
//request.payrightnow[.]cf/checkpayment.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/checkpayment.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/checkpayment.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
//request.payrightnow[.]cf/checkpayment.php | |
|
//request.payrightnow[.]cf/checkpayment.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//cdn.illum[.]pw/records.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/checkpayment.php |
|
//cdn.illum[.]pw/records.php |
//request.payrightnow[.]cf/checkpayment.php | |
|
//cdn.illum[.]pw/records.php |
//payrightnow[.]cf/?payment= | |
|
//payrightnow[.]cf/?payment= |
|
//paymentnow[.]tk/?payment= |
Gasheer betalingnou[.]tk, gebruik as 'n hek in 'n skrif payment_forminsite.js, is ontdek as onderwerpAltNaam in verskeie sertifikate wat verband hou met die CloudFlare-diens. Daarbenewens het die gasheer 'n draaiboek bevat evil.js. Te oordeel aan die naam van die skrif, kan dit gebruik word as deel van die uitbuiting van CVE-2016-4010, waardeur dit moontlik is om kwaadwillige kode in die voetskrif van 'n webwerf wat CMS Magento gebruik, in te spuit. Die gasheer het hierdie skrif as 'n hek gebruik request.requestnet[.]tkgebruik dieselfde sertifikaat as die gasheer betalingnou[.]tk.
Valse betaalvorms
Die figuur hieronder toon 'n voorbeeld van 'n vorm vir die invoer van kaartdata. Hierdie vorm is gebruik om 'n aanlyn winkel te infiltreer en kaartdata te steel.
Die volgende figuur toon 'n voorbeeld van 'n vals PayPal-betaalvorm wat deur aanvallers gebruik is om werwe met hierdie betaalmetode te infiltreer.
Infrastruktuur
Домен | Datum van ontdekking/verskyning |
---|---|
cdn.illum.pw | 27/11/2016 |
records.nstatistics.com | 06/09/2018 |
request.payrightnow.cf | 25/05/2018 |
paymentnow.tk | 16/07/2017 |
betalingslyn.tk | 01/03/2018 |
paymentpal.cf | 04/09/2017 |
requestnet.tk | 28/06/2017 |
CoffeeMokko familie
Die CoffeMokko-familie van snuffels, wat ontwerp is om bankkaarte van aanlynwinkelgebruikers te steel, is sedert ten minste Mei 2017 in gebruik. Vermoedelik is die operateurs van hierdie familie snuffelaars die kriminele groep Groep 1, wat in 2016 deur RiskIQ-spesialiste beskryf is. Webwerwe met CMS'e soos Magento, OpenCart, WordPress, osCommerce en Shopify is aangeval.
Hoe CoffeMokko in die kode van 'n aanlynwinkel geïmplementeer word
Operateurs van hierdie familie skep unieke snuffelaars vir elke infeksie: die snuffellêer is in die gids geleë src of js op die aanvallers se bediener. Inkorporering in die werfkode word uitgevoer via 'n direkte skakel na die snuffel.
Die snuffelkode hardkodeer die name van die vormvelde waaruit data gesteel moet word. Die snuffel kyk ook of die gebruiker op die betaalbladsy is deur die lys sleutelwoorde met die gebruiker se huidige adres na te gaan.
Sommige ontdekte weergawes van die snuffel is verduister en bevat 'n geënkripteerde string waarin die hoofreeks hulpbronne gestoor is: dit bevat die name van vormvelde vir verskeie betalingstelsels, sowel as die hekadres waarheen die gesteelde data gestuur moet word.
Die gesteelde betalingsinligting is langs die pad na 'n skrip op die aanvallers se bediener gestuur /savePayment/index.php of /tr/index.php. Vermoedelik word hierdie skrif gebruik om data van die hek na die hoofbediener te stuur, wat data van alle snuffelaars konsolideer. Om die oorgedra data te versteek, word alle betalingsinligting van die slagoffer geïnkripteer met behulp van basis64, en dan vind verskeie karaktervervangings plaas:
- die "e" karakter word vervang met ":"
- die "w"-simbool word vervang met "+"
- die "o" karakter word vervang met "%"
- die "d" karakter word vervang met "#"
- die karakter "a" word vervang met "-"
- die simbool "7" word vervang met "^"
- die karakter "h" word vervang met "_"
- die "T"-simbool word vervang met "@"
- die karakter "0" word vervang deur "/"
- die "Y" karakter word vervang met "*"
As gevolg van karaktervervangings wat geënkodeer is met behulp van basis64 Die data kan nie gedekodeer word sonder om die omgekeerde omskakeling uit te voer nie.
Dit is hoe 'n fragment snuffelkode lyk wat nie verduister is nie:
Infrastruktuur Analise
In vroeë veldtogte het aanvallers domeinname geregistreer soortgelyk aan dié van wettige aanlyn inkopiewebwerwe. Hul domein kan verskil van die wettige een vir een simbool of 'n ander TLD. Geregistreerde domeine is gebruik om snuffelkode te stoor, 'n skakel waarna in die winkelkode ingebed is.
Hierdie groep het ook domeinname gebruik wat herinner aan gewilde jQuery-inproppe (slickjs[.]org vir werwe wat die inprop gebruik gladde.js), betaalpoorte (sagecdn[.]org vir werwe wat die Sage Pay-betalingstelsel gebruik).
Later het die groep begin om domeine te skep waarvan die name niks met die winkel se domein of die tema van die winkel te doen gehad het nie.
Elke domein het ooreengestem met 'n webwerf waarop die gids geskep is /js of / src. Snuffel-skrifte is in hierdie gids gestoor: een snuffel vir elke nuwe infeksie. Die snuffel is ingebed in die webwerf-kode via 'n direkte skakel, maar in seldsame gevalle het aanvallers een van die webwerf-lêers gewysig en kwaadwillige kode daarby gevoeg.
Kode Analise
Eerste verduistering algoritme
In sommige ontdekte monsters van snuffelaars van hierdie familie, was die kode verduister en bevat geënkripteerde data wat nodig is vir die snuffel om te werk: veral die snuffelhekadres, 'n lys betalingsvormvelde en in sommige gevalle die kode van 'n vals betalingsvorm. In die kode binne die funksie is die hulpbronne geïnkripteer met behulp van Gratis deur die sleutel wat as 'n argument na dieselfde funksie deurgegee is.
Deur die string te dekripteer met die toepaslike sleutel, uniek vir elke monster, kan jy 'n string kry wat al die stringe van die sniffer-kode bevat, geskei deur 'n skeidingskarakter.
Tweede verduistering algoritme
In latere monsters van snuffelaars van hierdie familie is 'n ander verduisteringsmeganisme gebruik: in hierdie geval is die data geïnkripteer met 'n selfgeskrewe algoritme. 'n String wat geënkripteerde data bevat wat nodig is vir die snuffel om te werk, is as 'n argument na die dekripsiefunksie oorgedra.
Deur die blaaierkonsole te gebruik, kan jy die geënkripteerde data dekripteer en 'n skikking kry wat snuffelhulpbronne bevat.
Verbinding met vroeë MageCart-aanvalle
Tydens die ontleding van een van die domeine wat deur die groep gebruik word as 'n toegangspoort om gesteelde data in te samel, is gevind dat hierdie domein 'n infrastruktuur vir kredietkaartdiefstal huisves, identies aan dié wat gebruik word deur Groep 1, een van die eerste groepe,
Twee lêers is gevind op die gasheer van die CoffeMokko-familie van snuffels:
- mage.js — lêer wat Groep 1-snuffelkode met hekadres bevat js-cdn.skakel
- mag.php - PHP-skrip wat verantwoordelik is vir die insameling van data wat deur die snuffel gesteel is
Inhoud van die mage.js-lêer
Daar is ook vasgestel dat die vroegste domeine wat deur die groep agter die CoffeMokko-familie van snuffels gebruik is, op 17 Mei 2017 geregistreer is:
- skakel-js[.]skakel
- info-js[.]skakel
- track-js[.]skakel
- map-js[.]skakel
- smart-js[.]skakel
Die formaat van hierdie domeinname stem ooreen met die Groep 1-domeinname wat in die 2016-aanvalle gebruik is.
Op grond van die ontdekte feite kan aanvaar word dat daar 'n verband tussen die operateurs van die CoffeMokko-snuffels en die kriminele groep Groep 1 is. Vermoedelik kon CoffeMokko-operateurs gereedskap en sagteware by hul voorgangers geleen het om kaarte te steel. Dit is egter meer waarskynlik dat die kriminele groep agter die gebruik van die CoffeMokko-familie van snuffelaars dieselfde mense is wat die Groep 1-aanvalle uitgevoer het. Na die publikasie van die eerste verslag oor die kriminele groep se aktiwiteite, was al hul domeinname geblokkeer en die gereedskap is in detail bestudeer en beskryf. Die groep is gedwing om 'n blaaskans te neem, sy interne gereedskap te verfyn en snuffelkode te herskryf om sy aanvalle voort te sit en onopgemerk te bly.
Infrastruktuur
Домен | Datum van ontdekking/verskyning |
---|---|
skakel-js.skakel | 17.05.2017 |
info-js.skakel | 17.05.2017 |
track-js.link | 17.05.2017 |
map-js.link | 17.05.2017 |
smart-js.link | 17.05.2017 |
adorebeauty.org | 03.09.2017 |
sekuriteit-betaling.su | 03.09.2017 |
braincdn.org | 04.09.2017 |
sagecdn.org | 04.09.2017 |
slickjs.org | 04.09.2017 |
oakandfort.org | 10.09.2017 |
citywlnery.org | 15.09.2017 |
dobell.su | 04.10.2017 |
kinderspeelklere.org | 31.10.2017 |
jewsondirect.com | 05.11.2017 |
shop-rnib.org | 15.11.2017 |
closetlondon.org | 16.11.2017 |
misshaus.org | 28.11.2017 |
battery-force.org | 01.12.2017 |
kik-vape.org | 01.12.2017 |
greatfurnituretradingco.org | 02.12.2017 |
etradesupply.org | 04.12.2017 |
vervang myremote.org | 04.12.2017 |
all-about-sneakers.org | 05.12.2017 |
mage-checkout.org | 05.12.2017 |
nililotan.org | 07.12.2017 |
lamoodbighat.net | 08.12.2017 |
walletgear.org | 10.12.2017 |
dahlie.org | 12.12.2017 |
davidsfootwear.org | 20.12.2017 |
blackriverimaging.org | 23.12.2017 |
exrpesso.org | 02.01.2018 |
parks.su | 09.01.2018 |
pmtonline.su | 12.01.2018 |
otocap.org | 15.01.2018 |
christohperward.org | 27.01.2018 |
coffeetea.org | 31.01.2018 |
energycoffe.org | 31.01.2018 |
energytea.org | 31.01.2018 |
tea koffie.net | 31.01.2018 |
adaptivecss.org | 01.03.2018 |
coffeemokko.com | 01.03.2018 |
londontea.net | 01.03.2018 |
ukcoffe.com | 01.03.2018 |
labbe.biz | 20.03.2018 |
batterynart.com | 03.04.2018 |
btosports.net | 09.04.2018 |
chicksaddlery.net | 16.04.2018 |
paypaypay.org | 11.05.2018 |
ar500arnor.com | 26.05.2018 |
authorizecdn.com | 28.05.2018 |
slickmin.com | 28.05.2018 |
bannerbuzz.info | 03.06.2018 |
kandypens.net | 08.06.2018 |
mylrendyphone.com | 15.06.2018 |
freshchat.info | 01.07.2018 |
3lift.org | 02.07.2018 |
abtasty.net | 02.07.2018 |
mechat.info | 02.07.2018 |
zoplm.com | 02.07.2018 |
zapaljs.com | 02.09.2018 |
foodandcot.com | 15.09.2018 |
freshdepor.com | 15.09.2018 |
swappastore.com | 15.09.2018 |
verywellfitnesse.com | 15.09.2018 |
elegrina.com | 18.11.2018 |
majsurplus.com | 19.11.2018 |
top5value.com | 19.11.2018 |
Bron: will.com