Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Մեզնից գրեթե յուրաքանչյուրն օգտվում է առցանց խանութների ծառայություններից, ինչը նշանակում է, որ վաղ թե ուշ մենք վտանգի ենք ենթարկվում դառնալու JavaScript սնիֆերների զոհը. հատուկ ծածկագիր, որը հարձակվողները ներարկում են կայք՝ գողանալու բանկային քարտի տվյալները, հասցեները, օգտվողի անունները և գաղտնաբառերը: .

«British Airways»-ի կայքի և բջջային հավելվածի գրեթե 400 հազար օգտատերեր արդեն տուժել են sniffers-ից, ինչպես նաև սպորտային FILA հսկայի բրիտանական կայքի և ամերիկյան տոմսերի բաշխող Ticketmaster-ի այցելուները: PayPal, Chase Paymenttech, USAePay, Moneris - այս և շատ այլ վճարային համակարգեր վարակվել են:

Threat Intelligence Group-IB-ի վերլուծաբան Վիկտոր Օկորոկովը պատմում է այն մասին, թե ինչպես են սնիֆերները ներթափանցում կայքի կոդը և գողանում վճարման տեղեկատվությունը, ինչպես նաև, թե որ CRM-ներին են հարձակվում:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

«Թաքնված սպառնալիք».

Այնպես եղավ, որ երկար ժամանակ JS-sniffer-ները դուրս մնացին հակավիրուսային վերլուծաբանների տեսադաշտից, իսկ բանկերն ու վճարային համակարգերը դրանք լուրջ սպառնալիք չէին տեսնում: Եվ բացարձակապես ապարդյուն։ Group-IB փորձագետներ վերլուծված 2440 վարակված առցանց խանութներ, որոնց այցելուները՝ օրական մոտ 1,5 միլիոն մարդ, հայտնվել են փոխզիջման վտանգի տակ։ Զոհերի թվում կան ոչ միայն օգտատերեր, այլ նաև առցանց խանութներ, վճարային համակարգեր և բանկերը, որոնք թողարկել են վտանգված քարտեր։

Զեկուցել Group-IB-ը դարձավ մութ ցանցի մռայլների շուկայի, նրանց ենթակառուցվածքի և դրամայնացման ուղիների առաջին ուսումնասիրությունը՝ նրանց ստեղծողներին բերելով միլիոնավոր դոլարներ: Մենք հայտնաբերեցինք 38 հայտնաբերող ընտանիքներ, որոնցից միայն 12-ն էին նախկինում հայտնի հետազոտողներին:

Մանրամասն անդրադառնանք ուսումնասիրության ընթացքում ուսումնասիրված հոտառուների չորս ընտանիքներին։

ReactGet ընտանիք

ReactGet ընտանիքի Sniffer-ներն օգտագործվում են առցանց գնումների կայքերից բանկային քարտերի տվյալները գողանալու համար: Sniffer-ը կարող է աշխատել կայքում օգտագործվող մեծ թվով տարբեր վճարային համակարգերի հետ. մեկ պարամետրի արժեքը համապատասխանում է մեկ վճարային համակարգին, և sniffer-ի առանձին հայտնաբերված տարբերակները կարող են օգտագործվել հավատարմագրերը գողանալու, ինչպես նաև բանկային քարտի տվյալները գողանալու համար: միանգամից մի քանի վճարային համակարգերի վճարման ձևեր, ինչպես, այսպես կոչված, ունիվերսալ sniffer-ը: Պարզվել է, որ որոշ դեպքերում հարձակվողները ֆիշինգային հարձակումներ են իրականացնում առցանց խանութի ադմինիստրատորների վրա՝ կայքի ադմինիստրատիվ վահանակ մուտք գործելու համար։

Սնիֆերների այս ընտանիքը օգտագործող արշավը սկսվել է 2017 թվականի մայիսին: Հարձակման են ենթարկվել CMS և Magento, Bigcommerce, Shopify հարթակներն աշխատող կայքերը:

Ինչպես է ReactGet-ը ներդրված առցանց խանութի կոդում

