Hampir semua dari kita menggunakan layanan toko online, yang berarti cepat atau lambat kita berisiko menjadi korban sniffer JavaScript - kode khusus yang diterapkan penyerang di situs web untuk mencuri data kartu bank, alamat, login, dan kata sandi pengguna. .
Hampir 400 pengguna situs web dan aplikasi seluler British Airways telah terpengaruh oleh sniffer, serta pengunjung situs web raksasa olahraga Inggris FILA dan distributor tiket Amerika Ticketmaster. PayPal, Chase Paymenttech, USAePay, Moneris - sistem ini dan banyak sistem pembayaran lainnya terinfeksi.
Analis Threat Intelligence Group-IB Viktor Okorokov berbicara tentang bagaimana sniffer menyusup ke kode situs web dan mencuri informasi pembayaran, serta CRM apa yang mereka serang.
"Ancaman tersembunyi"
Kebetulan untuk waktu yang lama, sniffer JS tidak terlihat oleh analis anti-virus, dan bank serta sistem pembayaran tidak melihatnya sebagai ancaman serius. Dan sia-sia belaka. Pakar Grup-IB
Mari kita membahas secara rinci empat keluarga sniffer yang dipelajari selama penelitian.
Keluarga ReactGet
Sniffer dari keluarga ReactGet digunakan untuk mencuri data kartu bank di situs belanja online. Sniffer dapat bekerja dengan sejumlah besar sistem pembayaran berbeda yang digunakan di situs: satu nilai parameter sesuai dengan satu sistem pembayaran, dan masing-masing versi sniffer yang terdeteksi dapat digunakan untuk mencuri kredensial, serta mencuri data kartu bank dari pembayaran bentuk beberapa sistem pembayaran sekaligus, seperti yang disebut universal sniffer. Ditemukan bahwa dalam beberapa kasus, penyerang melakukan serangan phishing terhadap administrator toko online untuk mendapatkan akses ke panel administratif situs.
Kampanye yang menggunakan kelompok sniffer ini dimulai pada Mei 2017; situs yang menjalankan platform CMS dan Magento, Bigcommerce, dan Shopify diserang.
Bagaimana ReactGet diimplementasikan ke dalam kode toko online
Selain implementasi skrip "klasik" melalui tautan, operator dari keluarga sniffer ReactGet menggunakan teknik khusus: menggunakan kode JavaScript, mereka memeriksa apakah alamat tempat pengguna saat ini berada memenuhi kriteria tertentu. Kode berbahaya hanya akan dieksekusi jika substring ada di URL saat ini pemeriksaan ΠΈΠ»ΠΈ pembayaran satu langkah, satu halaman/, keluar/onehalaman, checkout/satu, ckout/satu. Dengan demikian, kode sniffer akan dieksekusi tepat pada saat pengguna mulai membayar pembelian dan memasukkan informasi pembayaran ke dalam formulir di situs.
Sniffer ini menggunakan teknik non-standar. Pembayaran dan data pribadi korban dikumpulkan bersama dan dikodekan menggunakan base64, lalu string yang dihasilkan digunakan sebagai parameter untuk mengirim permintaan ke situs web penyerang. Paling sering, jalur menuju gerbang meniru file JavaScript, misalnya resp.js, data.js dan seterusnya, namun link ke file gambar juga digunakan, GIF ΠΈ JPG. Keunikannya adalah sniffer membuat objek gambar berukuran 1 kali 1 piksel dan menggunakan tautan yang diterima sebelumnya sebagai parameter src Gambar-gambar. Artinya, bagi pengguna, permintaan lalu lintas seperti itu akan terlihat seperti permintaan gambar biasa. Teknik serupa digunakan dalam keluarga sniffer ImageID. Selain itu, teknik penggunaan gambar 1 per 1 piksel digunakan di banyak skrip analisis online yang sah, yang juga dapat menyesatkan pengguna.
Analisis Versi
Analisis domain aktif yang digunakan oleh operator sniffer ReactGet mengungkapkan banyak versi berbeda dari keluarga sniffer ini. Versi berbeda dalam ada atau tidaknya kebingungan, dan sebagai tambahan, setiap sniffer dirancang untuk sistem pembayaran tertentu yang memproses pembayaran kartu bank untuk toko online. Setelah mengurutkan nilai parameter yang sesuai dengan nomor versi, spesialis Grup-IB menerima daftar lengkap variasi sniffer yang tersedia, dan berdasarkan nama bidang formulir yang dicari setiap sniffer di kode halaman, mereka mengidentifikasi sistem pembayaran yang dituju oleh sniffer.
Daftar sniffer dan sistem pembayaran terkait
URL pelacak | sistem pembayaran |
---|---|
|
Authorize.Net |
Simpan kartu | |
|
Authorize.Net |
Authorize.Net | |
|
eWAY Cepat |
Authorize.Net | |
Adyen | |
|
USAePay |
Authorize.Net | |
USAePay | |
|
Authorize.Net |
moneris | |
USAePay | |
PayPal | |
Sage Bayar | |
VeriSign | |
PayPal | |
Garis | |
|
realeks |
PayPal | |
Titik Tautan | |
PayPal | |
PayPal | |
DataCash | |
|
PayPal |
|
Authorize.Net |
|
Authorize.Net |
Authorize.Net | |
Authorize.Net | |
|
VeriSign |
|
Authorize.Net |
moneris | |
|
Sage Bayar |
|
USAePay |
|
Authorize.Net |
|
Authorize.Net |
|
Gerbang ANZ |
|
Authorize.Net |
|
moneris |
|
Sage Bayar |
Sage Bayar | |
|
Mengejar Teknologi Pembayaran |
|
Authorize.Net |
|
Adyen |
Gerbang Psi | |
Sumber Cyber | |
Gerbang ANZ | |
realeks | |
|
USAePay |
|
Authorize.Net |
|
Authorize.Net |
|
Gerbang ANZ |
|
PayPal |
|
PayPal |
realeks | |
|
Sage Bayar |
|
PayPal |
|
VeriSign |
Authorize.Net | |
|
VeriSign |
Authorize.Net | |
|
Gerbang ANZ |
PayPal | |
Sumber Cyber | |
|
Authorize.Net |
|
Sage Bayar |
realeks | |
|
Sumber Cyber |
PayPal | |
PayPal | |
|
PayPal |
|
VeriSign |
|
eWAY Cepat |
|
Sage Bayar |
Sage Bayar | |
|
VeriSign |
Authorize.Net | |
Authorize.Net | |
|
Gerbang Global Data Pertama |
Authorize.Net | |
Authorize.Net | |
moneris | |
|
Authorize.Net |
|
PayPal |
|
VeriSign |
|
USAePay |
USAePay | |
Authorize.Net | |
VeriSign | |
PayPal | |
|
Authorize.Net |
Garis | |
|
Authorize.Net |
eWAY Cepat | |
|
Sage Bayar |
Authorize.Net | |
|
Braintree |
|
Braintree |
|
PayPal |
|
Sage Bayar |
|
Sage Bayar |
|
Authorize.Net |
|
PayPal |
|
Authorize.Net |
VeriSign | |
|
PayPal |
|
Authorize.Net |
|
Garis |
|
Authorize.Net |
eWAY Cepat | |
Sage Bayar | |
|
Authorize.Net |
Braintree | |
|
PayPal |
|
Sage Bayar |
Sage Bayar | |
|
Authorize.Net |
PayPal | |
Authorize.Net | |
|
VeriSign |
|
Authorize.Net |
|
Authorize.Net |
|
Authorize.Net |
|
Authorize.Net |
|
Sage Bayar |
Sage Bayar | |
|
Pembayaran Westpac |
|
Pembayaran |
|
PayPal |
|
Authorize.Net |
|
Garis |
|
Gerbang Global Data Pertama |
|
Gerbang Psi |
Authorize.Net | |
Authorize.Net | |
|
moneris |
|
Authorize.Net |
Sage Bayar | |
|
VeriSign |
moneris | |
PayPal | |
|
Titik Tautan |
|
Pembayaran Westpac |
Authorize.Net | |
|
moneris |
|
PayPal |
Adyen | |
PayPal | |
Authorize.Net | |
USAePay | |
Biaya EBiz | |
|
Authorize.Net |
|
VeriSign |
VeriSign | |
Authorize.Net | |
|
PayPal |
|
moneris |
Authorize.Net | |
|
PayPal |
PayPal | |
Pembayaran Westpac | |
Authorize.Net | |
|
Authorize.Net |
Sage Bayar | |
|
VeriSign |
|
Authorize.Net |
|
PayPal |
|
Pembayaran |
Sumber Cyber | |
Aliran Pembayaran PayPal Pro | |
|
Authorize.Net |
|
Authorize.Net |
VeriSign | |
|
Authorize.Net |
|
Authorize.Net |
Sage Bayar | |
Authorize.Net | |
|
Garis |
|
Authorize.Net |
Authorize.Net | |
VeriSign | |
|
PayPal |
Authorize.Net | |
|
Authorize.Net |
Sage Bayar | |
|
Authorize.Net |
|
Authorize.Net |
|
PayPal |
|
Batu api |
|
PayPal |
Sage Bayar | |
VeriSign | |
|
Authorize.Net |
|
Authorize.Net |
|
Garis |
|
Zebra gemuk |
Sage Bayar | |
|
Authorize.Net |
Gerbang Global Data Pertama | |
|
Authorize.Net |
|
eWAY Cepat |
Adyen | |
|
PayPal |
Layanan Pedagang QuickBooks | |
VeriSign | |
|
Sage Bayar |
VeriSign | |
|
Authorize.Net |
|
Authorize.Net |
Sage Bayar | |
|
Authorize.Net |
|
eWAY Cepat |
Authorize.Net | |
|
Gerbang ANZ |
|
PayPal |
Sumber Cyber | |
|
Authorize.Net |
Sage Bayar | |
|
realeks |
Sumber Cyber | |
|
PayPal |
|
PayPal |
|
PayPal |
|
VeriSign |
eWAY Cepat | |
|
Sage Bayar |
|
Sage Bayar |
|
VeriSign |
Authorize.Net | |
|
Authorize.Net |
|
Gerbang Global Data Pertama |
Authorize.Net | |
Authorize.Net | |
|
moneris |
|
Authorize.Net |
|
PayPal |
Pelacak kata sandi
Salah satu keuntungan dari sniffer JavaScript yang bekerja di sisi klien situs web adalah keserbagunaannya: kode berbahaya yang tertanam di situs web dapat mencuri semua jenis data, baik itu data pembayaran atau login dan kata sandi akun pengguna. Spesialis Group-IB menemukan sampel sniffer milik keluarga ReactGet, yang dirancang untuk mencuri alamat email dan kata sandi pengguna situs.
Persimpangan dengan sniffer ImageID
Selama analisis salah satu toko yang terinfeksi, ditemukan bahwa situsnya terinfeksi dua kali: selain kode berbahaya dari sniffer keluarga ReactGet, kode sniffer keluarga ImageID juga terdeteksi. Tumpang tindih ini bisa menjadi bukti bahwa operator di belakang kedua sniffer menggunakan teknik serupa untuk memasukkan kode berbahaya.
Pengendus universal
Analisis terhadap salah satu nama domain yang terkait dengan infrastruktur sniffer ReactGet mengungkapkan bahwa pengguna yang sama telah mendaftarkan tiga nama domain lainnya. Ketiga domain ini meniru domain situs web di kehidupan nyata dan sebelumnya digunakan untuk menghosting sniffer. Saat menganalisis kode dari tiga situs yang sah, sniffer yang tidak dikenal terdeteksi, dan analisis lebih lanjut menunjukkan bahwa itu adalah versi perbaikan dari sniffer ReactGet. Semua versi keluarga sniffer yang dipantau sebelumnya ditujukan untuk satu sistem pembayaran, yaitu, setiap sistem pembayaran memerlukan versi sniffer khusus. Namun, dalam kasus ini, ditemukan versi universal dari sniffer yang mampu mencuri informasi dari formulir yang terkait dengan 15 sistem pembayaran berbeda dan modul situs e-niaga untuk melakukan pembayaran online.
Jadi, pada awal pekerjaannya, sniffer mencari kolom formulir dasar yang berisi informasi pribadi korban: nama lengkap, alamat fisik, nomor telepon.
Sniffer kemudian mencari lebih dari 15 awalan berbeda yang sesuai dengan sistem pembayaran dan modul pembayaran online yang berbeda.
Selanjutnya, data pribadi korban dan informasi pembayaran dikumpulkan bersama dan dikirim ke situs yang dikendalikan oleh penyerang: dalam kasus khusus ini, dua versi sniffer ReactGet universal ditemukan, terletak di dua situs berbeda yang diretas. Namun, kedua versi mengirimkan data curian ke situs yang diretas sama zoobashop.com.
Analisis awalan yang digunakan sniffer untuk mencari bidang yang berisi informasi pembayaran korban memungkinkan kami menentukan bahwa sampel sniffer ini ditujukan untuk sistem pembayaran berikut:
- Authorize.Net
- VeriSign
- Data Pertama
- USAePay
- Garis
- PayPal
- Gerbang ANZ
- Braintree
- DataCash (MasterCard)
- Pembayaran Realex
- Gerbang Psi
- Sistem Pembayaran Heartland
Alat apa yang digunakan untuk mencuri informasi pembayaran?
Alat pertama, yang ditemukan selama analisis infrastruktur penyerang, digunakan untuk mengaburkan skrip jahat yang bertanggung jawab atas pencurian kartu bank. Skrip bash yang menggunakan CLI proyek ditemukan di salah satu host penyerang
Alat kedua yang ditemukan dirancang untuk menghasilkan kode yang bertanggung jawab untuk memuat sniffer utama. Alat ini menghasilkan kode JavaScript yang memeriksa apakah pengguna berada di halaman pembayaran dengan mencari string di alamat pengguna saat ini pemeriksaan, gerobak dan seterusnya, dan jika hasilnya positif, maka kode tersebut memuat sniffer utama dari server penyerang. Untuk menyembunyikan aktivitas jahat, semua baris, termasuk baris pengujian untuk menentukan halaman pembayaran, serta tautan ke sniffer, dikodekan menggunakan base64.
Serangan phishing
Analisis terhadap infrastruktur jaringan penyerang mengungkapkan bahwa kelompok kriminal sering menggunakan phishing untuk mendapatkan akses ke panel administratif toko online target. Penyerang mendaftarkan domain yang secara visual mirip dengan domain toko, lalu menyebarkan formulir login panel administrasi Magento palsu di dalamnya. Jika berhasil, penyerang akan mendapatkan akses ke panel administratif CMS Magento, yang memberi mereka kesempatan untuk mengedit komponen situs web dan menerapkan sniffer untuk mencuri data kartu kredit.
Infrastruktur
ΠΠΎΠΌΠ΅Π½ | Tanggal penemuan/penampakan |
---|---|
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 |
reaksijsapi.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 |
kepercayaan-tracker.com | 15.07.2018 |
fbstatspartner.com | 02.10.2018 |
billgetstatus.com | 12.10.2018 |
www.aldenmlilhouse.com | 20.10.2018 |
baletbeautlful.com | 20.10.2018 |
bargalnjunkie.com | 20.10.2018 |
payselector.com | 21.10.2018 |
tagmediaget.com | 02.11.2018 |
hs-pembayaran.com | 16.11.2018 |
pesanancheckpays.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-publik.com | 03.01.2019 |
cloudodesc.com | 04.01.2019 |
ajaxstatic.com | 11.01.2019 |
livecheckpay.com | 21.01.2019 |
asianfoodgracer.com | 25.01.2019 |
Keluarga G-Analytics
Keluarga sniffer ini digunakan untuk mencuri kartu pelanggan dari toko online. Nama domain pertama yang digunakan oleh grup tersebut didaftarkan pada bulan April 2016, yang mungkin menunjukkan bahwa grup tersebut memulai aktivitasnya pada pertengahan tahun 2016.
Dalam kampanye saat ini, grup tersebut menggunakan nama domain yang meniru layanan di kehidupan nyata, seperti Google Analytics dan jQuery, menutupi aktivitas sniffer dengan skrip sah dan nama domain serupa dengan yang sah. Situs yang menjalankan CMS Magento diserang.
Bagaimana G-Analytics diimplementasikan ke dalam kode toko online
Ciri khas keluarga ini adalah penggunaan berbagai metode untuk mencuri informasi pembayaran pengguna. Selain menyuntikkan kode JavaScript klasik ke sisi klien situs, kelompok kriminal juga menggunakan teknik injeksi kode ke sisi server situs, yaitu skrip PHP yang memproses data yang dimasukkan pengguna. Teknik ini berbahaya karena menyulitkan peneliti pihak ketiga untuk mendeteksi kode berbahaya. Spesialis Group-IB menemukan versi sniffer yang tertanam dalam kode PHP situs, menggunakan domain sebagai gerbang dittm.org.
Versi awal dari sniffer juga ditemukan yang menggunakan domain yang sama untuk mengumpulkan data yang dicuri dittm.org, tetapi versi ini ditujukan untuk instalasi di sisi klien toko online.
Kelompok ini kemudian mengubah taktiknya dan mulai lebih fokus menyembunyikan aktivitas jahat dan kamuflase.
Pada awal tahun 2017, grup tersebut mulai menggunakan domain tersebut jquery-js.com, menyamar sebagai CDN untuk jQuery: saat membuka situs penyerang, pengguna dialihkan ke situs yang sah jquery.com.
Dan pada pertengahan tahun 2018, grup tersebut mengadopsi nama domain tersebut g-analytics.com dan mulai menyamarkan aktivitas sniffer sebagai layanan Google Analytics yang sah.
Analisis Versi
Selama analisis domain yang digunakan untuk menyimpan kode sniffer, ditemukan bahwa situs tersebut berisi sejumlah besar versi, yang berbeda dengan adanya kebingungan, serta ada tidaknya kode yang tidak dapat dijangkau yang ditambahkan ke file untuk mengalihkan perhatian. dan menyembunyikan kode berbahaya.
Total di situs jquery-js.com Enam versi sniffer diidentifikasi. Sniffer ini mengirimkan data yang dicuri ke alamat yang terletak di situs web yang sama dengan sniffer itu sendiri: 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
Domain selanjutnya g-analytics.com, yang digunakan oleh kelompok tersebut dalam serangan sejak pertengahan tahun 2018, berfungsi sebagai gudang bagi lebih banyak sniffer. Secara total, 16 versi sniffer berbeda ditemukan. Dalam kasus ini, gerbang pengiriman data yang dicuri disamarkan sebagai tautan ke format gambar 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
Monetisasi data yang dicuri
Kelompok kriminal memonetisasi data yang dicuri dengan menjual kartu melalui toko bawah tanah yang dibuat khusus yang menyediakan layanan kepada carder. Analisis terhadap domain yang digunakan oleh penyerang memungkinkan kami menentukan hal tersebut google-analytics.cm didaftarkan oleh pengguna yang sama dengan domain cardz.vc. Domain cardz.vc mengacu pada toko yang menjual kartu bank curian Cardsurfs (Flysurfs), yang mendapatkan popularitas pada masa aktivitas platform perdagangan bawah tanah AlphaBay sebagai toko yang menjual kartu bank yang dicuri menggunakan sniffer.
Menganalisis domain analitis.is, terletak di server yang sama dengan domain yang digunakan oleh sniffer untuk mengumpulkan data yang dicuri, spesialis Group-IB menemukan file yang berisi log pencuri cookie, yang tampaknya kemudian ditinggalkan oleh pengembang. Salah satu entri dalam log berisi domain iozoz.com, yang sebelumnya digunakan di salah satu sniffer yang aktif pada tahun 2016. Agaknya, domain ini sebelumnya digunakan oleh penyerang untuk mengumpulkan kartu yang dicuri menggunakan sniffer. Domain ini telah didaftarkan ke alamat email [email dilindungi], yang juga digunakan untuk mendaftarkan domain cardz.su ΠΈ cardz.vc, terkait dengan toko carding Cardsurfs.
Berdasarkan data yang diperoleh, dapat diasumsikan bahwa keluarga sniffer G-Analytics dan toko bawah tanah yang menjual kartu bank Cardsurfs dikelola oleh orang yang sama, dan toko tersebut digunakan untuk menjual kartu bank yang dicuri menggunakan sniffer.
Infrastruktur
ΠΠΎΠΌΠ΅Π½ | Tanggal penemuan/penampakan |
---|---|
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 |
analitis.ke | 04.12.2018 |
google-analytics.to | 06.12.2018 |
google-analytics.cm | 28.12.2018 |
analitis.is | 28.12.2018 |
googlc-analytics.cm | 17.01.2019 |
keluarga Ilum
Illum adalah keluarga sniffer yang digunakan untuk menyerang toko online yang menjalankan CMS Magento. Selain memasukkan kode berbahaya, operator sniffer ini juga menggunakan formulir pembayaran palsu lengkap yang mengirimkan data ke gerbang yang dikendalikan oleh penyerang.
Saat menganalisis infrastruktur jaringan yang digunakan oleh operator sniffer ini, sejumlah besar skrip berbahaya, eksploitasi, formulir pembayaran palsu, serta kumpulan contoh sniffer jahat dari pesaing dicatat. Berdasarkan informasi tanggal kemunculan nama domain yang digunakan grup tersebut, dapat diasumsikan bahwa kampanye dimulai pada akhir tahun 2016.
Bagaimana Illum diimplementasikan ke dalam kode toko online
Versi pertama dari sniffer yang ditemukan ditanamkan langsung ke dalam kode situs yang disusupi. Data yang dicuri telah dikirim ke cdn.illum[.]pw/records.php, gerbang itu dikodekan menggunakan base64.
Kemudian, versi paket dari sniffer ditemukan menggunakan gerbang yang berbeda - catatan.nstatistics[.]com/records.php.
Menurut
Analisis situs web penyerang
Spesialis Group-IB menemukan dan menganalisis situs web yang digunakan oleh kelompok kriminal ini untuk menyimpan alat dan mengumpulkan informasi curian.
Di antara alat yang ditemukan di server penyerang adalah skrip dan eksploitasi untuk meningkatkan hak istimewa di OS Linux: misalnya, Skrip Pemeriksaan Eskalasi Hak Istimewa Linux yang dikembangkan oleh Mike Czumak, serta eksploitasi untuk CVE-2009-1185.
Para penyerang menggunakan dua eksploitasi secara langsung untuk menyerang toko online:
Selain itu, selama analisis server, berbagai sampel sniffer dan formulir pembayaran palsu ditemukan, yang digunakan oleh penyerang untuk mengumpulkan informasi pembayaran dari situs yang diretas. Seperti yang Anda lihat dari daftar di bawah, beberapa skrip dibuat secara individual untuk setiap situs yang diretas, sementara solusi universal digunakan untuk CMS dan gateway pembayaran tertentu. Misalnya saja skrip segapay_standart.js ΠΈ segapay_onpage.js dirancang untuk diterapkan di situs yang menggunakan gateway pembayaran Sage Pay.
Daftar skrip untuk berbagai gateway pembayaran
Skrip | Gerbang pembayaran |
---|---|
|
//request.payrightnow[.]cf/checkpembayaran.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/checkpembayaran.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/checkpembayaran.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//request.payrightnow[.]cf/alldata.php |
//request.payrightnow[.]cf/checkpembayaran.php | |
|
//request.payrightnow[.]cf/checkpembayaran.php |
|
//request.payrightnow[.]cf/alldata.php |
|
//cdn.illum[.]pw/records.php |
|
//cdn.illum[.]pw/records.php |
|
//request.payrightnow[.]cf/checkpembayaran.php |
|
//cdn.illum[.]pw/records.php |
//request.payrightnow[.]cf/checkpembayaran.php | |
|
//cdn.illum[.]pw/records.php |
//bayar sekarang[.]cf/?pembayaran= | |
|
//bayar sekarang[.]cf/?pembayaran= |
|
//pembayaransekarang[.]tk/?pembayaran= |
Tuan rumah pembayaran sekarang[.]tk, digunakan sebagai gerbang dalam skrip pembayaran_forminsite.js, ditemukan sebagai subjekAltName di beberapa sertifikat yang terkait dengan layanan CloudFlare. Selain itu, host berisi skrip jahat.js. Dilihat dari nama skripnya, skrip ini dapat digunakan sebagai bagian dari eksploitasi CVE-2016-4010, yang memungkinkan untuk memasukkan kode berbahaya ke footer situs yang menjalankan CMS Magento. Tuan rumah menggunakan skrip ini sebagai gerbang permintaan.requestnet[.]tkmenggunakan sertifikat yang sama dengan host pembayaran sekarang[.]tk.
Formulir pembayaran palsu
Gambar di bawah ini menunjukkan contoh form pemasukan data kartu. Formulir ini digunakan untuk menyusup ke toko online dan mencuri data kartu.
Gambar berikut menunjukkan contoh formulir pembayaran PayPal palsu yang digunakan penyerang untuk menyusup ke situs dengan metode pembayaran ini.
Infrastruktur
ΠΠΎΠΌΠ΅Π½ | Tanggal penemuan/penampakan |
---|---|
cdn.illum.pw | 27/11/2016 |
catatan.nstatistics.com | 06/09/2018 |
request.payrightnow.cf | 25/05/2018 |
pembayaran sekarang.tk | 16/07/2017 |
jalur pembayaran.tk | 01/03/2018 |
pembayaranpal.cf | 04/09/2017 |
requestnet.tk | 28/06/2017 |
Keluarga KopiMokko
Keluarga sniffer CoffeMokko, yang dirancang untuk mencuri kartu bank dari pengguna toko online, telah digunakan setidaknya sejak Mei 2017. Agaknya, operator dari keluarga sniffer ini adalah kelompok kriminal Grup 1, yang dijelaskan oleh spesialis RiskIQ pada tahun 2016. Situs yang menjalankan CMS seperti Magento, OpenCart, WordPress, osCommerce, dan Shopify diserang.
Bagaimana CoffeMokko diimplementasikan ke dalam kode toko online
Operator keluarga ini membuat sniffer unik untuk setiap infeksi: file sniffer terletak di direktori src ΠΈΠ»ΠΈ js di server penyerang. Penggabungan ke dalam kode situs dilakukan melalui tautan langsung ke sniffer.
Kode sniffer melakukan hardcode pada nama kolom formulir yang datanya perlu dicuri. Sniffer juga memeriksa apakah pengguna berada di halaman pembayaran dengan memeriksa daftar kata kunci dengan alamat pengguna saat ini.
Beberapa versi sniffer yang ditemukan dikaburkan dan berisi string terenkripsi yang menyimpan rangkaian sumber daya utama: berisi nama bidang formulir untuk berbagai sistem pembayaran, serta alamat gerbang tujuan pengiriman data yang dicuri.
Informasi pembayaran yang dicuri dikirim ke skrip di server penyerang sepanjang perjalanan /savePayment/index.php atau /tr/index.php. Agaknya skrip ini digunakan untuk mengirim data dari gerbang ke server utama, yang menggabungkan data dari semua sniffer. Untuk menyembunyikan data yang dikirimkan, semua informasi pembayaran korban dienkripsi menggunakan base64, dan kemudian terjadi beberapa pergantian karakter:
- karakter "e" diganti dengan ":"
- simbol "w" diganti dengan "+"
- karakter "o" diganti dengan "%"
- karakter "d" diganti dengan "#"
- karakter "a" diganti dengan "-"
- simbol "7" diganti dengan "^"
- karakter "h" diganti dengan "_"
- simbol "T" diganti dengan "@"
- karakter "0" diganti dengan "/"
- karakter "Y" diganti dengan "*"
Sebagai hasil dari substitusi karakter yang dikodekan menggunakan base64 Data tidak dapat didekodekan tanpa konversi terbalik.
Ini penampakan potongan kode sniffer yang belum dikaburkan:
Analisis Infrastruktur
Pada kampanye awal, penyerang mendaftarkan nama domain yang mirip dengan situs belanja online yang sah. Domain mereka dapat berbeda dari yang sah satu per satu simbol atau TLD lainnya. Domain terdaftar digunakan untuk menyimpan kode sniffer, tautan yang tertanam dalam kode penyimpanan.
Grup ini juga menggunakan nama domain yang mengingatkan pada plugin jQuery populer (slickjs[.]org untuk situs yang menggunakan plugin licin.js), gateway pembayaran (sagecdn[.]org untuk situs yang menggunakan sistem pembayaran Sage Pay).
Kemudian, kelompok tersebut mulai membuat domain yang namanya tidak ada hubungannya dengan domain toko atau tema toko.
Setiap domain berhubungan dengan situs tempat direktori tersebut dibuat /js ΠΈΠ»ΠΈ / src. Skrip sniffer disimpan di direktori ini: satu sniffer untuk setiap infeksi baru. Sniffer tertanam dalam kode situs web melalui tautan langsung, namun dalam kasus yang jarang terjadi, penyerang memodifikasi salah satu file situs web dan menambahkan kode berbahaya ke dalamnya.
Analisis Kode
Algoritma kebingungan pertama
Dalam beberapa sampel sniffer keluarga ini yang ditemukan, kodenya dikaburkan dan berisi data terenkripsi yang diperlukan agar sniffer dapat bekerja: khususnya, alamat gerbang sniffer, daftar kolom formulir pembayaran, dan dalam beberapa kasus, kode palsu formulir pembayaran. Dalam kode di dalam fungsi, sumber daya dienkripsi menggunakan XOR dengan kunci yang diteruskan sebagai argumen ke fungsi yang sama.
Dengan mendekripsi string dengan kunci unik yang sesuai untuk setiap sampel, Anda bisa mendapatkan string yang berisi semua string dari kode sniffer yang dipisahkan oleh karakter pemisah.
Algoritma kebingungan kedua
Dalam sampel sniffer selanjutnya dari keluarga ini, mekanisme kebingungan yang berbeda digunakan: dalam hal ini, data dienkripsi menggunakan algoritma yang ditulis sendiri. Sebuah string yang berisi data terenkripsi yang diperlukan agar sniffer dapat beroperasi diteruskan sebagai argumen ke fungsi dekripsi.
Dengan menggunakan konsol browser, Anda dapat mendekripsi data terenkripsi dan mendapatkan array yang berisi sumber daya sniffer.
Koneksi ke serangan awal MageCart
Selama analisis salah satu domain yang digunakan oleh grup sebagai gerbang untuk mengumpulkan data yang dicuri, ditemukan bahwa domain ini menghosting infrastruktur untuk pencurian kartu kredit, identik dengan yang digunakan oleh Grup 1, salah satu grup pertama,
Dua file ditemukan di host keluarga sniffer CoffeMokko:
- mage.js β file yang berisi kode sniffer Grup 1 dengan alamat gerbang js-cdn.link
- mag.php β Skrip PHP bertanggung jawab mengumpulkan data yang dicuri oleh sniffer
Isi file mage.js
Ditentukan juga bahwa domain paling awal yang digunakan oleh kelompok di balik keluarga sniffer CoffeMokko telah didaftarkan pada 17 Mei 2017:
- tautan-js[.]tautan
- info-js[.]tautan
- track-js[.]tautan
- tautan peta-js[.]
- tautan pintar-js[.]
Format nama domain ini cocok dengan nama domain Grup 1 yang digunakan dalam serangan tahun 2016.
Berdasarkan fakta yang ditemukan, dapat diasumsikan adanya keterkaitan antara operator sniffer CoffeMokko dengan kelompok kriminal Grup 1. Agaknya, operator CoffeMokko meminjam alat dan perangkat lunak dari pendahulunya untuk mencuri kartu. Namun, kemungkinan besar kelompok kriminal di balik penggunaan keluarga sniffer CoffeMokko adalah orang yang sama yang melakukan serangan Grup 1. Setelah publikasi laporan pertama tentang aktivitas kelompok kriminal tersebut, semua nama domain mereka adalah diblokir dan alat-alatnya dipelajari secara rinci dan dijelaskan. Kelompok ini terpaksa beristirahat, menyempurnakan alat internalnya, dan menulis ulang kode sniffer agar dapat melanjutkan serangannya dan tetap tidak terdeteksi.
Infrastruktur
ΠΠΎΠΌΠ΅Π½ | Tanggal penemuan/penampakan |
---|---|
link-js.link | 17.05.2017 |
info-js.link | 17.05.2017 |
track-js.link | 17.05.2017 |
peta-js.link | 17.05.2017 |
smart-js.link | 17.05.2017 |
adorebeauty.org | 03.09.2017 |
keamanan-pembayaran.su | 03.09.2017 |
braincdn.org | 04.09.2017 |
sagecdn.org | 04.09.2017 |
slickjs.org | 04.09.2017 |
oakandfort.org | 10.09.2017 |
kotawlnery.org | 15.09.2017 |
dobell.su | 04.10.2017 |
pakaian anak-anak.org | 31.10.2017 |
jewsondirect.com | 05.11.2017 |
toko-rnib.org | 15.11.2017 |
lemarilondon.org | 16.11.2017 |
misshaus.org | 28.11.2017 |
baterai-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 |
semua-tentang-sneakers.org | 05.12.2017 |
mage-checkout.org | 05.12.2017 |
nililotan.org | 07.12.2017 |
lamoodbighat.net | 08.12.2017 |
dompetgear.org | 10.12.2017 |
dahlie.org | 12.12.2017 |
davidsfootwear.org | 20.12.2017 |
blackriverimaging.org | 23.12.2017 |
exrpesso.org | 02.01.2018 |
taman.su | 09.01.2018 |
pmtonline.su | 12.01.2018 |
otocap.org | 15.01.2018 |
christohperward.org | 27.01.2018 |
kopi.org | 31.01.2018 |
energicoffe.org | 31.01.2018 |
energitea.org | 31.01.2018 |
kopi teh.net | 31.01.2018 |
adaptivecss.org | 01.03.2018 |
kopimokko.com | 01.03.2018 |
londontea.net | 01.03.2018 |
ukcoffe.com | 01.03.2018 |
labbe.biz | 20.03.2018 |
baterainart.com | 03.04.2018 |
btosports.net | 09.04.2018 |
chicksaddlery.net | 16.04.2018 |
paypaypay.org | 11.05.2018 |
ar500arnor.com | 26.05.2018 |
mengotorisasicdn.com | 28.05.2018 |
slickmin.com | 28.05.2018 |
bannerbuzz.info | 03.06.2018 |
kandypens.net | 08.06.2018 |
mylrendyphone.com | 15.06.2018 |
obrolan segar.info | 01.07.2018 |
3lift.org | 02.07.2018 |
abtasty.net | 02.07.2018 |
mechat.info | 02.07.2018 |
zoplm.com | 02.07.2018 |
zapajs.com | 02.09.2018 |
foodandcot.com | 15.09.2018 |
segardepor.com | 15.09.2018 |
swappastore.com | 15.09.2018 |
sangatwellfitnesse.com | 15.09.2018 |
elegrina.com | 18.11.2018 |
majsurplus.com | 19.11.2018 |
top5value.com | 19.11.2018 |
Sumber: www.habr.com