Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Halos bawat isa sa atin ay gumagamit ng mga serbisyo ng mga online na tindahan, na nangangahulugan na maaga o huli ay may panganib tayong maging biktima ng mga sniffer ng JavaScript - isang espesyal na code na inilalagay ng mga umaatake sa isang website upang magnakaw ng data ng bank card, mga address, username at password .

Halos 400 user ng British Airways website at mobile app ang naapektuhan na ng mga sniffer, gayundin ng mga bisita sa British sports giant FILA website at US ticket distributor Ticketmaster. PayPal, Chase Paymenttech, USAePay, Moneris - ito at marami pang ibang sistema ng pagbabayad ay nahawahan na.

Ang analyst ng Threat Intelligence Group-IB na si Viktor Okorokov ay nagsasalita tungkol sa kung paano napasok ng mga sniffer ang code ng website at nagnakaw ng impormasyon sa pagbabayad, pati na rin kung aling mga CRM ang kanilang inaatake.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

"Nakatagong pagbabanta"

Ito ay nangyari na sa loob ng mahabang panahon ang mga JS-sniffer ay nanatiling wala sa paningin ng mga analyst ng anti-virus, at ang mga bangko at mga sistema ng pagbabayad ay hindi nakita ang mga ito bilang isang seryosong banta. At talagang walang kabuluhan. Mga Eksperto ng Group-IB sinuri 2440 na nahawaang online na tindahan, na ang mga bisita - sa kabuuan ay humigit-kumulang 1,5 milyong tao sa isang araw - ay nasa panganib na makompromiso. Kabilang sa mga biktima ay hindi lamang mga gumagamit, kundi pati na rin ang mga online na tindahan, mga sistema ng pagbabayad at mga bangko na nag-isyu ng mga nakompromisong card.

Iulat Ang Group-IB ang naging unang pag-aaral ng darknet market ng mga sniffer, kanilang imprastraktura at paraan ng monetization, na nagdadala ng milyun-milyong dolyar sa kanilang mga creator. Natukoy namin ang 38 pamilya ng sniffer, kung saan 12 lamang ang dating kilala ng mga mananaliksik.

Isaalang-alang natin nang detalyado ang apat na pamilya ng mga sniffer na pinag-aralan sa kurso ng pag-aaral.

ReactGet pamilya

Ang mga sniffer ng pamilyang ReactGet ay ginagamit upang magnakaw ng data ng bank card sa mga online shopping site. Ang sniffer ay maaaring gumana sa isang malaking bilang ng iba't ibang mga sistema ng pagbabayad na ginagamit sa site: ang isang parameter na halaga ay tumutugma sa isang sistema ng pagbabayad, at ang mga indibidwal na natukoy na bersyon ng sniffer ay maaaring gamitin upang magnakaw ng mga kredensyal, pati na rin upang magnakaw ng data ng bank card mula sa mga paraan ng pagbabayad ng ilang sistema ng pagbabayad nang sabay-sabay, tulad ng tinatawag na universal sniffer. Napag-alaman na sa ilang mga kaso, ang mga umaatake ay nagsasagawa ng mga pag-atake ng phishing sa mga administrator ng online store upang makakuha ng access sa administrative panel ng site.

Nagsimula ang campaign na gumagamit ng pamilyang ito ng mga sniffer noong Mayo 2017. Inatake ang mga site na nagpapatakbo ng CMS at mga platform na Magento, Bigcommerce, Shopify.

Paano naka-embed ang ReactGet sa code ng isang online na tindahan

Bilang karagdagan sa "classic" na iniksyon ng script sa pamamagitan ng link, ang mga operator ng sniffer ng pamilya ng ReactGet ay gumagamit ng isang espesyal na diskarte: gamit ang JavaScript code, sinusuri nito kung ang kasalukuyang address kung saan matatagpuan ang user ay nakakatugon sa ilang partikular na pamantayan. Tatakbo lang ang nakakahamak na code kung ang kasalukuyang URL ay naglalaman ng substring pagsisiyasat o isang hakbang check out, isang pahina/, out/onepag, checkout/isa, ckout/isa. Kaya, ang sniffer code ay isasagawa nang eksakto sa sandaling ang user ay magpapatuloy na magbayad para sa mga pagbili at magpasok ng impormasyon sa pagbabayad sa form sa site.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Gumagamit ang sniffer na ito ng hindi karaniwang pamamaraan. Ang pagbabayad at personal na data ng biktima ay sama-samang kinokolekta, naka-encode gamit base64, at pagkatapos ay ang resultang string ay ginagamit bilang isang parameter upang magpadala ng kahilingan sa nakakahamak na site. Kadalasan, ang path sa gate ay ginagaya ang isang JavaScript file, halimbawa resp.js, data.js at iba pa, ngunit ginagamit din ang mga link sa mga file ng imahe, GIF ΠΈ JPG. Ang kakaiba ay ang sniffer ay lumilikha ng isang imahe na bagay na may sukat na 1 sa 1 pixel at ginagamit ang dating nakuha na link bilang isang parameter SRC Mga imahe. Iyon ay, para sa gumagamit, ang naturang kahilingan sa trapiko ay magmumukhang isang kahilingan para sa isang regular na larawan. Ang isang katulad na pamamaraan ay ginamit sa pamilya ng ImageID ng mga sniffer. Bilang karagdagan, ang 1x1 pixel image technique ay ginagamit sa maraming lehitimong online na analytics script, na maaari ring iligaw ang user.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Pagsusuri ng Bersyon