Ի հավելումն «դասական» սցենարի ներարկմանը հղումով, ReactGet ընտանիքի sniffer օպերատորները օգտագործում են հատուկ տեխնիկա՝ օգտագործելով JavaScript կոդը, այն ստուգում է, թե արդյոք ընթացիկ հասցեն, որտեղ գտնվում է օգտատերը, համապատասխանում է որոշակի չափանիշներին: Վնասակար կոդը կաշխատի միայն այն դեպքում, եթե ընթացիկ URL-ը պարունակում է ենթատող Checkout կամ մեկ քայլ ստուգում, մեկ էջ/, դուրս/onepag, դրամարկղ/մեկ, ckout/մեկ. Այսպիսով, sniffer ծածկագիրը կկատարվի հենց այն պահին, երբ օգտատերը կանցնի վճարել գնումների համար և մուտքագրում է վճարման տեղեկատվությունը կայքի ձևաթղթում:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Այս sniffer-ը օգտագործում է ոչ ստանդարտ տեխնիկա: Տուժողի վճարումը և անձնական տվյալները հավաքվում են միասին՝ կոդավորված օգտագործելով base64- ը, և դրանից հետո ստացված տողը օգտագործվում է որպես պարամետր՝ վնասակար կայք հարցում ուղարկելու համար։ Ամենից հաճախ, դեպի դարպաս տանող ճանապարհը, օրինակ, ընդօրինակում է JavaScript ֆայլը resp.js, data.js և այլն, բայց օգտագործվում են նաև պատկերային ֆայլերի հղումներ, GIF и JPG. Առանձնահատկությունն այն է, որ սնիֆերը ստեղծում է 1-ից 1 պիքսել չափով պատկերային օբյեկտ և որպես պարամետր օգտագործում է նախկինում ստացված հղումը։ src Պատկերներ. Այսինքն՝ օգտատիրոջ համար տրաֆիկում նման հարցումը նման կլինի սովորական նկարի խնդրանքի։ Նմանատիպ տեխնիկա կիրառվել է «ImagID» սնիֆերների ընտանիքում: Բացի այդ, 1x1 պիքսել պատկերի տեխնիկան օգտագործվում է բազմաթիվ օրինական առցանց վերլուծական սկրիպտներում, ինչը կարող է նաև մոլորության մեջ գցել օգտվողին:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Տարբերակի վերլուծություն

ReactGet sniffer օպերատորների կողմից օգտագործվող ակտիվ տիրույթների վերլուծությունը բացահայտեց այս ընտանիքի sniffer-ների բազմաթիվ տարբեր տարբերակներ: Տարբերակները տարբերվում են խճճվածության առկայությամբ կամ բացակայությամբ, և ի լրումն, յուրաքանչյուր սնիֆեր նախատեսված է հատուկ վճարային համակարգի համար, որը մշակում է բանկային քարտով վճարումներ առցանց խանութների համար: Տարբերակի համարին համապատասխան պարամետրի արժեքը տեսակավորելուց հետո Group-IB-ի մասնագետները ստացան հասանելի սնիֆերների տատանումների ամբողջական ցանկը, և ըստ այն ձևի դաշտերի անուններով, որոնք յուրաքանչյուր խուզարկու փնտրում է էջի կոդը, նրանք որոշեցին վճարային համակարգերը: որ նկատողը թիրախ է դարձնում.

Սնիֆերների և դրանց համապատասխան վճարային համակարգերի ցանկը

Sniffer URL Վճարային համակարգ
reactjsapi.com/react.js Authorize.Net
ajaxstatic.com/api.js?v=2.1.1 Քարտապան
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 Արագ
ajaxstatic.com/api.js?v=2.1.5 Authorize.Net
ajaxstatic.com/api.js?v=2.1.6 Ադյեն
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 Մոներիս
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 SagePay
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 Շերտագիծ
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 տվյալների կանխիկացում
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 Մոներիս
billgetstatus.com/api.js?v=1.8 SagePay
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 Մոներիս
cloudodesc.com/gtm.js?v=2.6 SagePay
cloudodesc.com/gtm.js?v=2.7 SagePay
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 Ադյեն
cloudodesc.com/gtm.js?v=2.92 PsiGate
cloudodesc.com/gtm.js?v=2.93 Կիբեր Աղբյուր
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 SagePay
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 Կիբեր Աղբյուր
livegetpay.com/pay.js?v=2.1.7 Authorize.Net
livegetpay.com/pay.js?v=2.1.8 SagePay
livegetpay.com/pay.js?v=2.1.9 Realex
livegetpay.com/pay.js?v=2.2.0 Կիբեր Աղբյուր
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 Արագ
livegetpay.com/pay.js?v=2.2.7 SagePay
livegetpay.com/pay.js?v=2.2.8 SagePay
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 Առաջին 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 Մոներիս
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 Շերտագիծ
mxcounter.com/c.js?v=1.6 Authorize.Net
mxcounter.com/c.js?v=1.7 eWAY Արագ
mxcounter.com/c.js?v=1.8 SagePay
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 SagePay
mxcounter.com/c.js?v=2.31 SagePay
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 Շերտագիծ
mxcounter.com/click.js?v=1.6 Authorize.Net
mxcounter.com/click.js?v=1.7 eWAY Արագ
mxcounter.com/click.js?v=1.8 SagePay
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 SagePay
mxcounter.com/click.js?v=2.31 SagePay
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 SagePay
newrelicnet.com/api.js?v=4.5 SagePay
newrelicnet.com/api.js?v=4.6 Westpac PayWay
nr-public.com/api.js?v=2.0 վարձատրություն
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 Շերտագիծ
nr-public.com/api.js?v=2.4 Առաջին 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 Մոներիս
nr-public.com/api.js?v=2.9 Authorize.Net
nr-public.com/api.js?v=3.1 SagePay
nr-public.com/api.js?v=3.2 VeriSign
nr-public.com/api.js?v=3.3 Մոներիս
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 Մոներիս
nr-public.com/api.js?v=4.0.2 PayPal
nr-public.com/api.js?v=4.0.3 Ադյեն
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 Մոներիս
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 SagePay
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 վարձատրություն
ordercheckpays.com/api.js?v=2.29 Կիբեր Աղբյուր
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 SagePay
ordercheckpays.com/api.js?v=3.4 Authorize.Net
ordercheckpays.com/api.js?v=3.5 Շերտագիծ
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 SagePay
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 Կայծքար
reactjsapi.com/api.js?v=4.1.4 PayPal
reactjsapi.com/api.js?v=4.1.5 SagePay
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 Շերտագիծ
reactjsapi.com/api.js?v=4.1.9 Ճարպ Զեբրա
reactjsapi.com/api.js?v=4.2.0 SagePay
reactjsapi.com/api.js?v=4.2.1 Authorize.Net
reactjsapi.com/api.js?v=4.2.2 Առաջին Data Global Gateway
reactjsapi.com/api.js?v=4.2.3 Authorize.Net
reactjsapi.com/api.js?v=4.2.4 eWAY Արագ
reactjsapi.com/api.js?v=4.2.5 Ադյեն
reactjsapi.com/api.js?v=4.2.7 PayPal
reactjsapi.com/api.js?v=4.2.8 QuickBooks Merchant Services
reactjsapi.com/api.js?v=4.2.9 VeriSign
reactjsapi.com/api.js?v=4.2.91 SagePay
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 SagePay
reactjsapi.com/react.js Authorize.Net
sydneysalonsupplies.com/gtm.js eWAY Արագ
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 Կիբեր Աղբյուր
tagstracking.com/tag.js?v=2.1.7 Authorize.Net
tagstracking.com/tag.js?v=2.1.8 SagePay
tagstracking.com/tag.js?v=2.1.9 Realex
tagstracking.com/tag.js?v=2.2.0 Կիբեր Աղբյուր
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 Արագ
tagstracking.com/tag.js?v=2.2.7 SagePay
tagstracking.com/tag.js?v=2.2.8 SagePay
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 Առաջին Data Global Gateway
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 Մոներիս
tagstracking.com/tag.js?v=2.3.6 Authorize.Net
tagstracking.com/tag.js?v=2.3.8 PayPal

