Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Takmer každý z nás využíva služby internetových obchodov, čo znamená, že skôr či neskôr riskujeme, že sa staneme obeťou snifferov JavaScriptu – špeciálneho kódu, ktorý útočníci implementujú na webovú stránku, aby odcudzili údaje o bankových kartách, adresy, prihlasovacie údaje a heslá používateľov. .

Čichači už zasiahli takmer 400 000 používateľov webu a mobilnej aplikácie British Airways, ako aj návštevníkov britského webu športového giganta FILA a amerického distribútora leteniek Ticketmaster. PayPal, Chase Paymenttech, USAePay, Moneris – tieto a mnohé ďalšie platobné systémy boli infikované.

Analytik Threat Intelligence Group-IB Viktor Okorokov hovorí o tom, ako snifferi prenikajú do kódu webových stránok a kradnú platobné informácie, ako aj o tom, na aké CRM útočia.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

"Skrytá hrozba"

Stalo sa tak, že snifferi JS zostali dlho mimo dohľadu antivírusových analytikov a banky a platobné systémy ich nepovažovali za vážnu hrozbu. A úplne márne. Experti skupiny IB analyzované 2440 1,5 infikovaných internetových obchodov, ktorých návštevníkom – celkovo asi XNUMX milióna ľudí denne – hrozilo kompromitovanie. Medzi obeťami sú nielen používatelia, ale aj internetové obchody, platobné systémy a banky, ktoré ohrozené karty vydali.

správa Group-IB sa stala prvou štúdiou darknetového trhu pre snifferov, ich infraštruktúry a spôsobov monetizácie, ktorá ich tvorcom prináša milióny dolárov. Identifikovali sme 38 rodín čuchačov, z ktorých iba 12 bolo predtým známym výskumníkom.

Pozrime sa podrobne na štyri rodiny čuchačov študovaných počas štúdie.

ReactGet Family

Sniffery z rodiny ReactGet sa používajú na krádež údajov o bankových kartách na stránkach online nakupovania. Sniffer môže pracovať s veľkým množstvom rôznych platobných systémov používaných na stránke: jedna hodnota parametra zodpovedá jednému platobnému systému a jednotlivé rozpoznané verzie snifferu môžu byť použité na odcudzenie prihlasovacích údajov, ako aj na odcudzenie údajov z bankových kariet z platby. formy niekoľkých platobných systémov naraz, ako napríklad takzvaný univerzálny sniffer. Zistilo sa, že v niektorých prípadoch útočníci uskutočňujú phishingové útoky na správcov internetového obchodu, aby získali prístup k administratívnemu panelu stránky.

Kampaň využívajúca túto rodinu snifferov sa začala v máji 2017; boli napadnuté stránky so systémom CMS a platformami Magento, Bigcommerce a Shopify.

Ako je ReactGet implementovaný do kódu internetového obchodu

Okrem „klasickej“ implementácie skriptu cez odkaz využívajú operátori rodiny snifferov ReactGet špeciálnu techniku: pomocou JavaScript kódu skontrolujú, či aktuálna adresa, na ktorej sa používateľ nachádza, spĺňa určité kritériá. Škodlivý kód sa spustí iba vtedy, ak sa podreťazec nachádza v aktuálnej adrese URL pokladňa alebo jednokroková pokladňa, jedna strana/, out/onepag, pokladňa/jedna, výstup/jeden. Sniffer kód sa teda spustí presne v momente, keď používateľ pristúpi k platbe za nákupy a zadá platobné údaje do formulára na stránke.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Tento sniffer používa neštandardnú techniku. Platobné a osobné údaje obete sa zhromažďujú a zakódujú pomocou base64a výsledný reťazec sa potom použije ako parameter na odoslanie požiadavky na webovú stránku útočníkov. Najčastejšie cesta k bráne napodobňuje napríklad JavaScript súbor resp.js, data.js a tak ďalej, ale používajú sa aj odkazy na obrazové súbory, Gif и JPG. Zvláštnosťou je, že sniffer vytvorí obrazový objekt s rozmermi 1 x 1 pixel a ako parameter použije predtým prijatý odkaz src Snímky. To znamená, že pre používateľa bude takáto požiadavka v premávke vyzerať ako požiadavka na obyčajný obrázok. Podobná technika bola použitá v rodine ImageID snifferov. Okrem toho sa technika používania obrázka s rozmermi 1 x 1 pixel používa v mnohých legitímnych online analytických skriptoch, čo môže tiež zavádzať používateľa.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Analýza verzie

Analýza aktívnych domén používaných operátormi snifferov ReactGet odhalila mnoho rôznych verzií tejto rodiny snifferov. Verzie sa líšia prítomnosťou alebo absenciou zahmlievania a navyše je každý sniffer určený pre špecifický platobný systém, ktorý spracováva platby bankovými kartami pre internetové obchody. Po triedení podľa hodnoty parametra zodpovedajúceho číslu verzie dostali špecialisti Group-IB úplný zoznam dostupných variácií snifferov a podľa názvov polí formulára, ktoré každý sniffer hľadá v kóde stránky, identifikovali platobné systémy. na ktorý je čuch namierený.

Zoznam snifferov a im zodpovedajúcich platobných systémov