Ang pagsusuri sa mga aktibong domain na ginagamit ng mga operator ng sniffer ng ReactGet ay nagsiwalat ng maraming iba't ibang bersyon ng pamilyang ito ng mga sniffer. Ang mga bersyon ay naiiba sa pagkakaroon o kawalan ng obfuscation, at bilang karagdagan, ang bawat sniffer ay idinisenyo para sa isang partikular na sistema ng pagbabayad na nagpoproseso ng mga pagbabayad sa bank card para sa mga online na tindahan. Pagkatapos pag-uri-uriin ang halaga ng parameter na tumutugma sa numero ng bersyon, nakatanggap ang mga espesyalista ng Group-IB ng kumpletong listahan ng mga available na variation ng sniffer, at ayon sa mga pangalan ng mga field ng form na hinahanap ng bawat sniffer sa page code, natukoy nila ang mga sistema ng pagbabayad na pinupuntirya ng sniffer.

Listahan ng mga sniffer at ang kanilang mga kaukulang sistema ng pagbabayad

Sniffer URL Sistema ng pagbabayad
reactjsapi.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 Mabilis
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 Guhit
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 Habulin ang 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 Pinagmulan ng Cyber
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 Pinagmulan ng Cyber
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 Pinagmulan ng Cyber
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 Mabilis
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 Unang Data Global Gateway
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 Guhit
mxcounter.com/c.js?v=1.6 Authorize.Net
mxcounter.com/c.js?v=1.7 eWAY Mabilis
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 Guhit
mxcounter.com/click.js?v=1.6 Authorize.Net
mxcounter.com/click.js?v=1.7 eWAY Mabilis
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 Guhit
nr-public.com/api.js?v=2.4 Unang Data Global Gateway
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 Pinagmulan ng Cyber
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 Guhit
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
reactjsapi.com/api.js?v=0.1.0 Authorize.Net
reactjsapi.com/api.js?v=0.1.1 PayPal
reactjsapi.com/api.js?v=4.1.2 Puyusan
reactjsapi.com/api.js?v=4.1.4 PayPal
reactjsapi.com/api.js?v=4.1.5 Sage Pay
reactjsapi.com/api.js?v=4.1.51 Verisign
reactjsapi.com/api.js?v=4.1.6 Authorize.Net
reactjsapi.com/api.js?v=4.1.7 Authorize.Net
reactjsapi.com/api.js?v=4.1.8 Guhit
reactjsapi.com/api.js?v=4.1.9 Matabang Zebra
reactjsapi.com/api.js?v=4.2.0 Sage Pay
reactjsapi.com/api.js?v=4.2.1 Authorize.Net
reactjsapi.com/api.js?v=4.2.2 Unang Data Global Gateway
reactjsapi.com/api.js?v=4.2.3 Authorize.Net
reactjsapi.com/api.js?v=4.2.4 eWAY Mabilis
reactjsapi.com/api.js?v=4.2.5 Adyen
reactjsapi.com/api.js?v=4.2.7 PayPal
reactjsapi.com/api.js?v=4.2.8 Mga Serbisyo ng Merchant ng QuickBooks
reactjsapi.com/api.js?v=4.2.9 Verisign
reactjsapi.com/api.js?v=4.2.91 Sage Pay
reactjsapi.com/api.js?v=4.2.92 Verisign
reactjsapi.com/api.js?v=4.2.94 Authorize.Net
reactjsapi.com/api.js?v=4.3.97 Authorize.Net
reactjsapi.com/api.js?v=4.5 Sage Pay
reactjsapi.com/react.js Authorize.Net
sydneysalonsupplies.com/gtm.js eWAY Mabilis
tagsmediaget.com/react.js Authorize.Net
tagtracking.com/tag.js?v=2.1.2 ANZ eGate
tagtracking.com/tag.js?v=2.1.3 PayPal
tagtracking.com/tag.js?v=2.1.5 Pinagmulan ng Cyber
tagtracking.com/tag.js?v=2.1.7 Authorize.Net
tagtracking.com/tag.js?v=2.1.8 Sage Pay
tagtracking.com/tag.js?v=2.1.9 Realex
tagtracking.com/tag.js?v=2.2.0 Pinagmulan ng Cyber
tagtracking.com/tag.js?v=2.2.1 PayPal
tagtracking.com/tag.js?v=2.2.2 PayPal
tagtracking.com/tag.js?v=2.2.3 PayPal
tagtracking.com/tag.js?v=2.2.4 Verisign
tagtracking.com/tag.js?v=2.2.5 eWAY Mabilis
tagtracking.com/tag.js?v=2.2.7 Sage Pay
tagtracking.com/tag.js?v=2.2.8 Sage Pay
tagtracking.com/tag.js?v=2.2.9 Verisign
tagtracking.com/tag.js?v=2.3.0 Authorize.Net
tagtracking.com/tag.js?v=2.3.1 Authorize.Net
tagtracking.com/tag.js?v=2.3.2 Unang Data Global Gateway
tagtracking.com/tag.js?v=2.3.3 Authorize.Net
tagtracking.com/tag.js?v=2.3.4 Authorize.Net
tagtracking.com/tag.js?v=2.3.5 Moneris
tagtracking.com/tag.js?v=2.3.6 Authorize.Net
tagtracking.com/tag.js?v=2.3.8 PayPal