Գաղտնաբառ որոնող

JavaScript sniffer-ի առավելություններից մեկը, որն աշխատում է կայքի հաճախորդի կողմից, դրա բազմակողմանիությունն է. կայքի վրա ներկառուցված վնասակար ծածկագիրը կարող է գողանալ ցանկացած տեսակի տվյալ՝ լինի դա վճարման տվյալներ, թե մուտք և գաղտնաբառ օգտվողի հաշվից: Group-IB-ի մասնագետները հայտնաբերել են ReactGet ընտանիքին պատկանող սնիֆերի նմուշ, որը նախատեսված է կայքի օգտատերերի էլ.փոստի հասցեներն ու գաղտնաբառերը գողանալու համար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Խաչմերուկ ImageID սնիֆերի հետ

Վարակված խանութներից մեկի վերլուծության ժամանակ պարզվել է, որ նրա կայքը երկու անգամ վարակվել է՝ բացի ReactGet ընտանիքի sniffer-ի վնասակար կոդից, հայտնաբերվել է նաև ImageID ընտանիքի sniffer-ի կոդը։ Այս համընկնումը կարող է վկայել այն մասին, որ երկու sniffer-ների օգտագործման հետևում կանգնած օպերատորները օգտագործում են նմանատիպ տեխնիկա՝ վնասակար կոդ ներարկելու համար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Ունիվերսալ sniffer

ReactGet sniffer ենթակառուցվածքի հետ կապված դոմեններից մեկի վերլուծության ժամանակ պարզվել է, որ նույն օգտատերը գրանցել է երեք այլ դոմենային անուն։ Այս երեք տիրույթները ընդօրինակում էին իրական կայքերի տիրույթները և նախկինում օգտագործվում էին sniffers-ի համար: Երեք օրինական կայքերի կոդը վերլուծելիս հայտնաբերվել է անհայտ սնիֆեր, և հետագա վերլուծությունը ցույց է տվել, որ սա ReactGet sniffer-ի բարելավված տարբերակն է։ Սնիֆերների այս ընտանիքի նախկինում հետևված բոլոր տարբերակները ուղղված էին մեկ վճարային համակարգին, այսինքն՝ յուրաքանչյուր վճարային համակարգի համար պահանջվում էր սնիֆերի հատուկ տարբերակը: Այնուամենայնիվ, այս դեպքում հայտնաբերվեց sniffer-ի ունիվերսալ տարբերակը, որն ի վիճակի է գողանալ տեղեկատվություն 15 տարբեր վճարային համակարգերի և էլեկտրոնային առևտրի կայքերի մոդուլների հետ կապված առցանց վճարումների համար:

Այսպիսով, աշխատանքի սկզբում հոտառուն փնտրել է տուժողի անձնական տվյալները պարունակող հիմնական ձևի դաշտերը՝ լրիվ անուն, ֆիզիկական հասցե, հեռախոսահամար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Այնուհետև խնամակալը որոնել է ավելի քան 15 տարբեր նախածանցներ, որոնք համապատասխանում են տարբեր վճարային համակարգերին և մոդուլներին առցանց վճարումների համար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Այնուհետև զոհի անձնական տվյալները և վճարման տեղեկությունները հավաքվել են միասին և ուղարկվել հարձակվողի կողմից վերահսկվող կայք. այս կոնկրետ դեպքում հայտնաբերվել են ReactGet ունիվերսալ sniffer-ի երկու տարբերակներ, որոնք տեղակայված են կոտրված երկու տարբեր կայքերում: Սակայն երկու տարբերակներն էլ գողացված տվյալները ուղարկեցին նույն կոտրված կայքին։ zoobashop.com.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Սնիֆերի կողմից օգտագործվող նախածանցների վերլուծությունը տուժողի վճարման մասին տեղեկատվությունը պարունակող դաշտերը գտնելու համար պարզեց, որ սնուցիչի այս նմուշը ուղղված է հետևյալ վճարային համակարգերին.

  • Authorize.Net
  • VeriSign
  • Առաջին Data
  • USAePay
  • Շերտագիծ
  • PayPal
  • ANZ eGate
  • Braintree
  • Տվյալների կանխիկ (MasterCard)
  • Realex Payments
  • PsiGate
  • Heartland վճարային համակարգեր

Ինչ գործիքներ են օգտագործվում վճարման տեղեկատվությունը գողանալու համար

Հարձակվողների ենթակառուցվածքի վերլուծության ժամանակ հայտնաբերված առաջին գործիքը ծառայում է բանկային քարտերի գողության համար պատասխանատու վնասակար սկրիպտները մթագնելուն: Հարձակվողների հաղորդավարներից մեկի մոտ հայտնաբերվել է նախագծի CLI-ի օգտագործող bash սցենար: javascript-obfuscator ավտոմատացնել sniffer code obfuscation-ը:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Երկրորդ հայտնաբերված գործիքը նախատեսված է հիմնական սնիֆերի բեռնման համար պատասխանատու ծածկագիրը ստեղծելու համար: Այս գործիքը ստեղծում է JavaScript կոդ, որը ստուգում է, թե արդյոք օգտվողը գտնվում է վճարման էջում՝ փնտրելով օգտվողի ընթացիկ հասցեն տողերի համար: Checkout, սայլ և այլն, և եթե արդյունքը դրական է, ապա ծածկագիրը բեռնում է հիմնական sniffer-ը ներխուժողի սերվերից: Վնասակար գործողությունները թաքցնելու համար բոլոր տողերը, ներառյալ վճարման էջը որոշելու փորձնական գծերը, ինչպես նաև ախտահանողի հղումը, կոդավորված են՝ օգտագործելով base64- ը.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Ֆիշինգի հարձակումներ

Հարձակվողների ցանցային ենթակառուցվածքի վերլուծության ժամանակ պարզվել է, որ հանցախումբը հաճախ օգտագործում է ֆիշինգ՝ թիրախ առցանց խանութի վարչական վահանակ մուտք գործելու համար։ Հարձակվողները գրանցում են տիրույթ, որը նման է խանութի տիրույթին, այնուհետև դրա վրա տեղադրում են կեղծ Magento ադմինիստրատորի մուտքի ձև: Հաջողության դեպքում հարձակվողները մուտք կունենան Magento CMS ադմինիստրատորի վահանակ, որը նրանց հնարավորություն է տալիս խմբագրել կայքի բաղադրիչները և կիրառել sniffer՝ վարկային քարտի տվյալները գողանալու համար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Ենթակառուցվածքի

Դոմենների անունը Հայտնաբերման/հայտնման ամսաթիվը
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
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 ընտանիք

Սնիֆերների այս ընտանիքը օգտագործվում է առցանց խանութներից հաճախորդների քարտերը գողանալու համար: Խմբի կողմից օգտագործված հենց առաջին դոմենային անունը գրանցվել է 2016 թվականի ապրիլին, ինչը կարող է վկայել խմբի գործունեության սկիզբը 2016 թվականի կեսերին։

Ընթացիկ քարոզարշավում խումբն օգտագործում է տիրույթի անուններ, որոնք ընդօրինակում են իրական ծառայությունները, ինչպիսիք են Google Analytics-ը և jQuery-ն՝ դիմակավորելով sniffer-ի գործունեությունը օրինական սկրիպտներով և օրինական տեսք ունեցող տիրույթի անուններով: CMS Magento-ով աշխատող կայքերը հարձակման են ենթարկվել:

Ինչպես է G-Analytics-ն իրականացվում առցանց խանութի կոդում

Այս ընտանիքի տարբերակիչ առանձնահատկությունն օգտատերերի վճարման տեղեկատվությունը գողանալու տարբեր մեթոդների օգտագործումն է: Բացի JavaScript-ի դասական ներարկումից կայքի հաճախորդի կողմում, հանցավոր խումբը նաև օգտագործել է կայքի սերվերի կողմում կոդ ներարկելու տեխնիկան, մասնավորապես՝ PHP սկրիպտներ, որոնք մշակում են օգտվողի մուտքերը: Այս տեխնիկան վտանգավոր է նրանով, որ դժվարացնում է երրորդ կողմի հետազոտողների համար վնասակար կոդ հայտնաբերելը: Group-IB-ի մասնագետները հայտնաբերել են sniffer-ի տարբերակը, որը ներկառուցված է կայքի PHP կոդում՝ օգտագործելով տիրույթը որպես դարպաս: dittm.org.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Հայտնաբերվել է նաև sniffer-ի վաղ տարբերակը, որն օգտագործում է նույն տիրույթը գողացված տվյալները հավաքելու համար: dittm.org, սակայն այս տարբերակն արդեն նախատեսված է առցանց խանութի հաճախորդի կողմից տեղադրելու համար։

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Ավելի ուշ խումբը փոխեց իր մարտավարությունը և սկսեց ավելի մեծ ուշադրություն դարձնել չարամիտ գործողությունների թաքցմանը և քողարկմանը։