Sniffer URL Platobný systém
respondjsapi.com/react.js Authorize.Net
ajaxstatic.com/api.js?v=2.1.1 Cardsave
ajaxstatic.com/api.js?v=2.1.2 Authorize.Net
ajaxstatic.com/api.js?v=2.1.3 Authorize.Net
ajaxstatic.com/api.js?v=2.1.4 eWAY Rapid
ajaxstatic.com/api.js?v=2.1.5 Authorize.Net
ajaxstatic.com/api.js?v=2.1.6 Adyen
ajaxstatic.com/api.js?v=2.1.7 USAePay
ajaxstatic.com/api.js?v=2.1.9 Authorize.Net
apitstatus.com/api.js?v=2.1.1 USAePay
apitstatus.com/api.js?v=2.1.2 Authorize.Net
apitstatus.com/api.js?v=2.1.3 Moneris
apitstatus.com/api.js?v=2.1.5 USAePay
apitstatus.com/api.js?v=2.1.6 PayPal
apitstatus.com/api.js?v=2.1.7 Sage Pay
apitstatus.com/api.js?v=2.1.8 Verisign
apitstatus.com/api.js?v=2.1.9 PayPal
apitstatus.com/api.js?v=2.3.0 Stripe
apitstatus.com/api.js?v=3.0.2 Realex
apitstatus.com/api.js?v=3.0.3 PayPal
apitstatus.com/api.js?v=3.0.4 LinkPoint
apitstatus.com/api.js?v=3.0.5 PayPal
apitstatus.com/api.js?v=3.0.7 PayPal
apitstatus.com/api.js?v=3.0.8 DataCash
apitstatus.com/api.js?v=3.0.9 PayPal
asianfoodgracer.com/footer.js Authorize.Net
billgetstatus.com/api.js?v=1.2 Authorize.Net
billgetstatus.com/api.js?v=1.3 Authorize.Net
billgetstatus.com/api.js?v=1.4 Authorize.Net
billgetstatus.com/api.js?v=1.5 Verisign
billgetstatus.com/api.js?v=1.6 Authorize.Net
billgetstatus.com/api.js?v=1.7 Moneris
billgetstatus.com/api.js?v=1.8 Sage Pay
billgetstatus.com/api.js?v=2.0 USAePay
billgetstatus.com/react.js Authorize.Net
cloudodesc.com/gtm.js?v=1.2 Authorize.Net
cloudodesc.com/gtm.js?v=1.3 ANZ eGate
cloudodesc.com/gtm.js?v=2.3 Authorize.Net
cloudodesc.com/gtm.js?v=2.4 Moneris
cloudodesc.com/gtm.js?v=2.6 Sage Pay
cloudodesc.com/gtm.js?v=2.7 Sage Pay
cloudodesc.com/gtm.js?v=2.8 Chase Paymentech
cloudodesc.com/gtm.js?v=2.9 Authorize.Net
cloudodesc.com/gtm.js?v=2.91 Adyen
cloudodesc.com/gtm.js?v=2.92 PsiGate
cloudodesc.com/gtm.js?v=2.93 Kybernetický zdroj
cloudodesc.com/gtm.js?v=2.95 ANZ eGate
cloudodesc.com/gtm.js?v=2.97 Realex
geisseie.com/gs.js USAePay
gtmproc.com/age.js Authorize.Net
gtmproc.com/gtm.js?v=1.2 Authorize.Net
gtmproc.com/gtm.js?v=1.3 ANZ eGate
gtmproc.com/gtm.js?v=1.5 PayPal
gtmproc.com/gtm.js?v=1.6 PayPal
gtmproc.com/gtm.js?v=1.7 Realex
livecheckpay.com/api.js?v=2.0 Sage Pay
livecheckpay.com/api.js?v=2.1 PayPal
livecheckpay.com/api.js?v=2.2 Verisign
livecheckpay.com/api.js?v=2.3 Authorize.Net
livecheckpay.com/api.js?v=2.4 Verisign
livecheckpay.com/react.js Authorize.Net
livegetpay.com/pay.js?v=2.1.2 ANZ eGate
livegetpay.com/pay.js?v=2.1.3 PayPal
livegetpay.com/pay.js?v=2.1.5 Kybernetický zdroj
livegetpay.com/pay.js?v=2.1.7 Authorize.Net
livegetpay.com/pay.js?v=2.1.8 Sage Pay
livegetpay.com/pay.js?v=2.1.9 Realex
livegetpay.com/pay.js?v=2.2.0 Kybernetický zdroj
livegetpay.com/pay.js?v=2.2.1 PayPal
livegetpay.com/pay.js?v=2.2.2 PayPal
livegetpay.com/pay.js?v=2.2.3 PayPal
livegetpay.com/pay.js?v=2.2.4 Verisign
livegetpay.com/pay.js?v=2.2.5 eWAY Rapid
livegetpay.com/pay.js?v=2.2.7 Sage Pay
livegetpay.com/pay.js?v=2.2.8 Sage Pay
livegetpay.com/pay.js?v=2.2.9 Verisign
livegetpay.com/pay.js?v=2.3.0 Authorize.Net
livegetpay.com/pay.js?v=2.3.1 Authorize.Net
livegetpay.com/pay.js?v=2.3.2 Prvá dátová globálna brána
livegetpay.com/pay.js?v=2.3.3 Authorize.Net
livegetpay.com/pay.js?v=2.3.4 Authorize.Net
livegetpay.com/pay.js?v=2.3.5 Moneris
livegetpay.com/pay.js?v=2.3.6 Authorize.Net
livegetpay.com/pay.js?v=2.3.8 PayPal
livegetpay.com/pay.js?v=2.4.0 Verisign
maxstatics.com/site.js USAePay
mediapack.info/track.js?d=funlove.com USAePay
mediapack.info/track.js?d=qbedding.com Authorize.Net
mediapack.info/track.js?d=vseyewear.com Verisign
mxcounter.com/c.js?v=1.2 PayPal
mxcounter.com/c.js?v=1.3 Authorize.Net
mxcounter.com/c.js?v=1.4 Stripe
mxcounter.com/c.js?v=1.6 Authorize.Net
mxcounter.com/c.js?v=1.7 eWAY Rapid
mxcounter.com/c.js?v=1.8 Sage Pay
mxcounter.com/c.js?v=2.0 Authorize.Net
mxcounter.com/c.js?v=2.1 Braintree
mxcounter.com/c.js?v=2.10 Braintree
mxcounter.com/c.js?v=2.2 PayPal
mxcounter.com/c.js?v=2.3 Sage Pay
mxcounter.com/c.js?v=2.31 Sage Pay
mxcounter.com/c.js?v=2.32 Authorize.Net
mxcounter.com/c.js?v=2.33 PayPal
mxcounter.com/c.js?v=2.34 Authorize.Net
mxcounter.com/c.js?v=2.35 Verisign
mxcounter.com/click.js?v=1.2 PayPal
mxcounter.com/click.js?v=1.3 Authorize.Net
mxcounter.com/click.js?v=1.4 Stripe
mxcounter.com/click.js?v=1.6 Authorize.Net
mxcounter.com/click.js?v=1.7 eWAY Rapid
mxcounter.com/click.js?v=1.8 Sage Pay
mxcounter.com/click.js?v=2.0 Authorize.Net
mxcounter.com/click.js?v=2.1 Braintree
mxcounter.com/click.js?v=2.2 PayPal
mxcounter.com/click.js?v=2.3 Sage Pay
mxcounter.com/click.js?v=2.31 Sage Pay
mxcounter.com/click.js?v=2.32 Authorize.Net
mxcounter.com/click.js?v=2.33 PayPal
mxcounter.com/click.js?v=2.34 Authorize.Net
mxcounter.com/click.js?v=2.35 Verisign
mxcounter.com/cnt.js Authorize.Net
mxcounter.com/j.js Authorize.Net
newrelicnet.com/api.js?v=1.2 Authorize.Net
newrelicnet.com/api.js?v=1.4 Authorize.Net
newrelicnet.com/api.js?v=1.8 Sage Pay
newrelicnet.com/api.js?v=4.5 Sage Pay
newrelicnet.com/api.js?v=4.6 Westpac PayWay
nr-public.com/api.js?v=2.0 PayFort
nr-public.com/api.js?v=2.1 PayPal
nr-public.com/api.js?v=2.2 Authorize.Net
nr-public.com/api.js?v=2.3 Stripe
nr-public.com/api.js?v=2.4 Prvá dátová globálna brána
nr-public.com/api.js?v=2.5 PsiGate
nr-public.com/api.js?v=2.6 Authorize.Net
nr-public.com/api.js?v=2.7 Authorize.Net
nr-public.com/api.js?v=2.8 Moneris
nr-public.com/api.js?v=2.9 Authorize.Net
nr-public.com/api.js?v=3.1 Sage Pay
nr-public.com/api.js?v=3.2 Verisign
nr-public.com/api.js?v=3.3 Moneris
nr-public.com/api.js?v=3.5 PayPal
nr-public.com/api.js?v=3.6 LinkPoint
nr-public.com/api.js?v=3.7 Westpac PayWay
nr-public.com/api.js?v=3.8 Authorize.Net
nr-public.com/api.js?v=4.0 Moneris
nr-public.com/api.js?v=4.0.2 PayPal
nr-public.com/api.js?v=4.0.3 Adyen
nr-public.com/api.js?v=4.0.4 PayPal
nr-public.com/api.js?v=4.0.5 Authorize.Net
nr-public.com/api.js?v=4.0.6 USAePay
nr-public.com/api.js?v=4.0.7 EBizCharge
nr-public.com/api.js?v=4.0.8 Authorize.Net
nr-public.com/api.js?v=4.0.9 Verisign
nr-public.com/api.js?v=4.1.2 Verisign
ordercheckpays.com/api.js?v=2.11 Authorize.Net
ordercheckpays.com/api.js?v=2.12 PayPal
ordercheckpays.com/api.js?v=2.13 Moneris
ordercheckpays.com/api.js?v=2.14 Authorize.Net
ordercheckpays.com/api.js?v=2.15 PayPal
ordercheckpays.com/api.js?v=2.16 PayPal
ordercheckpays.com/api.js?v=2.17 Westpac PayWay
ordercheckpays.com/api.js?v=2.18 Authorize.Net
ordercheckpays.com/api.js?v=2.19 Authorize.Net
ordercheckpays.com/api.js?v=2.21 Sage Pay
ordercheckpays.com/api.js?v=2.22 Verisign
ordercheckpays.com/api.js?v=2.23 Authorize.Net
ordercheckpays.com/api.js?v=2.24 PayPal
ordercheckpays.com/api.js?v=2.25 PayFort
ordercheckpays.com/api.js?v=2.29 Kybernetický zdroj
ordercheckpays.com/api.js?v=2.4 PayPal Payflow Pro
ordercheckpays.com/api.js?v=2.7 Authorize.Net
ordercheckpays.com/api.js?v=2.8 Authorize.Net
ordercheckpays.com/api.js?v=2.9 Verisign
ordercheckpays.com/api.js?v=3.1 Authorize.Net
ordercheckpays.com/api.js?v=3.2 Authorize.Net
ordercheckpays.com/api.js?v=3.3 Sage Pay
ordercheckpays.com/api.js?v=3.4 Authorize.Net
ordercheckpays.com/api.js?v=3.5 Stripe
ordercheckpays.com/api.js?v=3.6 Authorize.Net
ordercheckpays.com/api.js?v=3.7 Authorize.Net
ordercheckpays.com/api.js?v=3.8 Verisign
ordercheckpays.com/api.js?v=3.9 PayPal
ordercheckpays.com/api.js?v=4.0 Authorize.Net
ordercheckpays.com/api.js?v=4.1 Authorize.Net
ordercheckpays.com/api.js?v=4.2 Sage Pay
ordercheckpays.com/api.js?v=4.3 Authorize.Net
reagovatjsapi.com/api.js?v=0.1.0 Authorize.Net
reagovatjsapi.com/api.js?v=0.1.1 PayPal
reagovatjsapi.com/api.js?v=4.1.2 Pazúrik
reagovatjsapi.com/api.js?v=4.1.4 PayPal
reagovatjsapi.com/api.js?v=4.1.5 Sage Pay
reagovatjsapi.com/api.js?v=4.1.51 Verisign
reagovatjsapi.com/api.js?v=4.1.6 Authorize.Net
reagovatjsapi.com/api.js?v=4.1.7 Authorize.Net
reagovatjsapi.com/api.js?v=4.1.8 Stripe
reagovatjsapi.com/api.js?v=4.1.9 Tučná zebra
reagovatjsapi.com/api.js?v=4.2.0 Sage Pay
reagovatjsapi.com/api.js?v=4.2.1 Authorize.Net
reagovatjsapi.com/api.js?v=4.2.2 Prvá dátová globálna brána
reagovatjsapi.com/api.js?v=4.2.3 Authorize.Net
reagovatjsapi.com/api.js?v=4.2.4 eWAY Rapid
reagovatjsapi.com/api.js?v=4.2.5 Adyen
reagovatjsapi.com/api.js?v=4.2.7 PayPal
reagovatjsapi.com/api.js?v=4.2.8 Obchodné služby QuickBooks
reagovatjsapi.com/api.js?v=4.2.9 Verisign
reagovatjsapi.com/api.js?v=4.2.91 Sage Pay
reagovatjsapi.com/api.js?v=4.2.92 Verisign
reagovatjsapi.com/api.js?v=4.2.94 Authorize.Net
reagovatjsapi.com/api.js?v=4.3.97 Authorize.Net
reagovatjsapi.com/api.js?v=4.5 Sage Pay
respondjsapi.com/react.js Authorize.Net
sydneysalonsupplies.com/gtm.js eWAY Rapid
tagsmediaget.com/react.js Authorize.Net
tagstracking.com/tag.js?v=2.1.2 ANZ eGate
tagstracking.com/tag.js?v=2.1.3 PayPal
tagstracking.com/tag.js?v=2.1.5 Kybernetický zdroj
tagstracking.com/tag.js?v=2.1.7 Authorize.Net
tagstracking.com/tag.js?v=2.1.8 Sage Pay
tagstracking.com/tag.js?v=2.1.9 Realex
tagstracking.com/tag.js?v=2.2.0 Kybernetický zdroj
tagstracking.com/tag.js?v=2.2.1 PayPal
tagstracking.com/tag.js?v=2.2.2 PayPal
tagstracking.com/tag.js?v=2.2.3 PayPal
tagstracking.com/tag.js?v=2.2.4 Verisign
tagstracking.com/tag.js?v=2.2.5 eWAY Rapid
tagstracking.com/tag.js?v=2.2.7 Sage Pay
tagstracking.com/tag.js?v=2.2.8 Sage Pay
tagstracking.com/tag.js?v=2.2.9 Verisign
tagstracking.com/tag.js?v=2.3.0 Authorize.Net
tagstracking.com/tag.js?v=2.3.1 Authorize.Net
tagstracking.com/tag.js?v=2.3.2 Prvá dátová globálna brána
tagstracking.com/tag.js?v=2.3.3 Authorize.Net
tagstracking.com/tag.js?v=2.3.4 Authorize.Net
tagstracking.com/tag.js?v=2.3.5 Moneris
tagstracking.com/tag.js?v=2.3.6 Authorize.Net
tagstracking.com/tag.js?v=2.3.8 PayPal