sniffer ng password

Isa sa mga bentahe ng JavaScript sniffers na gumagana sa client side ng isang website ay ang versatility nito: ang malisyosong code na naka-embed sa isang website ay maaaring magnakaw ng anumang uri ng data, ito man ay impormasyon sa pagbabayad o isang login at password mula sa isang user account. Natuklasan ng mga espesyalista ng Group-IB ang isang sample ng isang sniffer na kabilang sa pamilya ng ReactGet, na idinisenyo upang magnakaw ng mga email address at password ng mga user ng site.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Intersection sa ImageID sniffer

Sa pagsusuri ng isa sa mga nahawaang tindahan, napag-alaman na dalawang beses na-infect ang website nito: bilang karagdagan sa malisyosong code ng ReactGet family sniffer, natagpuan ang code ng ImageID family sniffer. Ang overlap na ito ay maaaring maging katibayan na ang mga operator sa likod ng parehong mga sniffer ay gumagamit ng mga katulad na diskarte upang mag-inject ng malisyosong code.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Universal sniffer

Sa panahon ng pagsusuri ng isa sa mga domain name na nauugnay sa imprastraktura ng sniffer ng ReactGet, napag-alaman na ang parehong user ay nagrehistro ng tatlong iba pang mga domain name. Ang tatlong domain na ito ay ginaya ang mga domain ng totoong buhay na mga site at dati ay ginamit upang mag-host ng mga sniffer. Kapag sinusuri ang code ng tatlong lehitimong site, isang hindi kilalang sniffer ang nakita, at ipinakita ng karagdagang pagsusuri na ito ay isang pinahusay na bersyon ng ReactGet sniffer. Ang lahat ng naunang sinusubaybayang bersyon ng pamilyang ito ng mga sniffer ay naka-target sa isang sistema ng pagbabayad, iyon ay, isang espesyal na bersyon ng sniffer ay kinakailangan para sa bawat sistema ng pagbabayad. Gayunpaman, sa kasong ito, natuklasan ang isang unibersal na bersyon ng sniffer, na may kakayahang magnakaw ng impormasyon mula sa mga form na nauugnay sa 15 iba't ibang sistema ng pagbabayad at mga module ng mga site ng ecommerce para sa mga online na pagbabayad.