2017 թվականի սկզբին խումբը սկսեց օգտագործել տիրույթը jquery-js.comդիմակավորված որպես CDN jQuery-ի համար. օգտատիրոջը վերահղում է դեպի օրինական կայք, երբ գնում է վնասակար կայք jquery.com.

Իսկ 2018 թվականի կեսերին խումբն ընդունեց դոմեյն անուն g-analytics.com և սկսեց քողարկել sniffer-ի գործունեությունը որպես օրինական Google Analytics ծառայության:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Տարբերակի վերլուծություն

Sniffer կոդը պահելու համար օգտագործվող տիրույթների վերլուծության ժամանակ պարզվել է, որ կայքը ունի մեծ թվով տարբերակներ, որոնք տարբերվում են մշուշման առկայությամբ, ինչպես նաև ուշադրությունը շեղելու համար ֆայլում ավելացված անհասանելի կոդի առկայությամբ կամ բացակայությամբ։ և թաքցնել վնասակար ծածկագիրը:

Ընդհանուր կայքում jquery-js.com բացահայտվել է sniffers-ի վեց վարկած. Այս sniffers-ն ուղարկում է գողացված տվյալները մի հասցեով, որը գտնվում է նույն կայքում, որտեղ ինքը 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

Ավելի ուշ տիրույթ g-analytics.com, որն օգտագործվում է խմբի կողմից 2018 թվականի կեսերից ի վեր հարձակումների ժամանակ, ծառայում է որպես պահեստ ավելի շատ աչքառողների համար: Ընդհանուր առմամբ, հայտնաբերվեց 16 տարբեր վարկած, որը հայտնաբերեց sniffer-ը։ Այս դեպքում գողացված տվյալների ուղարկման դարպասը քողարկվել է որպես ձևաչափի պատկերի հղում 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

Գողացված տվյալների դրամայնացում

Հանցավոր խումբը դրամայնացնում է գողացված տվյալները՝ քարտեր վաճառելով հատուկ ստեղծված ընդհատակյա խանութի միջոցով, որը ծառայություններ է մատուցում քարտերներին։ Հարձակվողների կողմից օգտագործվող տիրույթների վերլուծությունը հնարավորություն է տվել պարզել դա google-analytics.cm գրանցվել է նույն օգտագործողի կողմից, ինչ տիրույթը cardz.vc. Դոմեն cardz.vc վերաբերում է Cardsurfs-ին (Flysurfs), գողացված բանկային քարտեր վաճառող խանութին, որը ժողովրդականություն է ձեռք բերել AlphaBay ստորգետնյա շուկայի ժամանակ՝ որպես խուզարկու միջոցով գողացված բանկային քարտեր վաճառող խանութ:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Դոմենի վերլուծություն վերլուծական.is, որը գտնվում է նույն սերվերի վրա, ինչ տիրույթները, որոնք օգտագործում են sniffers-ը՝ գողացված տվյալներ հավաքելու համար, Group-IB-ի մասնագետները գտել են Cookie-ի գողացող տեղեկամատյաններ պարունակող ֆայլ, որը, ըստ երևույթին, հետագայում լքվել է մշակողի կողմից: Գրանցամատյանում գրառումներից մեկը պարունակում էր տիրույթ iozoz.com, որը նախկինում կիրառվել է 2016թ. Ենթադրաբար, այս տիրույթը նախկինում օգտագործվել է հարձակվողի կողմից՝ sniffer-ի միջոցով գողացված քարտերը հավաքելու համար: Այս տիրույթը գրանցված է էլեկտրոնային հասցեով [էլեկտրոնային փոստով պաշտպանված], որն օգտագործվել է նաև տիրույթների գրանցման համար cardz.su и cardz.vcկապված Cardsurfs քարտերի խանութի հետ:

Ստացված տվյալների հիման վրա կարելի է ենթադրել, որ G-Analytics sniffer ընտանիքը և ստորգետնյա Cardsurfs բանկային քարտերի խանութը ղեկավարվում են նույն մարդկանց կողմից, և խանութն օգտագործվում է sniffer-ի միջոցով գողացված բանկային քարտեր վաճառելու համար:

Ենթակառուցվածքի

Դոմենների անունը Հայտնաբերման/հայտնման ամսաթիվը
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
վերլուծական.to 04.12.2018
google-analytics.to 06.12.2018
google-analytics.cm 28.12.2018
վերլուծական.is 28.12.2018
googlelc-analytics.cm 17.01.2019

Իլումի ընտանիք