Sledovač hesiel

Jednou z výhod JavaScript snifferov pracujúcich na klientskej strane webovej stránky je ich všestrannosť: škodlivý kód vložený do webovej stránky môže ukradnúť akýkoľvek typ údajov, či už sú to platobné údaje alebo prihlasovacie meno a heslo používateľského účtu. Špecialisti Group-IB objavili vzorku sniffera patriaceho do rodiny ReactGet, ktorý bol navrhnutý tak, aby ukradol e-mailové adresy a heslá používateľov stránok.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Priesečník s programom ImageID sniffer

Pri analýze jedného z infikovaných obchodov sa zistilo, že jeho stránka bola infikovaná dvakrát: okrem škodlivého kódu sniffera rodiny ReactGet bol zistený aj kód sniffera rodiny ImageID. Toto prekrývanie by mohlo byť dôkazom toho, že operátori za oboma sniffermi používajú podobné techniky na vstrekovanie škodlivého kódu.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Univerzálny sniffer

Analýza jedného z názvov domén spojených s infraštruktúrou snímania ReactGet odhalila, že ten istý používateľ zaregistroval tri ďalšie názvy domén. Tieto tri domény napodobňovali domény skutočných webových stránok a predtým sa používali na hosťovanie snifferov. Pri analýze kódu troch legitímnych stránok bol zistený neznámy sniffer a ďalšia analýza ukázala, že išlo o vylepšenú verziu sniffera ReactGet. Všetky predtým sledované verzie tejto rodiny snifferov boli zamerané na jednotný platobný systém, to znamená, že každý platobný systém vyžadoval špeciálnu verziu sniffera. V tomto prípade však bola objavená univerzálna verzia sniffera, ktorá je schopná kradnúť informácie z formulárov týkajúcich sa 15 rôznych platobných systémov a modulov stránok elektronického obchodu na uskutočňovanie online platieb.