Kaya, sa simula ng trabaho, hinanap ng sniffer ang mga pangunahing field ng form na naglalaman ng personal na impormasyon ng biktima: buong pangalan, pisikal na address, numero ng telepono.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Pagkatapos ay hinanap ng sniffer ang higit sa 15 iba't ibang prefix na naaayon sa iba't ibang sistema ng pagbabayad at module para sa mga online na pagbabayad.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Susunod, ang personal na data at impormasyon ng pagbabayad ng biktima ay pinagsama-sama at ipinadala sa isang site na kinokontrol ng umaatake: sa partikular na kaso na ito, dalawang bersyon ng ReactGet universal sniffer ang nakitang matatagpuan sa dalawang magkaibang na-hack na site. Gayunpaman, ipinadala ng parehong bersyon ang ninakaw na data sa parehong na-hack na site. zoobashop.com.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Natukoy ng pagsusuri sa mga prefix na ginamit ng sniffer upang maghanap ng mga field na naglalaman ng impormasyon sa pagbabayad ng biktima na ang sample ng sniffer na ito ay naka-target sa mga sumusunod na sistema ng pagbabayad:

  • Authorize.Net
  • Verisign
  • Unang Data
  • USAePay
  • Guhit
  • PayPal
  • ANZ eGate
  • Braintree
  • Data Cash (MasterCard)
  • Mga Pagbabayad sa Realex
  • PsiGate
  • Mga Sistema sa Pagbabayad ng Puso

Anong mga tool ang ginagamit upang magnakaw ng impormasyon sa pagbabayad

Ang unang tool na natuklasan sa panahon ng pagsusuri ng mga imprastraktura ng mga umaatake ay nagsisilbing pag-obfuscate ng mga nakakahamak na script na responsable sa pagnanakaw ng mga bank card. Isang bash script na gumagamit ng CLI ng proyekto ang nakita sa isa sa mga host ng mga umaatake. javascript-obfuscator upang i-automate ang sniffer code obfuscation.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ang pangalawang natuklasang tool ay idinisenyo upang bumuo ng code na responsable para sa pag-load ng pangunahing sniffer. Ang tool na ito ay bumubuo ng isang JavaScript code na tumitingin kung ang user ay nasa pahina ng pag-checkout sa pamamagitan ng paghahanap sa kasalukuyang address ng user para sa mga string pagsisiyasat, kariton at iba pa, at kung positibo ang resulta, nilo-load ng code ang pangunahing sniffer mula sa server ng nanghihimasok. Upang itago ang nakakahamak na aktibidad, ang lahat ng mga linya, kabilang ang mga linya ng pagsubok para sa pagtukoy sa pahina ng pagbabayad, pati na rin ang isang link sa sniffer, ay naka-encode gamit ang base64.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Mga pag-atake sa phishing

Sa panahon ng pagsusuri sa imprastraktura ng network ng mga umaatake, napag-alaman na ang grupong kriminal ay madalas na gumagamit ng phishing upang makakuha ng access sa administrative panel ng target na online na tindahan. Ang mga umaatake ay nagrerehistro ng isang domain na mukhang isang tindahan ng domain at pagkatapos ay nag-deploy ng isang pekeng Magento admin login form dito. Kung matagumpay, ang mga umaatake ay magkakaroon ng access sa Magento CMS admin panel, na nagbibigay sa kanila ng kakayahang mag-edit ng mga bahagi ng site at magpatupad ng sniffer upang magnakaw ng data ng credit card.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Infrastructure

Π”ΠΎΠΌΠ΅Π½ Petsa ng pagkatuklas/pagpapakita
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
tagtracking.com 25.06.2018
adsapigate.com 12.07.2018
trusttracker.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
bargaljunkie.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

Pamilya ng G-Analytics

Ang pamilyang ito ng mga sniffer ay ginagamit upang magnakaw ng mga card ng customer mula sa mga online na tindahan. Ang pinakaunang domain name na ginamit ng grupo ay nairehistro noong Abril 2016, na maaaring magpahiwatig ng simula ng aktibidad ng grupo sa kalagitnaan ng 2016.

Sa kasalukuyang campaign, ang grupo ay gumagamit ng mga domain name na gumagaya sa totoong buhay na mga serbisyo gaya ng Google Analytics at jQuery, masking sniffer activity gamit ang mga lehitimong script at lehitimong domain name. Ang mga website na tumatakbo sa ilalim ng CMS Magento ay inatake.

Paano ipinapatupad ang G-Analytics sa code ng online na tindahan

Ang isang natatanging tampok ng pamilyang ito ay ang paggamit ng iba't ibang paraan ng pagnanakaw ng impormasyon sa pagbabayad ng user. Bilang karagdagan sa klasikong JavaScript injection sa client side ng site, ginamit din ng criminal group ang technique ng pag-inject ng code sa server side ng site, katulad ng mga PHP script na nagpoproseso ng input ng user. Ang diskarteng ito ay mapanganib dahil ginagawang mahirap para sa mga third-party na mananaliksik na makakita ng malisyosong code. Natuklasan ng mga espesyalista ng Group-IB ang isang bersyon ng sniffer na naka-embed sa PHP code ng site, gamit ang domain bilang gate dittm.org.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Natuklasan din ang isang maagang bersyon ng isang sniffer na gumagamit ng parehong domain upang mangolekta ng ninakaw na data. dittm.org, ngunit ang bersyon na ito ay inilaan na para sa pag-install sa panig ng kliyente ng online na tindahan.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Nang maglaon, binago ng grupo ang mga taktika nito at nagsimulang magbayad ng higit na pansin sa pagtatago ng malisyosong aktibidad at pagbabalatkayo.