Illum-ը սնիֆերների ընտանիք է, որն օգտագործվում է Magento CMS-ով աշխատող առցանց խանութների վրա հարձակվելու համար: Բացի վնասակար կոդի ներդրումից, այս sniffer-ի օպերատորները օգտագործում են նաև կեղծ վճարման լիարժեք ձևերի ներդրում, որոնք տվյալներ են ուղարկում հարձակվողների կողմից վերահսկվող դարպասներին:

Այս sniffer-ի օպերատորների կողմից օգտագործվող ցանցային ենթակառուցվածքը վերլուծելիս նշվել են մեծ թվով վնասակար սկրիպտներ, շահագործումներ, կեղծ վճարման ձևեր, ինչպես նաև չարամիտ sniffer մրցակիցների օրինակների հավաքածու: Ելնելով խմբի կողմից օգտագործվող դոմենային անունների հայտնվելու ամսաթվերի մասին տեղեկություններից՝ կարելի է ենթադրել, որ արշավի մեկնարկը ընկնում է 2016 թվականի վերջին։

Ինչպես է Illum-ը ներդրվում առցանց խանութի կոդում

Սնիֆերի առաջին հայտնաբերված տարբերակները տեղադրվել են անմիջապես վտանգված կայքի կոդի մեջ: Գողացված տվյալները ուղարկվել են cdn.illum[.]pw/records.php, դարպասը կոդավորվել է օգտագործելով base64- ը.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Ավելի ուշ հայտնաբերվեց sniffer-ի փաթեթավորված տարբերակը՝ օգտագործելով այլ դարպաս՝ records.nstatistics[.]com/records.php.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Ըստ զեկուցել Վիլեմ դե Գրոտը, նույն հաղորդավարը օգտագործվել է sniffer-ում, որն իրականացվել է խանութի կայքը, որը պատկանում է գերմանական CSU քաղաքական կուսակցությանը։

Հարձակման կայքի վերլուծություն

Group-IB-ի մասնագետները հայտնաբերել և վերլուծել են այս հանցավոր խմբի կողմից գործիքներ պահելու և գողացված տեղեկություններ հավաքելու կայքը:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Հարձակվողի սերվերում հայտնաբերված գործիքների շարքում հայտնաբերվել են Linux OS-ում արտոնությունների ընդլայնման սկրիպտներ և շահագործումներ. օրինակ, Linux Privilege Escalation Check Script-ը, որը մշակվել է Mike Czumak-ի կողմից, ինչպես նաև CVE-2009-1185-ի շահագործում:

Հարձակվողներն ուղղակիորեն օգտագործել են երկու շահագործում առցանց խանութների վրա հարձակվելու համար. первый ի վիճակի է ներարկել վնասակար կոդ core_config_data օգտագործելով CVE-2016-4010, երկրորդ օգտագործում է RCE խոցելիությունը Magento CMS պլագիններում՝ թույլ տալով կամայական կոդի գործարկումը խոցելի վեբ սերվերի վրա:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Բացի այդ, սերվերի վերլուծության ընթացքում հայտնաբերվել են sniffers-ի և կեղծ վճարման ձևերի տարբեր նմուշներ, որոնք հարձակվողները օգտագործում էին հաքերային կայքերից վճարային տեղեկատվություն հավաքելու համար: Ինչպես տեսնում եք ստորև բերված ցանկից, որոշ սկրիպտներ ստեղծվել են անհատապես յուրաքանչյուր կոտրված կայքի համար, մինչդեռ ունիվերսալ լուծում օգտագործվել է որոշակի CMS-ի և վճարային դարպասների համար: Օրինակ՝ սցենարներ segapay_standard.js и segapay_onpage.js նախագծված է Sage Pay վճարման դարպասը օգտագործող կայքերում տեղադրվելու համար:

Տարբեր վճարային դարպասների սցենարների ցանկ

Սցենար Վճարման դարպաս
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=

Հյուրընկալող վճարում այժմ[.]tk, օգտագործվում է որպես դարպաս սցենարի մեջ payment_forminsite.js, հայտնաբերվել է որպես subjectAltName CloudFlare ծառայության հետ կապված մի քանի վկայագրերում: Բացի այդ, սցենարը գտնվում էր հաղորդավարի վրա չար.js. Դատելով սցենարի անունից՝ այն կարող էր օգտագործվել որպես CVE-2016-4010 շահագործման մաս, որի շնորհիվ հնարավոր է վնասակար կոդ ներարկել Magento CMS-ով աշխատող կայքի ստորոտում։ Այս սցենարը օգտագործեց հաղորդավարը որպես դարպաս request.requestnet[.]tk, օգտագործելով նույն վկայականը, ինչ հյուրընկալողը վճարում այժմ[.]tk.

Կեղծ վճարման ձևեր

Ստորև բերված նկարը ցույց է տալիս քարտի տվյալների մուտքագրման ձևի օրինակ: Այս ձևն օգտագործվել է առցանց խանութի կայք ներթափանցելու և քարտի տվյալները գողանալու համար:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Հետևյալ նկարը կեղծ PayPal վճարման ձևի օրինակ է, որն օգտագործվել է հարձակվողների կողմից՝ վճարման այս եղանակով կայքեր ներթափանցելու համար:
Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Ենթակառուցվածքի