Takže na začiatku práce pátrač hľadal základné polia formulára obsahujúce osobné informácie obete: celé meno, fyzická adresa, telefónne číslo.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Sniffer potom prehľadal viac ako 15 rôznych predvolieb zodpovedajúcich rôznym platobným systémom a online platobným modulom.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Ďalej boli zhromaždené osobné údaje obete a informácie o platbách a odoslané na stránku kontrolovanú útočníkom: v tomto konkrétnom prípade boli objavené dve verzie univerzálneho sniffera ReactGet umiestneného na dvoch rôznych napadnutých stránkach. Obe verzie však posielali ukradnuté dáta na rovnakú napadnutú stránku zoobashop.com.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Analýza predpôn, ktoré sniffer použil na vyhľadávanie polí obsahujúcich platobné informácie obete, nám umožnila určiť, že táto vzorka snifferov bola zameraná na nasledujúce platobné systémy:

  • Authorize.Net
  • Verisign
  • First dáta
  • USAePay
  • Stripe
  • PayPal
  • ANZ eGate
  • Braintree
  • DataCash (MasterCard)
  • Realex Payments
  • PsiGate
  • Heartland platobné systémy

Aké nástroje sa používajú na krádež platobných údajov?

Prvý nástroj, objavený pri analýze infraštruktúry útočníkov, slúži na zahmlievanie škodlivých skriptov zodpovedných za krádež bankových kariet. Na jednom z útočníkových hostiteľov bol objavený bash skript využívajúci CLI projektu javascript-obfuscator automatizovať zahmlievanie kódu sniffer.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Druhý objavený nástroj je určený na generovanie kódu zodpovedného za načítanie hlavného sniffera. Tento nástroj generuje kód JavaScript, ktorý skontroluje, či sa používateľ nachádza na platobnej stránke, vyhľadaním reťazcov v aktuálnej adrese používateľa pokladňa, vozík a tak ďalej, a ak je výsledok pozitívny, potom kód načíta hlavný sniffer zo servera útočníkov. Aby sa skryla škodlivá aktivita, všetky riadky vrátane testovacích riadkov na určenie platobnej stránky, ako aj odkaz na sniffer, sú kódované pomocou base64.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Phishingové útoky