Noong unang bahagi ng 2017, nagsimulang gamitin ng grupo ang domain jquery-js.comnagpapanggap bilang CDN para sa jQuery: nire-redirect ang user sa isang lehitimong site kapag pumupunta sa isang malisyosong site jquery.com.

At noong kalagitnaan ng 2018, pinagtibay ng grupo ang isang domain name g-analytics.com at nagsimulang itago ang aktibidad ng sniffer bilang isang lehitimong serbisyo ng Google Analytics.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Pagsusuri ng Bersyon

Sa panahon ng pagsusuri sa mga domain na ginamit upang mag-imbak ng sniffer code, napag-alaman na ang site ay may malaking bilang ng mga bersyon na naiiba sa pagkakaroon ng obfuscation, pati na rin ang pagkakaroon o kawalan ng hindi maabot na code na idinagdag sa file upang makagambala sa atensyon. at itago ang malisyosong code.

Kabuuan sa site jquery-js.com anim na bersyon ng mga sniffer ang natukoy. Ipinapadala ng mga sniffer na ito ang ninakaw na data sa isang address na matatagpuan sa parehong site kung saan mismo ang 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

Mamaya na domain g-analytics.com, na ginagamit ng grupo sa mga pag-atake mula noong kalagitnaan ng 2018, ay nagsisilbing repository para sa mas maraming sniffer. Sa kabuuan, natuklasan ang 16 na magkakaibang bersyon ng sniffer. Sa kasong ito, ang gate para sa pagpapadala ng ninakaw na data ay disguised bilang isang link sa isang imahe ng format. 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

Monetization ng ninakaw na data

Pinagkakakitaan ng grupong kriminal ang ninakaw na data sa pamamagitan ng pagbebenta ng mga card sa pamamagitan ng espesyal na nilikhang underground na tindahan na nagbibigay ng mga serbisyo sa mga carder. Ang pagsusuri sa mga domain na ginamit ng mga umaatake ay naging posible upang matukoy iyon google-analytics.cm ay nairehistro ng parehong user bilang domain cardz.vc. Domain cardz.vc ay tumutukoy sa Cardsurfs (Flysurfs), isang tindahan na nagbebenta ng mga nakaw na bank card, na naging popular sa panahon ng AlphaBay underground marketplace bilang isang tindahan na nagbebenta ng mga bank card na ninakaw gamit ang isang sniffer.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Pagsusuri sa domain analytic.ay, na matatagpuan sa parehong server bilang mga domain na ginagamit ng mga sniffer upang mangolekta ng ninakaw na data, natuklasan ng mga espesyalista ng Group-IB ang isang file na naglalaman ng mga log ng Cookie stealer, na, tila, sa kalaunan ay inabandona ng developer. Ang isa sa mga entry sa log ay naglalaman ng isang domain iozoz.com, na dating ginamit sa isa sa mga sniffer na aktibo noong 2016. Marahil, ang domain na ito ay dating ginamit ng isang umaatake upang mangolekta ng mga card na ninakaw gamit ang isang sniffer. Ang domain na ito ay nakarehistro sa isang email address [protektado ng email], na ginamit din para magrehistro ng mga domain cardz.su ΠΈ cardz.vcnauugnay sa Cardsurfs carding shop.

Batay sa data na nakuha, maaaring ipagpalagay na ang G-Analytics sniffer family at ang underground Cardsurfs bank card store ay pinamamahalaan ng parehong mga tao, at ang tindahan ay ginagamit upang magbenta ng mga bank card na ninakaw gamit ang isang sniffer.

Infrastructure

Π”ΠΎΠΌΠ΅Π½ Petsa ng pagkatuklas/pagpapakita
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
analitiko.sa 04.12.2018
google-analytics.to 06.12.2018
google-analytics.cm 28.12.2018
analytic.ay 28.12.2018
googlelc-analytics.cm 17.01.2019

Pamilya Illum

Ang Illum ay isang pamilya ng mga sniffer na ginagamit sa pag-atake sa mga online na tindahan na nagpapatakbo ng Magento CMS. Bilang karagdagan sa pagpapakilala ng malisyosong code, ginagamit din ng mga operator ng sniffer na ito ang pagpapakilala ng mga ganap na pekeng form ng pagbabayad na nagpapadala ng data sa mga gate na kinokontrol ng mga umaatake.