Դոմենների անունը Հայտնաբերման/հայտնման ամսաթիվը
cdn.illum.pw 27/11/2016
records.nstatistics.com 06/09/2018
request.payrightnow.cf 25/05/2018
paynow.tk 16/07/2017
pay-line.tk 01/03/2018
paypal.cf 04/09/2017
requestnet.tk 28/06/2017

CoffeeMokko ընտանիք

CoffeMokko սնիֆերների ընտանիքը, որը նախատեսված է առցանց խանութի օգտատերերի բանկային քարտերը գողանալու համար, օգտագործվել է առնվազն 2017 թվականի մայիսից: Ենթադրվում է, որ sniffers այս ընտանիքի օպերատորները Group 1 հանցավոր խումբն է, որը նկարագրել է RiskIQ-ի փորձագետները 2016թ. Հարձակման են ենթարկվել այնպիսի CMS կայքեր, ինչպիսիք են Magento, OpenCart, WordPress, osCommerce, Shopify:

Ինչպես է CoffeMokko-ն ներդրված առցանց խանութի կոդում

Այս ընտանիքի օպերատորները յուրաքանչյուր վարակի համար ստեղծում են եզակի sniffers. sniffer ֆայլը գտնվում է գրացուցակում: src կամ js հարձակվողի սերվերի վրա: Կայքի կոդում ներդրումն իրականացվում է sniffer-ի ուղիղ հղումով:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Sniffer կոդը կոշտ կոդավորում է այն ձևի դաշտերի անունները, որոնցից ցանկանում եք գողանալ տվյալները: Սնիֆերը նաև ստուգում է, թե արդյոք օգտատերը գտնվում է վճարման էջում՝ ստուգելով հիմնաբառերի ցանկը օգտատիրոջ ընթացիկ հասցեի համեմատ:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Սնիֆերի որոշ հայտնաբերված տարբերակներ մշուշված էին և պարունակում էին կոդավորված տող, որը պահում էր ռեսուրսների հիմնական զանգվածը. այն պարունակում էր տարբեր վճարային համակարգերի ձևի դաշտերի անուններ, ինչպես նաև այն դարպասի հասցեն, որին պետք է ուղարկվեն գողացված տվյալները:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Գողացված վճարման տեղեկատվությունը ճանապարհին ուղարկվել է հարձակվողների սերվերի սցենար: /savePayment/index.php կամ /tr/index.php. Ենթադրաբար, այս սկրիպտը օգտագործվում է դարպասից տվյալներ գլխավոր սերվեր ուղարկելու համար, որը համախմբում է բոլոր sniffers-ի տվյալները։ Փոխանցված տվյալները թաքցնելու համար տուժողի վճարման բոլոր տեղեկությունները կոդավորված են՝ օգտագործելով base64- ը, և այնուհետև տեղի են ունենում մի քանի կերպարների փոխարինումներ.

  • «e»-ն փոխարինվում է «:»-ով:
  • «w» նշանը փոխարինվում է «+»-ով.
  • «o» նիշը փոխարինվում է «%»-ով
  • «d» նիշը փոխարինվում է «#»-ով
  • «a»-ն փոխարինվում է «-»-ով.
  • «7» նշանը փոխարինվում է «^»-ով։
  • «h» նիշը փոխարինվում է «_»-ով
  • «T» նշանը փոխարինվում է «@»-ով.
  • «0» նիշը փոխարինվում է «/»-ով
  • «Y» նիշը փոխարինվում է «*»-ով.

Կոդավորված կերպարների փոխարինման արդյունքում base64- ը տվյալները չեն կարող վերծանվել առանց հակադարձ փոխակերպման:

Ահա թե ինչպես է երևում sniffer կոդի մի հատված, որը չի մշուշվել.

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Ենթակառուցվածքի վերլուծություն

Վաղ արշավների ժամանակ հարձակվողները գրանցել են տիրույթի անուններ, որոնք նման են օրինական առցանց գնումների կայքերին: Նրանց տիրույթը կարող է տարբերվել օրինական մեկ առ մեկ նիշից կամ մեկ այլ TLD-ից: Գրանցված տիրույթները օգտագործվել են sniffer կոդը պահելու համար, որի հղումը տեղադրված է խանութի կոդը:

Այս խումբը նաև օգտագործում էր դոմենային անուններ, որոնք հիշեցնում էին հանրաճանաչ jQuery պլագինները (slickjs[.]org պլագին օգտագործող կայքերի համար slick.js), վճարման դարպասներ (sagecdn[.]org Sage Pay վճարային համակարգ օգտագործող կայքերի համար):

Ավելի ուշ խումբը սկսեց ստեղծել դոմեններ, որոնց անունը ոչ մի կապ չուներ ոչ խանութի տիրույթի, ոչ էլ խանութի թեմայի հետ։

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Յուրաքանչյուր տիրույթ համապատասխանում էր այն կայքին, որտեղ ստեղծվել է գրացուցակը /js կամ /src. Sniffer-ի սկրիպտները պահվում էին այս գրացուցակում՝ մեկ sniffer յուրաքանչյուր նոր վարակի համար: Սնիֆերը մուտքագրվել է կայքի կոդի մեջ ուղիղ հղման միջոցով, սակայն հազվադեպ դեպքերում հարձակվողները փոփոխել են կայքի ֆայլերից մեկը և դրան ավելացրել վնասակար կոդ։