Analýza sieťovej infraštruktúry útočníkov odhalila, že zločinecká skupina často využíva phishing na získanie prístupu do administratívneho panelu cieľového internetového obchodu. Útočníci si zaregistrujú doménu, ktorá je vizuálne podobná doméne obchodu, a potom na ňu nasadia falošný prihlasovací formulár na administračný panel Magento. Ak budú úspešní, útočníci získajú prístup k administratívnemu panelu Magento CMS, ktorý im dáva možnosť upravovať komponenty webovej stránky a implementovať sniffer na krádež údajov o kreditných kartách.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Infraštruktúra

Домен Dátum objavenia/objavenia
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
respondjsapi.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

Rodina G-Analytics

Táto rodina snifferov sa používa na krádeže zákazníckych kariet z internetových obchodov. Úplne prvé doménové meno používané skupinou bolo zaregistrované v apríli 2016, čo môže naznačovať, že skupina začala svoju činnosť v polovici roka 2016.

V aktuálnej kampani skupina používa názvy domén, ktoré napodobňujú služby v reálnom živote, ako sú Google Analytics a jQuery, čím maskujú aktivitu snifferov legitímnymi skriptami a názvami domén podobnými legitímnym. Stránky s Magento CMS boli napadnuté.

Ako je G-Analytics implementovaný do kódu internetového obchodu

Charakteristickým rysom tejto rodiny je použitie rôznych metód na odcudzenie platobných údajov používateľov. Zločinecká skupina okrem klasického vstrekovania kódu JavaScript do klientskej strany stránky využívala aj techniky vstrekovania kódu na serverovú stranu stránky, konkrétne PHP skripty, ktoré spracúvajú údaje zadané používateľom. Táto technika je nebezpečná, pretože výskumníkom tretích strán sťažuje odhalenie škodlivého kódu. Špecialisti Group-IB objavili verziu snifferu vloženú do kódu PHP stránky, pričom ako bránu použili doménu dittm.org.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Bola tiež objavená skorá verzia sniffera, ktorý používa rovnakú doménu na zhromažďovanie ukradnutých údajov dittm.org, ale táto verzia je určená na inštaláciu na klientskej strane internetového obchodu.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Skupina neskôr zmenila taktiku a začala sa viac zameriavať na skrývanie zákernej činnosti a maskovanie.