Kapag sinusuri ang imprastraktura ng network na ginagamit ng mga operator ng sniffer na ito, ang isang malaking bilang ng mga nakakahamak na script, pagsasamantala, mga pekeng form ng pagbabayad ay nabanggit, pati na rin ang isang koleksyon ng mga halimbawa na may mga nakakahamak na sniffer na kakumpitensya. Batay sa impormasyon tungkol sa mga petsa ng paglitaw ng mga domain name na ginamit ng grupo, maaaring ipagpalagay na ang pagsisimula ng kampanya ay nahuhulog sa katapusan ng 2016.

Paano ipinapatupad ang Illum sa code ng isang online na tindahan

Ang mga unang natuklasang bersyon ng sniffer ay direktang naka-embed sa code ng nakompromisong site. Ang ninakaw na data ay ipinadala sa cdn.illum[.]pw/records.php, ang gate ay na-encode gamit ang base64.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Nang maglaon, natuklasan ang isang nakabalot na bersyon ng sniffer gamit ang ibang gate - records.nstatistics[.]com/records.php.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ayon sa ulat Willem de Groot, ang parehong host ang ginamit sa sniffer na ipinatupad noong website ng tindahan, na pag-aari ng German political party na CSU.

Pagsusuri sa site ng pag-atake

Natuklasan at sinuri ng mga espesyalista ng Group-IB ang isang site na ginagamit ng kriminal na grupong ito upang mag-imbak ng mga tool at mangolekta ng ninakaw na impormasyon.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Kabilang sa mga tool na natagpuan sa server ng attacker ay natagpuan ang mga script at pagsasamantala para sa pagtaas ng pribilehiyo sa Linux OS: halimbawa, Linux Privilege Escalation Check Script, na binuo ni Mike Czumak, pati na rin ang isang pagsasamantala para sa CVE-2009-1185.

Gumamit ang mga attacker ng dalawang pagsasamantala nang direkta upang atakehin ang mga online na tindahan: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ may kakayahang mag-inject ng malisyosong code sa core_config_data sa pamamagitan ng pagsasamantala sa CVE-2016-4010, pangalawa sinasamantala ang isang kahinaan ng RCE sa Magento CMS plugins, na nagpapahintulot sa arbitrary na code na isagawa sa isang vulnerable na web server.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Gayundin, sa panahon ng pagsusuri ng server, natagpuan ang iba't ibang mga sample ng mga sniffer at pekeng mga form ng pagbabayad, na ginagamit ng mga umaatake upang mangolekta ng impormasyon sa pagbabayad mula sa mga na-hack na site. Gaya ng nakikita mo mula sa listahan sa ibaba, ang ilang mga script ay ginawa nang paisa-isa para sa bawat na-hack na site, habang ang isang pangkalahatang solusyon ay ginamit para sa ilang mga CMS at mga gateway ng pagbabayad. Halimbawa, mga script segapay_standard.js ΠΈ segapay_onpage.js idinisenyo upang mai-embed sa mga site gamit ang gateway ng pagbabayad ng Sage Pay.

Listahan ng mga script para sa iba't ibang gateway ng pagbabayad

Script Gateway ng Pagbabayad
sr.illum[.]pw/mjs_special/visiondirect.co.uk.js //request.payrightnow[.]cf/checkpayment.php
sr.illum[.]pw/mjs_special/topdirenshop.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_standard.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_standard.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=

Host pagbabayad ngayon[.]tk, ginamit bilang gate sa isang script payment_forminsite.js, ay natuklasan bilang subjectAltName sa ilang mga sertipiko na nauugnay sa serbisyo ng CloudFlare. Bilang karagdagan, ang script ay matatagpuan sa host evil.js. Sa paghusga sa pangalan ng script, maaaring ginamit ito bilang bahagi ng pagsasamantala sa CVE-2016-4010, salamat sa kung saan posibleng mag-inject ng malisyosong code sa footer ng isang site na nagpapatakbo ng Magento CMS. Ginamit ng script na ito ang host bilang gate request.requestnet[.]tk, gamit ang parehong certificate bilang host pagbabayad ngayon[.]tk.

Mga pekeng form ng pagbabayad

Ang figure sa ibaba ay nagpapakita ng isang halimbawa ng isang form para sa pagpasok ng data ng card. Ginamit ang form na ito upang makalusot sa isang website ng online store at magnakaw ng data ng card.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ang sumusunod na figure ay isang halimbawa ng isang pekeng paraan ng pagbabayad sa PayPal na ginamit ng mga umaatake upang makalusot sa mga site gamit ang paraan ng pagbabayad na ito.
Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Infrastructure