Կոդի վերլուծություն

Առաջին խաբեության ալգորիթմ

Այս ընտանիքի որոշ խնամակալների նմուշներում ծածկագիրը մշուշոտված էր և պարունակում էր գաղտնագրված տվյալներ, որոնք անհրաժեշտ էին սնիֆերի աշխատանքի համար. մասնավորապես՝ խափանողի դարպասի հասցեն, վճարման ձևի դաշտերի ցանկը և որոշ դեպքերում՝ վճարման ձևի կեղծ ծածկագիրը: Ֆունկցիայի ներսում գտնվող կոդի մեջ ռեսուրսները գաղտնագրված էին XOR- ը բանալին, որը փոխանցվել է որպես նույն ֆունկցիայի արգումենտ:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Վերծանելով տողը համապատասխան բանալիով, որը եզակի է յուրաքանչյուր նմուշի համար, դուք կարող եք ստանալ սնիֆեր կոդի բոլոր տողերը պարունակող տող, որն առանձնացված է սահմանազատող նիշով։

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Երկրորդ շաղախման ալգորիթմ

Սնիֆերների այս ընտանիքի ավելի ուշ նմուշներում օգտագործվել է խաբեության այլ մեխանիզմ. այս դեպքում տվյալները գաղտնագրվել են ինքնուրույն գրված ալգորիթմի միջոցով: Սնիֆերի աշխատանքի համար անհրաժեշտ գաղտնագրված տվյալներ պարունակող տողը փոխանցվել է որպես արգումենտ ապակոդավորման ֆունկցիային:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Օգտագործելով զննարկիչի վահանակը, դուք կարող եք վերծանել կոդավորված տվյալները և ստանալ sniffer ռեսուրսներ պարունակող զանգված:

Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում

Հղում MageCart-ի վաղ հարձակումներին

Խմբի կողմից որպես գողացված տվյալների հավաքագրման համար օգտագործվող տիրույթներից մեկի վերլուծության ժամանակ պարզվել է, որ այս տիրույթը տեղակայել է վարկային քարտեր գողանալու ենթակառուցվածք, որը նույնական է առաջին խմբերից մեկի՝ 1-ին խմբի օգտագործած ենթակառուցվածքին, հայտնաբերվել է RiskIQ մասնագետներ.

CoffeMokko sniffer ընտանիքի հյուրընկալողի վրա հայտնաբերվել է երկու ֆայլ.

  • mage.js — ֆայլ, որը պարունակում է 1-ին խմբի sniffer կոդը դարպասի հասցեով js-cdn.link
  • mag.php - PHP սկրիպտ, որը պատասխանատու է սնիֆերի կողմից գողացված տվյալների հավաքագրման համար

Mage.js ֆայլի բովանդակությունը Չորս JavaScript sniffers, որոնք սպասում են ձեզ առցանց խանութներում
Նաև որոշվել է, որ CoffeMokko խուզարկուների ընտանիքի հետևում գտնվող խմբի կողմից օգտագործված ամենավաղ տիրույթները գրանցվել են 17 թվականի մայիսի 2017-ին.

  • հղում-js[.]հղում
  • info-js[.]հղում
  • track-js[.]հղում
  • map-js[.]հղում
  • smart-js[.]հղում

Այս տիրույթի անունների ձևաչափը նույնն է, ինչ 1-ին խմբի տիրույթի անունները, որոնք օգտագործվել են 2016 թվականի հարձակումների ժամանակ:

Բացահայտված փաստերի հիման վրա կարելի է ենթադրել, որ կապ կա CoffeMokko սնիֆեր օպերատորների և Group 1 հանցավոր խմբի միջև։ Ենթադրաբար, CoffeMokko օպերատորները կարող են փոխառել գործիքներ և ծրագրեր՝ իրենց նախորդներից քարտեր գողանալու համար: Այնուամենայնիվ, ավելի հավանական է, որ CoffeMokko-ի ընտանիքի sniffers-ի կիրառման հետևում կանգնած հանցավոր խումբը նույն մարդիկ են, ովքեր հարձակումներն իրականացրել են 1-ին խմբի գործունեության շրջանակներում: Հանցավոր խմբի գործունեության մասին առաջին զեկույցի հրապարակումից հետո բոլոր նրանց դոմենների անուններն արգելափակվել են, իսկ գործիքները մանրամասն ուսումնասիրվել ու նկարագրվել են։ Խումբը ստիպված եղավ ընդմիջել, լավ կարգավորել իրենց ներքին գործիքները և վերաշարադրել sniffer ծածկագիրը, որպեսզի շարունակեն իրենց հարձակումները և մնան աննկատ:

Ենթակառուցվածքի

Դոմենների անունը Հայտնաբերման/հայտնման ամսաթիվը
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
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
autorizecdn.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
verywellfitness.com 15.09.2018
elegrina.com 18.11.2018
majsurplus.com 19.11.2018
top5value.com 19.11.2018

Source: www.habr.com

Добавить комментарий