Začiatkom roka 2017 začala skupina využívať doménu jquery-js.com, maskovaný ako CDN pre jQuery: pri prechode na stránku útočníkov je používateľ presmerovaný na legitímnu stránku jquery.com.

A v polovici roku 2018 skupina prijala názov domény g-analytics.com a začal maskovať aktivity sniffera ako legitímnu službu Google Analytics.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Analýza verzie

Počas analýzy domén používaných na ukladanie sniffer kódu sa zistilo, že stránka obsahuje veľké množstvo verzií, ktoré sa líšia prítomnosťou zahmlievania, ako aj prítomnosťou alebo absenciou nedostupného kódu pridaného do súboru na odpútanie pozornosti. a skryť škodlivý kód.

Celkom na webe jquery-js.com Identifikovalo sa šesť verzií lapačov. Tieto sniffery posielajú ukradnuté údaje na adresu umiestnenú na tej istej webovej stránke ako samotný sniffer: 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

Neskôr doména g-analytics.com, ktorý skupina používa pri útokoch od polovice roku 2018, slúži ako úložisko pre viac snifferov. Celkovo bolo objavených 16 rôznych verzií snifferov. V tomto prípade bola brána na odosielanie ukradnutých údajov maskovaná ako odkaz na obrazový formát 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

Speňaženie ukradnutých údajov

Zločinecká skupina speňaží ukradnuté dáta predajom kariet prostredníctvom špeciálne vytvoreného podzemného obchodu, ktorý poskytuje služby kartárom. Analýza domén používaných útočníkmi nám to umožnila určiť google-analytics.cm bola zaregistrovaná rovnakým používateľom ako doména cardz.vc. doména cardz.vc označuje obchod s ukradnutými bankovými kartami Cardsurfs (Flysurfs), ktorý si získal popularitu ešte v časoch činnosti podzemnej obchodnej platformy AlphaBay ako obchod s bankovými kartami ukradnutými pomocou snifferu.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Analýza domény analytický.je, ktorý sa nachádza na rovnakom serveri ako domény používané sniffermi na zhromažďovanie ukradnutých údajov, objavili špecialisti Group-IB súbor obsahujúci protokoly zlodeja súborov cookie, ktorý, ako sa zdá, neskôr vývojár opustil. Jeden zo záznamov v denníku obsahoval doménu iozoz.com, ktorý bol predtým použitý v jednom zo snifferov aktívnych v roku 2016. Pravdepodobne túto doménu predtým používal útočník na zbieranie kariet ukradnutých pomocou snifferu. Táto doména bola zaregistrovaná na e-mailovú adresu [chránené e-mailom], ktorý slúžil aj na registráciu domén cardz.su и cardz.vc, súvisiaci s predajňou kariet Cardsurfs.

Na základe získaných údajov sa dá predpokladať, že rodinu snifferov G-Analytics a podzemný obchod s bankovými kartami Cardsurfs spravujú tí istí ľudia a obchod slúži na predaj bankových kariet ukradnutých pomocou snifferov.

Infraštruktúra

Домен Dátum objavenia/objavenia
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
analytický.k 04.12.2018
google-analytics.to 06.12.2018
google-analytics.cm 28.12.2018
analytický.je 28.12.2018
googlec-analytics.cm 17.01.2019

Illum rodina

Illum je rodina snifferov používaných na útoky na online obchody so systémom Magento CMS. Prevádzkovatelia tohto sniffera využívajú okrem zavádzania škodlivého kódu aj zavedenie plnohodnotných falošných platobných formulárov, ktoré posielajú dáta na brány ovládané útočníkmi.

Pri analýze sieťovej infraštruktúry, ktorú používajú operátori tohto sniffera, bolo zaznamenané veľké množstvo škodlivých skriptov, exploitov, falošných platobných formulárov, ako aj zbierka príkladov so škodlivými sniffermi od konkurentov. Na základe informácií o dátumoch výskytu doménových mien používaných skupinou možno predpokladať, že kampaň začala koncom roka 2016.

Ako je Illum implementovaný do kódu internetového obchodu

Prvé objavené verzie sniffera boli vložené priamo do kódu napadnutej stránky. Ukradnuté údaje boli odoslané na cdn.illum[.]pw/records.php, brána bola zakódovaná pomocou base64.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Neskôr bola objavená zabalená verzia sniffera, ktorá používa inú bránu - records.nstatistics[.]com/records.php.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Podľa správa Willem de Groot, rovnaký hostiteľ bol použitý v snifferi, ktorý bol implementovaný na webovú stránku obchodu, ktorú vlastní nemecká politická strana CSU.

Analýza webovej stránky útočníkov

Špecialisti Group-IB objavili a analyzovali webovú stránku používanú touto zločineckou skupinou na ukladanie nástrojov a zhromažďovanie ukradnutých informácií.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Medzi nástrojmi nájdenými na serveri útočníkov boli skripty a exploity na eskaláciu privilégií v OS Linux: napríklad Linux Privilege Escalation Check Script vyvinutý Mikeom Czumakom, ako aj exploit pre CVE-2009-1185.