Π”ΠΎΠΌΠ΅Π½ Petsa ng pagkatuklas/pagpapakita
cdn.illum.pw 27/11/2016
records.nstatistics.com 06/09/2018
request.payrightnow.cf 25/05/2018
pagbabayad ngayon.tk 16/07/2017
linya ng pagbabayad.tk 01/03/2018
paymentpal.cf 04/09/2017
requestnet.tk 28/06/2017

Pamilya ng CoffeeMokko

Ang pamilya ng CoffeMokko ng mga sniffer na idinisenyo upang magnakaw ng mga bank card ng mga user ng online na tindahan ay ginamit mula pa noong Mayo 2017. Malamang, ang mga operator ng pamilyang ito ng mga sniffer ay ang Group 1 criminal group, na inilarawan ng mga eksperto sa RiskIQ noong 2016. Inatake ang mga website na nagpapatakbo ng tulad ng CMS gaya ng Magento, OpenCart, WordPress, osCommerce, Shopify.

Paano naka-embed ang CoffeMokko sa code ng isang online na tindahan

Ang mga operator ng pamilyang ito ay gumagawa ng mga natatanging sniffer para sa bawat impeksyon: ang sniffer file ay matatagpuan sa direktoryo SRC o js sa server ng umaatake. Ang pagpapatupad sa code ng site ay isinasagawa sa pamamagitan ng isang direktang link sa sniffer.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Pina-hard-code ng sniffer code ang mga pangalan ng mga field ng form kung saan mo gustong magnakaw ng data. Tinitingnan din ng sniffer kung ang user ay nasa checkout page sa pamamagitan ng pagsuri sa listahan ng mga keyword laban sa kasalukuyang address ng user.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ang ilang natuklasang bersyon ng sniffer ay na-obfuscate at naglalaman ng naka-encrypt na string na nag-imbak ng pangunahing hanay ng mga mapagkukunan: naglalaman ito ng mga pangalan ng mga field ng form para sa iba't ibang sistema ng pagbabayad, pati na rin ang address ng gate kung saan dapat ipadala ang ninakaw na data.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ang ninakaw na impormasyon sa pagbabayad ay ipinadala sa isang script sa server ng mga umaatake sa daan. /savePayment/index.php o /tr/index.php. Marahil, ang script na ito ay ginagamit upang magpadala ng data mula sa gate patungo sa pangunahing server, na pinagsasama-sama ang data mula sa lahat ng mga sniffer. Upang itago ang ipinadalang data, ang lahat ng impormasyon sa pagbabayad ng biktima ay naka-encode gamit base64, at pagkatapos ay nangyayari ang ilang pagpapalit ng character:

  • ang karakter na "e" ay pinalitan ng ":"
  • ang simbolo na "w" ay pinalitan ng "+"
  • ang karakter na "o" ay pinalitan ng "%"
  • ang karakter na "d" ay pinalitan ng "#"
  • ang karakter na "a" ay pinalitan ng "-"
  • ang simbolo na "7" ay pinalitan ng "^"
  • ang karakter na "h" ay pinalitan ng "_"
  • ang "T" na simbolo ay pinalitan ng "@"
  • ang character na "0" ay pinalitan ng "/"
  • ang karakter na "Y" ay pinalitan ng "*"

Bilang resulta ng mga pagpapalit ng character na naka-encode sa base64 hindi ma-decode ang data nang walang inverse transformation.

Ganito ang hitsura ng isang fragment ng sniffer code na hindi na-obfuscate:

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Pagsusuri ng imprastraktura

Sa mga unang kampanya, ang mga umaatake ay nagrehistro ng mga pangalan ng domain na katulad ng sa mga lehitimong online shopping site. Ang kanilang domain ay maaaring mag-iba mula sa lehitimong isa sa pamamagitan ng isang character o isa pang TLD. Ginamit ang mga rehistradong domain upang iimbak ang sniffer code, ang link kung saan naka-embed sa code ng tindahan.

Gumamit din ang grupong ito ng mga domain name na nakapagpapaalaala sa mga sikat na jQuery plugins (slickjs[.]org para sa mga site na gumagamit ng plugin slick.js), mga gateway ng pagbabayad (sagecdn[.]org para sa mga site na gumagamit ng sistema ng pagbabayad ng Sage Pay).

Nang maglaon, nagsimulang gumawa ang grupo ng mga domain na ang pangalan ay walang kinalaman sa domain ng tindahan o sa tema ng tindahan.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Ang bawat domain ay tumutugma sa site kung saan nilikha ang direktoryo /js o / src. Ang mga script ng sniffer ay inimbak sa direktoryong ito: isang sniffer para sa bawat bagong impeksyon. Ang sniffer ay ipinakilala sa code ng site sa pamamagitan ng isang direktang link, ngunit sa mga bihirang kaso, binago ng mga umaatake ang isa sa mga file ng site at nagdagdag ng malisyosong code dito.

Pagsusuri ng code

Unang Obfuscation Algorithm

Sa ilang sample ng sniffer ng pamilyang ito, na-obfuscate ang code at naglalaman ng naka-encrypt na data na kinakailangan para gumana ang sniffer: partikular, ang address ng sniffer ng gate, isang listahan ng mga field ng form ng pagbabayad, at sa ilang mga kaso, isang pekeng code ng form ng pagbabayad. Sa code sa loob ng function, ang mga mapagkukunan ay naka-encrypt gamit ang XOR sa pamamagitan ng susi na ipinasa bilang argumento sa parehong function.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Sa pamamagitan ng pag-decrypt sa string gamit ang kaukulang key, natatangi para sa bawat sample, makakakuha ka ng string na naglalaman ng lahat ng linya mula sa sniffer code na pinaghihiwalay ng isang delimiter character.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Pangalawang obfuscation algorithm

Sa mga susunod na sample ng pamilyang ito ng mga sniffer, ibang mekanismo ng obfuscation ang ginamit: sa kasong ito, na-encrypt ang data gamit ang self-written algorithm. Isang string na naglalaman ng naka-encrypt na data na kinakailangan para gumana ang sniffer bilang argumento sa decryption function.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Gamit ang browser console, maaari mong i-decrypt ang naka-encrypt na data at makakuha ng array na naglalaman ng mga mapagkukunan ng sniffer.

Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan

Mag-link sa maagang pag-atake ng MageCart

Sa pagsusuri ng isa sa mga domain na ginagamit ng grupo bilang gate para mangolekta ng ninakaw na data, napag-alaman na ang imprastraktura para sa pagnanakaw ng mga credit card ay na-deploy sa domain na ito, na kapareho ng ginamit ng Group 1, isa sa mga unang grupo, natuklasan Mga espesyalista sa RiskIQ.

Dalawang file ang nakita sa host ng CoffeMokko sniffer family:

  • mage.js β€” file na naglalaman ng Group 1 sniffer code na may gate address js-cdn.link
  • mag.php - PHP script na responsable para sa pagkolekta ng data na ninakaw ng sniffer

Ang mga nilalaman ng mage.js file Apat na JavaScript sniffer na naghihintay para sa iyo sa mga online na tindahan
Natukoy din na ang mga pinakaunang domain na ginamit ng grupo sa likod ng pamilya ng CoffeMokko sniffer ay nakarehistro noong Mayo 17, 2017:

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

Ang format ng mga domain name na ito ay pareho sa Group 1 domain name na ginamit noong 2016 attacks.

Batay sa mga natuklasang katotohanan, maaaring ipagpalagay na may koneksyon ang CoffeMokko sniffer operators at ang Group 1 criminal group. Marahil, ang mga operator ng CoffeMokko ay maaaring humiram ng mga tool at software upang magnakaw ng mga card mula sa kanilang mga nauna. Gayunpaman, mas malamang na ang kriminal na grupo sa likod ng paggamit ng CoffeMokko family sniffers ay ang parehong mga tao na nagsagawa ng mga pag-atake bilang bahagi ng mga aktibidad ng Group 1. Pagkatapos ng paglalathala ng unang ulat sa mga aktibidad ng kriminal na grupo, lahat ng kanilang na-block ang mga pangalan ng domain, at ang mga tool ay pinag-aralan nang detalyado at inilarawan. Napilitan ang grupo na magpahinga, ayusin ang kanilang mga panloob na tool at muling isulat ang sniffer code upang ipagpatuloy ang kanilang mga pag-atake at manatiling hindi napapansin.

Infrastructure

Π”ΠΎΠΌΠ΅Π½ Petsa ng pagkatuklas/pagpapakita
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
childrensplayclothing.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
replacemyremote.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.com 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
teacoffe.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
paypay.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
swapastore.com 15.09.2018
verywellfitness.com 15.09.2018
elegrina.com 18.11.2018
majorplus.com 19.11.2018
top5value.com 19.11.2018

Pinagmulan: www.habr.com

Magdagdag ng komento