Útočníci použili na útok na internetové obchody priamo dva exploity: первый schopný vložiť škodlivý kód do core_config_data využívaním CVE-2016-4010, druhý využíva zraniteľnosť RCE v zásuvných moduloch pre CMS Magento, čo umožňuje spustenie ľubovoľného kódu na zraniteľnom webovom serveri.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Počas analýzy servera boli tiež objavené rôzne vzorky snifferov a falošných platobných formulárov, ktoré útočníci používali na zhromažďovanie informácií o platbách z napadnutých stránok. Ako môžete vidieť zo zoznamu nižšie, niektoré skripty boli vytvorené individuálne pre každú napadnutú stránku, pričom pre určité CMS a platobné brány bolo použité univerzálne riešenie. Napríklad skripty segapay_standart.js и segapay_onpage.js určené na implementáciu na stránkach využívajúcich platobnú bránu Sage Pay.

Zoznam skriptov pre rôzne platobné brány

Skript Platobná brána
sr.illum[.]pw/mjs_special/visiondirect.co.uk.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/topdierenshop.nl.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/tiendalenovo.es.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/pro-bolt.com.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/plae.co.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/ottolenghi.co.uk.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/oldtimecandy.com.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/mylook.ee.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/mjs_special/luluandsky.com.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/julep.com.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/mjs_special/gymcompany.es.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/grotekadoshop.nl.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs_special/fushi.co.uk.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/fareastflora.com.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/compuindia.com.js //request.payrightnow[.]cf/alldata.php
sr.illum[.]pw/mjs/segapay_standart.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/mjs/segapay_onpage.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/mjs/replace_standart.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs/all_inputs.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/mjs/add_inputs_standart.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/magento/payment_standart.js //cdn.illum[.]pw/records.php
sr.illum[.]pw/magento/payment_redirect.js //payrightnow[.]cf/?payment=
sr.illum[.]pw/magento/payment_redcrypt.js //payrightnow[.]cf/?payment=
sr.illum[.]pw/magento/payment_forminsite.js //paymentnow[.]tk/?payment=

Hostiteľ paymentnow[.]tk, používaná ako brána v scenári payment_forminsite.js, bol objavený ako SubjectAltName vo viacerých certifikátoch súvisiacich so službou CloudFlare. Hostiteľ navyše obsahoval scenár evil.js. Súdiac podľa názvu skriptu by sa dal použiť v rámci exploitácie CVE-2016-4010, vďaka čomu je možné vložiť škodlivý kód do päty stránky, na ktorej beží Magento CMS. Hostiteľ použil tento skript ako bránu request.requestnet[.]tkpomocou rovnakého certifikátu ako hostiteľ paymentnow[.]tk.

Falošné platobné formuláre

Na obrázku nižšie je príklad formulára na zadanie údajov o karte. Tento formulár bol použitý na infiltráciu internetového obchodu a odcudzenie údajov o karte.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Nasledujúci obrázok ukazuje príklad falošného platobného formulára PayPal, ktorý útočníci použili na infiltráciu stránok s týmto spôsobom platby.
Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Infraštruktúra

Домен Dátum objavenia/objavenia
cdn.illum.pw 27/11/2016
records.nstatistics.com 06/09/2018
request.payright now.cf 25/05/2018
paymentnow.tk 16/07/2017
platba-linka.tk 01/03/2018
paymentpal.cf 04/09/2017
requestnet.tk 28/06/2017

Rodina CoffeeMokko

Rodina snifferov CoffeMokko, ktorá je určená na krádež bankových kariet od používateľov internetového obchodu, sa používa minimálne od mája 2017. Prevádzkovatelia tejto rodiny snifferov sú pravdepodobne zločinecká skupina Group 1, ktorú opísali špecialisti na RiskIQ v roku 2016. Boli napadnuté stránky s CMS ako Magento, OpenCart, WordPress, osCommerce a Shopify.

Ako sa CoffeMokko implementuje do kódu internetového obchodu

Operátori tejto rodiny vytvárajú jedinečné sniffery pre každú infekciu: súbor sniffer sa nachádza v adresári src alebo js na serveri útočníkov. Začlenenie do kódu lokality sa vykonáva prostredníctvom priameho odkazu na sniffer.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Sniffer kód pevne zakóduje názvy polí formulára, z ktorých je potrebné ukradnúť údaje. Sniffer tiež kontroluje, či sa používateľ nachádza na platobnej stránke, a to kontrolou zoznamu kľúčových slov s aktuálnou adresou používateľa.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Niektoré objavené verzie sniffera boli zahmlené a obsahovali zašifrovaný reťazec, v ktorom bolo uložené hlavné pole zdrojov: obsahovalo názvy polí formulárov pre rôzne platobné systémy, ako aj adresu brány, na ktorú mali byť zaslané ukradnuté údaje.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Ukradnuté platobné informácie boli počas cesty odoslané do skriptu na serveri útočníkov /savePayment/index.php alebo /tr/index.php. Pravdepodobne sa tento skript používa na odosielanie údajov z brány na hlavný server, ktorý konsoliduje údaje zo všetkých snifferov. Na skrytie prenášaných údajov sú všetky platobné informácie obete šifrované pomocou base64a potom dôjde k niekoľkým náhradám znakov:

  • znak "e" sa nahradí znakom ":"
  • symbol "w" je nahradený "+"
  • znak "o" sa nahradí znakom "%"
  • znak "d" sa nahradí znakom "#"
  • znak "a" sa nahrádza "-"
  • symbol "7" je nahradený "^"
  • znak "h" je nahradený "_"
  • symbol "T" je nahradený "@"
  • znak "0" sa nahrádza "/"
  • znak "Y" sa nahradí znakom "*"

V dôsledku nahradenia znakov kódovaných pomocou base64 Údaje nemožno dekódovať bez vykonania spätnej konverzie.

Takto vyzerá fragment kódu sniffer, ktorý nebol zahmlený:

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Analýza infraštruktúry

V prvých kampaniach útočníci registrovali názvy domén podobné tým, ktoré majú legitímne webové stránky s online nákupom. Ich doména sa môže líšiť od legitímnej jedným symbolom alebo iným TLD. Registrované domény slúžili na ukladanie sniffer kódu, odkaz na ktorý bol vložený do kódu obchodu.

Táto skupina tiež používala názvy domén pripomínajúce obľúbené doplnky jQuery (slickjs[.]org pre stránky používajúce plugin slick.js), platobné brány (sagecdn[.]org pre stránky používajúce platobný systém Sage Pay).

Neskôr skupina začala vytvárať domény, ktorých názvy nemali nič spoločné s doménou obchodu alebo témou obchodu.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Každá doména zodpovedala stránke, na ktorej bol adresár vytvorený /js alebo / src. Sniffer skripty boli uložené v tomto adresári: jeden sniffer pre každú novú infekciu. Sniffer bol vložený do kódu webovej stránky prostredníctvom priameho odkazu, no v ojedinelých prípadoch útočníci upravili jeden zo súborov webovej stránky a pridali doň škodlivý kód.

Analýza kódu

Prvý zahmlievací algoritmus

V niektorých objavených vzorkách snifferov tejto rodiny bol kód zahmlený a obsahoval zašifrované údaje potrebné na to, aby sniffer fungoval: najmä adresu brány sniffer, zoznam polí platobného formulára a v niektorých prípadoch aj kód falošného platobný formulár. V kóde vo funkcii boli prostriedky zašifrované pomocou XOR kľúčom, ktorý bol odovzdaný ako argument rovnakej funkcii.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Dešifrovaním reťazca pomocou príslušného kľúča, jedinečného pre každú vzorku, môžete získať reťazec obsahujúci všetky reťazce z kódu sniffer oddelené oddeľovacím znakom.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Druhý zahmlievací algoritmus

V neskorších vzorkách snifferov tejto rodiny sa použil iný mechanizmus zahmlievania: v tomto prípade boli údaje zašifrované pomocou algoritmu, ktorý si sám napísal. Reťazec obsahujúci zašifrované údaje potrebné na fungovanie snifferu bol odovzdaný ako argument dešifrovacej funkcii.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Pomocou konzoly prehliadača môžete dešifrovať zašifrované údaje a získať pole obsahujúce zdroje snifferov.

Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch

Pripojenie k skorým útokom MageCart

Počas analýzy jednej z domén, ktorú skupina používa ako bránu na zhromažďovanie ukradnutých údajov, sa zistilo, že táto doména využíva infraštruktúru na krádeže kreditných kariet, identickú s infraštruktúrou používanou skupinou 1, jednou z prvých skupín, objavil od špecialistov RiskIQ.

Na hostiteľovi rodiny CoffeMokko snifferov boli nájdené dva súbory:

  • mage.js — súbor obsahujúci kód sledovača skupiny 1 s adresou brány js-cdn.link
  • mag.php — PHP skript zodpovedný za zhromažďovanie údajov ukradnutých snifferom

Obsah súboru mage.js Štyri sniffery JavaScriptu, ktoré na vás číhajú v internetových obchodoch
Tiež sa zistilo, že najskoršie domény používané skupinou stojacou za rodinou snifferov CoffeMokko boli zaregistrované 17. mája 2017:

  • link-js[.]odkaz
  • info-js[.]odkaz
  • track-js[.]odkaz
  • map-js[.]odkaz
  • smart-js[.]odkaz

Formát týchto názvov domén sa zhoduje s názvami domén skupiny 1, ktoré boli použité pri útokoch v roku 2016.

Na základe zistených skutočností sa dá predpokladať, že medzi prevádzkovateľmi čučoriedok CoffeMokko a zločineckou skupinou 1. skupina existuje prepojenie. Operátori CoffeMokko si pravdepodobne mohli požičať nástroje a softvér od svojich predchodcov na krádež kariet. Je však pravdepodobnejšie, že zločineckou skupinou, ktorá stojí za použitím čuchačov rodiny CoffeMokko, sú tí istí ľudia, ktorí vykonali útoky skupiny 1. Po zverejnení prvej správy o činnosti zločineckej skupiny boli všetky ich doménové mená zablokované a nástroje boli podrobne preštudované a popísané. Skupina bola nútená dať si prestávku, vylepšiť svoje interné nástroje a prepísať kód sniffer, aby pokračovala v útokoch a zostala neodhalená.

Infraštruktúra

Домен Dátum objavenia/objavenia
link-js.link 17.05.2017
info-js.link 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
security-payment.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
detské oblečenie.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
nahradiť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
coffetea.org 31.01.2018
energycoffe.org 31.01.2018
energytea.org 31.01.2018
teacoffe.net 31.01.2018
adaptivecss.org 01.03.2018
coffemokko.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
authorizedecdn.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

Zdroj: hab.com

Pridať komentár