Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Fast jeder von uns nutzt Online-Shops, was bedeutet, dass wir früher oder später das Risiko eingehen, Opfer von JavaScript-Sniffern zu werden — einem speziellen Code, den Kriminelle in Websites einschleusen, um Daten von Kreditkarten, Adressen, Benutzernamen und Passwörtern zu stehlen.

Bereits fast 400.000 Nutzer der Website und der mobilen App der British Airways sind von Sniffern betroffen, ebenso wie Besucher der britischen Website des Sportgiganten FILA und der amerikanischen Ticketvertriebsgesellschaft Ticketmaster. PayPal, Chase Paymenttech, USAePay, Moneris — diese und viele andere Zahlungssysteme wurden infiziert.

Der Analyst der Threat Intelligence Group-IB, Viktor Okorokov, erklärt, wie Sniffer in den Code von Websites eindringen und Zahlungsdaten stehlen, sowie welche CRM-Systeme sie angreifen.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

„Verborgene Bedrohung“

Es stellte sich heraus, dass JS-Sniffer lange Zeit im Fokus der Antivirenanalytiker verborgen blieben und Banken sowie Zahlungssysteme sie nicht als ernsthafte Bedrohung wahrnahmen. Und das völlig zu Unrecht. Experten von Group-IB analysierten 2440 kompromittierte Online-Shops, deren Besucher insgesamt etwa 1,5 Millionen Menschen pro Tag ausmachen, waren einem Risiko ausgesetzt. Zu den Betroffenen gehören nicht nur die Nutzer, sondern auch die Online-Shops, Zahlungssysteme und Banken, die kompromittierte Karten ausgegeben haben.

Bericht Group-IB war die erste Untersuchung des Darknet-Markts für Sniffer, deren Infrastruktur und Monetarisierungsstrategien den Erstellern Millionen von Dollar einbrachten. Wir haben 38 Sniffer-Familien identifiziert, von denen nur 12 zuvor den Forschern bekannt waren.

Wir konzentrieren uns detailliert auf vier Sniffer-Familien, die im Rahmen der Studie untersucht wurden.

Familie ReactGet

Die ReactGet-Sniffer werden verwendet, um Bankkartendaten auf Websites von Online-Shops zu stehlen. Der Sniffer kann mit einer Vielzahl von Zahlungssystemen arbeiten, die auf der Website verwendet werden: Ein Parameterwert entspricht einem Zahlungssystem, während unterschiedliche entdeckte Versionen des Sniffers dazu verwendet werden können, Zugangsdaten sowie Bankkartendaten aus Zahlungsformularen mehrerer Zahlungssysteme zu stehlen, weshalb er als universeller Sniffer bezeichnet wird. Es wurde festgestellt, dass Angreifer in einigen Fällen Phishing-Attacken auf Administratoren von Online-Shops durchführen, um Zugang zum Administrationspanel der Website zu erhalten.

Die Kampagne, die diese Sniffer-Familie einsetzt, begann im Mai 2017 und richtete sich gegen Websites, die von CMS und Plattformen wie Magento, Bigcommerce und Shopify betrieben werden.

Wie ReactGet in den Code eines Online-Shops integriert wird

Neben der "klassischen" Implementierung des Scripts über den Link verwenden Sniffer-Operatoren der ReactGet-Familie eine spezielle Technik: Mithilfe von JavaScript wird überprüft, ob die aktuelle Adresse, auf der sich der Benutzer befindet, bestimmten Kriterien entspricht. Der schadhafter Code wird nur dann ausgeführt, wenn die aktuelle URL-Adresszeile die entsprechende Unterzeichenfolge enthält. checkout oder onestepcheckout, onepage/, out/onepag, checkout/one, ckout/one. Auf diese Weise wird der Sniffer-Code genau zu dem Zeitpunkt ausgeführt, an dem der Benutzer zur Zahlung seiner Einkäufe übergeht und Zahlungsinformationen in das Formular auf der Website eingibt.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Dieser Sniffer verwendet eine nicht standardisierte Technik. Die Zahlungs- und persönlichen Daten des Opfers werden gesammelt, codiert mit base64, und die resultierende Zeichenfolge wird dann als Parameter für die Anfrage an die Website der Angreifer verwendet. Häufig wird der Pfad zum Gateway als JavaScript-Datei imitiert, beispielsweise resp.js, data.js und so weiter, aber es werden auch Links zu Bilddateien verwendet, GIF und JPG. Das Besondere daran ist, dass der Sniffer ein 1x1 Pixel großes Bildobjekt erstellt und den zuvor erhaltenen Link als Parameter verwendet. src Bilder. Das heißt, für den Benutzer wird eine solche Anfrage im Datenverkehr wie eine Anfrage nach einem normalen Bild aussehen. Eine ähnliche Technik wurde in den Sniffern der ImageID-Familie verwendet. Darüber hinaus kommt die Technik mit einem Bild von 1 auf 1 Pixel in vielen legitimen Online-Analysetools zum Einsatz, was ebenfalls zu Verwirrung beim Benutzer führen kann.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Versionsanalyse

Die Analyse aktiver Domains, die von den Sniffer-Betreibern ReactGet verwendet werden, hat viele verschiedene Versionen dieser Sniffer-Familie zutage gefördert. Die Versionen unterscheiden sich durch das Vorhandensein oder Fehlen von Obfuskation, und jeder Sniffer ist für ein bestimmtes Zahlungssystem vorgesehen, das Kartenzahlungen für Online-Shops abwickelt. Durch die Anpassung des Parameters, der der Versionsnummer entspricht, hat die Gruppe Group-IB eine vollständige Liste der verfügbaren Sniffer-Variationen erstellt und anhand der Bezeichnungen der Formularfelder, nach denen jeder Sniffer im Seitenquellcode sucht, die Zahlungssysteme bestimmt, auf die der Sniffer abzielt.

Liste der Sniffer und der entsprechenden Zahlungssysteme

Sniffer-URLZahlungssystem
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.4eWAY Rapid
ajaxstatic.com/api.js?v=2.1.5 Authorize.Net
ajaxstatic.com/api.js?v=2.1.6 Adyen
ajaxstatic.com/api.js?v=2.1.7USAePay
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.3Moneris
apitstatus.com/api.js?v=2.1.5 USAePay
apitstatus.com/api.js?v=2.1.6PayPal
apitstatus.com/api.js?v=2.1.7Sage Pay
apitstatus.com/api.js?v=2.1.8Verisign
apitstatus.com/api.js?v=2.1.9PayPal
apitstatus.com/api.js?v=2.3.0Stripe
apitstatus.com/api.js?v=3.0.2Realex
apitstatus.com/api.js?v=3.0.3PayPal
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.8DataCash
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.3Authorize.Net
billgetstatus.com/api.js?v=1.4 Authorize.Net
billgetstatus.com/api.js?v=1.5Verisign
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.jsAuthorize.Net
cloudodesc.com/gtm.js?v=1.2 Authorize.Net
cloudodesc.com/gtm.js?v=1.3ANZ eGate
cloudodesc.com/gtm.js?v=2.3Authorize.Net
cloudodesc.com/gtm.js?v=2.4 Moneris
cloudodesc.com/gtm.js?v=2.6 Sage Pay
cloudodesc.com/gtm.js?v=2.7 Sage Pay
cloudodesc.com/gtm.js?v=2.8 Chase Paymentech
cloudodesc.com/gtm.js?v=2.9Authorize.Net
cloudodesc.com/gtm.js?v=2.91 Adyen
cloudodesc.com/gtm.js?v=2.92 PsiGate
cloudodesc.com/gtm.js?v=2.93CyberSource
cloudodesc.com/gtm.js?v=2.95 ANZ eGate
cloudodesc.com/gtm.js?v=2.97Realex
geisseie.com/gs.js USAePay
gtmproc.com/age.jsAuthorize.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.5PayPal
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.3Authorize.Net
livecheckpay.com/api.js?v=2.4Verisign
livecheckpay.com/react.jsAuthorize.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.5CyberSource
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 CyberSource
livegetpay.com/pay.js?v=2.2.1PayPal
livegetpay.com/pay.js?v=2.2.2 PayPal
livegetpay.com/pay.js?v=2.2.3 PayPal
livegetpay.com/pay.js?v=2.2.4 Verisign
livegetpay.com/pay.js?v=2.2.5 eWAY Rapid
livegetpay.com/pay.js?v=2.2.7 Sage Pay
livegetpay.com/pay.js?v=2.2.8 Sage Pay
livegetpay.com/pay.js?v=2.2.9Verisign
livegetpay.com/pay.js?v=2.3.0 Authorize.Net
livegetpay.com/pay.js?v=2.3.1Authorize.Net
livegetpay.com/pay.js?v=2.3.2First Data Global Gateway
livegetpay.com/pay.js?v=2.3.3 Authorize.Net
livegetpay.com/pay.js?v=2.3.4Authorize.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.0Verisign
maxstatics.com/site.js USAePay
mediapack.info/track.js?d=funlove.com USAePay
mediapack.info/track.js?d=qbedding.comAuthorize.Net
mediapack.info/track.js?d=vseyewear.com Verisign
mxcounter.com/c.js?v=1.2 PayPal
mxcounter.com/c.js?v=1.3 Authorize.Net
mxcounter.com/c.js?v=1.4 Stripe
mxcounter.com/c.js?v=1.6 Authorize.Net
mxcounter.com/c.js?v=1.7eWAY Rapid
mxcounter.com/c.js?v=1.8 Sage Pay
mxcounter.com/c.js?v=2.0 Authorize.Net
mxcounter.com/c.js?v=2.1Braintree
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.33PayPal
mxcounter.com/c.js?v=2.34Authorize.Net
mxcounter.com/c.js?v=2.35 Verisign
mxcounter.com/click.js?v=1.2 PayPal
mxcounter.com/click.js?v=1.3 Authorize.Net
mxcounter.com/click.js?v=1.4 Stripe
mxcounter.com/click.js?v=1.6 Authorize.Net
mxcounter.com/click.js?v=1.7 eWAY Rapid
mxcounter.com/click.js?v=1.8Sage Pay
mxcounter.com/click.js?v=2.0Authorize.Net
mxcounter.com/click.js?v=2.1 Braintree
mxcounter.com/click.js?v=2.2PayPal
mxcounter.com/click.js?v=2.3 Sage Pay
mxcounter.com/click.js?v=2.31Sage Pay
mxcounter.com/click.js?v=2.32Authorize.Net
mxcounter.com/click.js?v=2.33PayPal
mxcounter.com/click.js?v=2.34 Authorize.Net
mxcounter.com/click.js?v=2.35 Verisign
mxcounter.com/cnt.jsAuthorize.Net
mxcounter.com/j.jsAuthorize.Net
newrelicnet.com/api.js?v=1.2Authorize.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.0PayFort
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.3Stripe
nr-public.com/api.js?v=2.4First 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.7Authorize.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.3Moneris
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.7Westpac PayWay
nr-public.com/api.js?v=3.8 Authorize.Net
nr-public.com/api.js?v=4.0Moneris
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.4PayPal
nr-public.com/api.js?v=4.0.5Authorize.Net
nr-public.com/api.js?v=4.0.6USAePay
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.11Authorize.Net
ordercheckpays.com/api.js?v=2.12 PayPal
ordercheckpays.com/api.js?v=2.13Moneris
ordercheckpays.com/api.js?v=2.14Authorize.Net
ordercheckpays.com/api.js?v=2.15PayPal
ordercheckpays.com/api.js?v=2.16PayPal
ordercheckpays.com/api.js?v=2.17Westpac 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.23Authorize.Net
ordercheckpays.com/api.js?v=2.24 PayPal
ordercheckpays.com/api.js?v=2.25 PayFort
ordercheckpays.com/api.js?v=2.29 CyberSource
ordercheckpays.com/api.js?v=2.4 PayPal Payflow Pro
ordercheckpays.com/api.js?v=2.7Authorize.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.3Sage Pay
ordercheckpays.com/api.js?v=3.4 Authorize.Net
ordercheckpays.com/api.js?v=3.5Stripe
ordercheckpays.com/api.js?v=3.6Authorize.Net
ordercheckpays.com/api.js?v=3.7 Authorize.Net
ordercheckpays.com/api.js?v=3.8 Verisign
ordercheckpays.com/api.js?v=3.9PayPal
ordercheckpays.com/api.js?v=4.0 Authorize.Net
ordercheckpays.com/api.js?v=4.1Authorize.Net
ordercheckpays.com/api.js?v=4.2 Sage Pay
ordercheckpays.com/api.js?v=4.3Authorize.Net
reactjsapi.com/api.js?v=0.1.0 Authorize.Net
reactjsapi.com/api.js?v=0.1.1PayPal
reactjsapi.com/api.js?v=4.1.2 Flint
reactjsapi.com/api.js?v=4.1.4PayPal
reactjsapi.com/api.js?v=4.1.5Sage Pay
reactjsapi.com/api.js?v=4.1.51 Verisign
reactjsapi.com/api.js?v=4.1.6Authorize.Net
reactjsapi.com/api.js?v=4.1.7Authorize.Net
reactjsapi.com/api.js?v=4.1.8 Stripe
reactjsapi.com/api.js?v=4.1.9 Fat Zebra
reactjsapi.com/api.js?v=4.2.0Sage Pay
reactjsapi.com/api.js?v=4.2.1 Authorize.Net
reactjsapi.com/api.js?v=4.2.2 First Data Global Gateway
reactjsapi.com/api.js?v=4.2.3 Authorize.Net
reactjsapi.com/api.js?v=4.2.4 eWAY Rapid
reactjsapi.com/api.js?v=4.2.5 Adyen
reactjsapi.com/api.js?v=4.2.7PayPal
reactjsapi.com/api.js?v=4.2.8 QuickBooks Merchant Services
reactjsapi.com/api.js?v=4.2.9Verisign
reactjsapi.com/api.js?v=4.2.91 Sage Pay
reactjsapi.com/api.js?v=4.2.92Verisign
reactjsapi.com/api.js?v=4.2.94Authorize.Net
reactjsapi.com/api.js?v=4.3.97Authorize.Net
reactjsapi.com/api.js?v=4.5Sage Pay
reactjsapi.com/react.jsAuthorize.Net
sydneysalonsupplies.com/gtm.jseWAY Rapid
tagsmediaget.com/react.jsAuthorize.Net
tagstracking.com/tag.js?v=2.1.2ANZ eGate
tagstracking.com/tag.js?v=2.1.3PayPal
tagstracking.com/tag.js?v=2.1.5CyberSource
tagstracking.com/tag.js?v=2.1.7Authorize.Net
tagstracking.com/tag.js?v=2.1.8Sage Pay
tagstracking.com/tag.js?v=2.1.9Realex
tagstracking.com/tag.js?v=2.2.0CyberSource
tagstracking.com/tag.js?v=2.2.1 PayPal
tagstracking.com/tag.js?v=2.2.2PayPal
tagstracking.com/tag.js?v=2.2.3PayPal
tagstracking.com/tag.js?v=2.2.4Verisign
tagstracking.com/tag.js?v=2.2.5eWAY Rapid
tagstracking.com/tag.js?v=2.2.7Sage Pay
tagstracking.com/tag.js?v=2.2.8Sage Pay
tagstracking.com/tag.js?v=2.2.9Verisign
tagstracking.com/tag.js?v=2.3.0Authorize.Net
tagstracking.com/tag.js?v=2.3.1Authorize.Net
tagstracking.com/tag.js?v=2.3.2First Data Global Gateway
tagstracking.com/tag.js?v=2.3.3Authorize.Net
tagstracking.com/tag.js?v=2.3.4Authorize.Net
tagstracking.com/tag.js?v=2.3.5Moneris
tagstracking.com/tag.js?v=2.3.6Authorize.Net
tagstracking.com/tag.js?v=2.3.8PayPal

Passwort-Sniffer

Ein Vorteil von JavaScript-Sniffern, die auf der Client-Seite der Website arbeiten, ist ihre Vielseitigkeit: Eingebetteter schadhafter Code kann Daten jeglicher Art stehlen, seien es Zahlungsdaten oder Anmeldeinformationen für Benutzerkonten. Experten von Group-IB haben ein Sniffer-Muster entdeckt, das zur Familie ReactGet gehört und zum Stehlen von E-Mail-Adressen und Passwörtern von Benutzern der Website gedacht ist.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Kreuzung mit dem Sniffer ImageID

Bei der Analyse eines infizierten Shops wurde festgestellt, dass seine Website zweimal infiziert wurde: Neben dem Schadcode des Sniffers der Familie ReactGet wurde auch Code des Sniffers der Familie ImageID gefunden. Diese Überschneidung könnte darauf hindeuten, dass die Betreiber hinter der Verwendung beider Sniffer ähnliche Techniken zum Einfügen von Schadcode anwenden.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Universeller Sniffer

Bei der Analyse eines der Domainnamen, die zur Infrastruktur der ReactGet-Sniffer gehören, wurde festgestellt, dass derselbe Benutzer drei weitere Domainnamen registriert hatte. Diese drei Domains ahmten die Domains tatsächlich bestehender Websites nach und wurden zuvor zur Hosting von Sniffern verwendet. Bei der Analyse des Codes von drei legitimen Websites wurde ein unbekannter Sniffer entdeckt, dessen weitere Untersuchung ergab, dass es sich um eine verbesserte Version des ReactGet-Sniffers handelt. Alle zuvor verfolgten Versionen dieser Sniffer-Familie waren auf eine bestimmte Zahlungssystem anzuwenden, was bedeutete, dass für jedes Zahlungssystem eine spezielle Version des Sniffers erforderlich war. In diesem Fall wurde jedoch eine universelle Version des Sniffers entdeckt, die in der Lage war, Informationen aus Formularen zu stehlen, die 15 verschiedene Zahlungssysteme und Module von E-Commerce-Websites für Online-Zahlungen betreffen.

Zu Beginn suchte der Sniffer nach grundlegenden Formularfeldern, die persönliche Informationen des Opfers enthalten: vollständiger Name, physische Adresse, Telefonnummer.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Anschließend suchte der Sniffer in mehr als 15 verschiedenen Präfixen, die verschiedenen Zahlungssystemen und Modulen für Online-Zahlungen entsprechen.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Daraufhin wurden die persönlichen Daten des Opfers sowie Zahlungsinformationen zusammengeführt und an eine vom Angreifer kontrollierte Webseite gesendet: In diesem speziellen Fall wurden zwei Versionen des universellen Sniffers ReactGet entdeckt, die auf zwei verschiedenen gehackten Webseiten gehostet wurden. Beide Versionen sendeten jedoch die gestohlenen Daten an dieselbe gehackte Seite. zoobashop.com.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Die Analyse der Präfixe, die vom Sniffer verwendet wurden, um Felder zu finden, die die Zahlungsinformationen des Opfers enthielten, ergab, dass dieses Sniffer-Muster auf die folgenden Zahlungssysteme abzielte:

  • Authorize.Net
  • Verisign
  • First Data
  • USAePay
  • Stripe
  • PayPal
  • ANZ eGate
  • Braintree
  • DataCash (MasterCard)
  • Realex Payments
  • PsiGate
  • Heartland Payment Systems

Welche Werkzeuge werden zum Stehlen von Zahlungsinformationen eingesetzt

Das erste Tool, das während der Analyse der Infrastruktur der Angreifer entdeckt wurde, dient zur Obfuskation von schädlichen Skripten, die für den Diebstahl von Bankkarten verantwortlich sind. Auf einem der Hosts der Angreifer wurde ein Bash-Skript gefunden, das die CLI des Projekts verwendet. javascript-obfuscator zur Automatisierung der Obfuskation von Sniffer-Code.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Das zweite entdeckte Werkzeug dient der Generierung von Code, der für das Laden des Hauptsniffers verantwortlich ist. Dieses Werkzeug erzeugt JavaScript-Code, der überprüft, ob sich der Benutzer auf der Zahlungsseite befindet, indem es in der aktuellen Benutzeradresse nach den Zeichenfolgen sucht checkout, Warenkorb und so weiter, und wenn das Ergebnis positiv ist, lädt der Code den Hauptsniffer vom Server des Angreifers. Um die schädlichen Aktivitäten zu verbergen, sind alle Zeilen, einschließlich der Testzeilen zur Feststellung der Zahlungsseite sowie der Link zum Sniffer, mithilfe von base64.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Phishing-Angriffen

Im Rahmen der Analyse der Netzwerk-Infrastruktur der Angreifer wurde festgestellt, dass Kriminelle häufig Phishing einsetzen, um Zugang zum Administrationspanel des Ziel-Onlineshops zu erhalten. Die Angreifer registrieren eine Domain, die der des Shops ähnlich sieht, und richten darauf eine gefälschte Anmeldeseite für das Magento-Administrationspanel ein. Im Erfolgsfall erhalten die Angreifer Zugang zum CMS Magento-Administrationspanel, was ihnen ermöglicht, die Komponenten der Website zu bearbeiten und einen Sniffer zur Stehlung von Kreditkartendaten zu integrieren.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Infrastruktur

DomainEntdeckungs-/Erscheinungsdatum
mediapack.info04.05.2017
adsgetapi.com15.06.2017
simcounter.com14.08.2017
mageanalytics.com22.12.2017
maxstatics.com16.01.2018
reactjsapi.com19.01.2018
mxcounter.com02.02.2018
apitstatus.com01.03.2018
orderracker.com20.04.2018
tagstracking.com25.06.2018
adsapigate.com12.07.2018
trust-tracker.com15.07.2018
fbstatspartner.com02.10.2018
billgetstatus.com12.10.2018
aldenmlilhouse.com20.10.2018
balletbeautlful.com20.10.2018
bargalnjunkie.com20.10.2018
payselector.com21.10.2018
tagsmediaget.com02.11.2018
hs-payments.com16.11.2018
ordercheckpays.com19.11.2018
geisseie.com24.11.2018
gtmproc.com29.11.2018
livegetpay.com18.12.2018
sydneysalonsupplies.com18.12.2018
newrelicnet.com19.12.2018
nr-public.com03.01.2019
cloudodesc.com04.01.2019
ajaxstatic.com11.01.2019
livecheckpay.com21.01.2019
asianfoodgracer.com25.01.2019

G-Analytics Familie

Diese Familie von Sniffern wird verwendet, um die Kreditkartendaten von Kunden in Online-Shops zu stehlen. Der erste von der Gruppe verwendete Domainname wurde im April 2016 registriert, was auf den Beginn der Aktivitäten der Gruppe Mitte 2016 hindeutet.

In der aktuellen Kampagne verwendet die Gruppe Domainnamen, die echte Dienstleistungen wie Google Analytics und jQuery nachahmen, und tarnt die Aktivität der Sniffer mit legitimen Skripten und ähnlichen Domainnamen. Angriffe richteten sich gegen Websites, die auf der CMS Magento basieren.

Wie G-Analytics in den Code eines Online-Shops implementiert wird

Ein charakteristisches Merkmal dieser Familie ist die Verwendung verschiedener Methoden zur Entwendung von Zahlungsinformationen der Nutzer. Neben der klassischen Implementierung von JavaScript-Code auf der Client-Seite hat die kriminelle Gruppe auch die Technik der Code-Integration in den Server-Bereich der Website angewandt, konkret in die PHP-Skripte, die die vom Nutzer eingegebenen Daten verarbeiten. Diese Technik ist gefährlich, da sie die Entdeckung des schädlichen Codes durch externe Forscher erschwert. Spezialisten von Group-IB entdeckten eine Version des Sniffers, die in den PHP-Code der Website integriert wurde und als Gateway die Domain verwendet, dittm.org.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Außerdem wurde eine frühere Version des Sniffers entdeckt, die denselben Domainnamen zum Sammeln gestohlener Daten verwendet, dittm.org, jedoch ist diese Version für die Installation auf der Client-Seite des Online-Shops vorgesehen.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Später änderte die Gruppe ihre Taktik und begann, mehr Wert auf die Verschleierung schädlicher Aktivitäten und Tarnung zu legen.

Anfang 2017 begann die Gruppe, die Domain jquery-js.com, zu verwenden, die sich als CDN für jQuery tarnt: beim Besuch der Website werden die Nutzer auf die legitime Seite jquery.com.

Mitte 2018 nahm die Gruppe die Domain g-analytics.com in Betrieb und begann, die Aktivitäten des Sniffers als legitimen Google Analytics-Dienst auszugeben.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Versionsanalyse

Im Rahmen der Analyse der Domains, die zur Speicherung des Sniffer-Codes verwendet werden, wurde festgestellt, dass die Website eine Vielzahl von Versionen aufweist, die sich durch das Vorhandensein von Obfuskation sowie durch das Vorhandensein oder Fehlen von unerreichbarem Code unterscheiden, der zur Ablenkung und zum Verstecken des schädlichen Codes hinzugefügt wurde.

Insgesamt wurden auf der Website jquery-js.com sechs Versionen von Sniffern identifiziert. Die gestohlenen Daten senden diese Sniffer an eine Adresse, die sich auf derselben Website befindet wie der Sniffer selbst: 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

Eine spätere Domain g-analytics.com, die die Gruppe seit Mitte 2018 in ihren Angriffen verwendet, dient als Speicher für eine größere Anzahl an Sniffern. Insgesamt wurden 16 verschiedene Versionen des Sniffers gefunden. In diesem Fall war das Gateway für den Versand der gestohlenen Daten als Link zu einem Bild im Format maskiert. 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

Monetarisierung gestohlener Daten

Eine kriminelle Gruppe monetarisiert gestohlene Daten, indem sie Karten über einen eigens eingerichteten Untergrundshop verkauft, der Dienstleistungen für Carder anbietet. Die Analyse der von den Angreifern verwendeten Domains hat ergeben, dass google-analytics.cm von demselben Benutzer registriert wurde, der auch die Domain cardz.vcbesitzt. Die Domain cardz.vc gehört zu dem Shop für gestohlene Bankkarten Cardsurfs (Flysurfs), der insbesondere während der aktiven Zeit des Untergrundmarktes AlphaBay als Verkaufsplattform für Bankkarten, die mit einem Sniffer gestohlen wurden, an Popularität gewann.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Bei der Analyse der Domain analytic.is, die sich auf demselben Server befindet wie die Domains, die von Sniffern zum Sammeln gestohlener Daten verwendet werden, entdeckten die Spezialisten von Group-IB eine Datei mit Logs eines Cookie-Stealers, die anscheinend später vom Entwickler aufgegeben wurde. Einer der Einträge im Log enthielt die Domain iozoz.com, die zuvor in einem der Sniffer verwendet wurde, die 2016 aktiv waren. Es wird vermutet, dass diese Domain zuvor von einem Angreifer genutzt wurde, um mit einem Sniffer gestohlene Karten zu sammeln. Diese Domain wurde auf die E-Mail-Adresse kts241@gmail.com, der ebenfalls zur Registrierung von Domains verwendet wurde cardz.su und cardz.vc, die sich auf den Kartenladen Cardsurfs beziehen.

Aufgrund der erhaltenen Daten kann die Annahme getroffen werden, dass die G-Analytics-Sniffer-Familie und der Schwarzmarkt für Bankkarten Cardsurfs von denselben Personen betrieben werden, und dass der Laden zur Veräußertung von Bankkarten genutzt wird, die mittels Sniffer gestohlen wurden.

Infrastruktur

DomainEntdeckungs-/Erscheinungsdatum
iozoz.com08.04.2016
dittm.org10.09.2016
jquery-js.com02.01.2017
g-analytics.com31.05.2018
google-analytics.is21.11.2018
analytic.to04.12.2018
google-analytics.to06.12.2018
google-analytics.cm28.12.2018
analytic.is28.12.2018
googlc-analytics.cm17.01.2019

Die Illum-Familie

Illum ist eine Sniffer-Familie, die für Angriffe auf Online-Shops eingesetzt wird, die auf der CMS Magento basieren. Neben der Einspeisung von Schadcode verwenden die Betreiber dieses Sniffers auch die Implementierung vollständiger gefälschter Zahlungsformulare, die Daten an kontrollierte Gateways der Angreifer senden.

Bei der Analyse der Netzwerkstruktur, die von den Betreibern dieses Sniffers verwendet wird, wurde eine große Menge an Schadensskripten, Exploits, gefälschten Zahlungsformularen sowie eine Sammlung von Beispielen mit schädlichen Sniffern von Konkurrenten festgestellt. Angesichts der Informationen über die Entstehungsdaten der von der Gruppe verwendeten Domainnamen kann man davon ausgehen, dass der Beginn der Kampagne Ende 2016 liegt.

Wie Illum in den Code des Online-Shops integriert wird

Die ersten entdeckten Versionen des Sniffers wurden direkt in den Code der kompromittierten Website eingefügt. Die gestohlenen Daten wurden an die Adresse cdn.illum[.]pw/records.php, und der Gateway wurde durch base64.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
später wurde eine gepackte Version des Sniffers entdeckt, die einen anderen Gateway verwendete — records.nstatistics[.]com/records.php.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Laut Laut dem Bericht Willem de Groot wurde derselbe Host verwendet, der in dem Sniffer eingesetzt wurde, der auf die Website eines Geschäfts, das einer deutschen politischen Partei, der CSU, gehört.

Analyse der Cyberkriminellen-Website

Spezialisten von Group-IB entdeckten und analysierten die Website, die von dieser kriminellen Gruppe zur Speicherung von Werkzeugen und zur Sammlung gestohlener Informationen verwendet wird.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Unter den Tools, die auf den Servern der Angreifer entdeckt wurden, fanden sich Skripte und Exploits zur Erhöhung der Berechtigungen in Linux-Betriebssystemen: beispielsweise das Linux Privilege Escalation Check Script, entwickelt von Mike Czumak, sowie ein Exploit für CVE-2009-1185.

Für Angriffe auf Online-Shops verwendeten die Angreifer zwei Exploits: der erste ist in der Lage, schadhafter Code in core_config_data einzuschleusen, indem er CVE-2016-4010 ausnutzt, der zweite nutzt eine RCE-Sicherheitsanfälligkeit in Plugins für das CMS Magento aus, die es ermöglicht, willkürlichen Code auf dem verwundbaren Webserver auszuführen.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Im Rahmen der Serveranalyse wurden auch verschiedene Muster von Sniffern und gefälschten Zahlungsformularen gefunden, die von den Angreifern verwendet wurden, um Zahlungsinformationen von gehackten Websites zu sammeln. Wie aus der folgenden Liste ersichtlich ist, wurden einige Skripte individuell für jede gehackte Website erstellt, während für bestimmte CMS und Zahlungsmethoden universelle Lösungen verwendet wurden. Beispielsweise sind die Skripte segapay_standart.js und segapay_onpage.js für die Integration auf Websites gedacht, die das Zahlungs-Gateway Sage Pay nutzen.

Liste der Skripte für verschiedene Zahlungs-Gateways

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

Host paymentnow[.]tk, verwendet als Gate im Skript payment_forminsite.js, wurde erkannt als subjectAltName in mehreren Zertifikaten, die mit dem CloudFlare-Dienst verbunden sind. Darüber hinaus wurde auf dem Host ein Skript gefunden evil.js. Anhand des Skriptnamens könnte es im Rahmen der Ausnutzung von CVE-2016-4010 verwendet worden sein, durch die schadhafter Code in den Footer einer von der CMS Magento betriebenen Website eingefügt werden kann. Als Gate hat dieses Skript den Host verwendet request.requestnet[.]tk, der dasselbe Zertifikat verwendet wie der Host paymentnow[.]tk.

Gefälschte Zahlungsformulare

Im Folgenden zeigt das Bild ein Beispiel für ein Formular zur Eingabe von Kartendaten. Dieses Formular wurde verwendet, um in die Website eines Online-Shops einzudringen und Kartendaten zu stehlen.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Das nächste Bild zeigt ein Beispiel für ein gefälschtes PayPal-Zahlungsformular, das von Angreifern verwendet wurde, um auf Websites mit dieser Zahlungsmethode eingebettet zu werden.
Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Infrastruktur

DomainEntdeckungs-/Erscheinungsdatum
cdn.illum.pw27/11/2016
records.nstatistics.com06/09/2018
request.payrightnow.cf25/05/2018
paymentnow.tk16/07/2017
payment-line.tk01/03/2018
paymentpal.cf04/09/2017
requestnet.tk28/06/2017

CoffeMokko Familie

Die CoffeMokko-Sniffer-Familie, die für den Diebstahl von Bankkarten von Online-Shop-Nutzern entwickelt wurde, ist seit mindestens Mai 2017 im Einsatz. Vermutlich wird diese Sniffer-Familie von der kriminellen Gruppe Group 1 betrieben, die 2016 von Experten von RiskIQ beschrieben wurde. Angriffe richteten sich gegen Websites, die mit Content-Management-Systemen wie Magento, OpenCart, WordPress, osCommerce und Shopify betrieben werden.

Wie CoffeMokko in den Code eines Online-Shops integriert wird

Die Betreiber dieser Familie erstellen für jede Infektion einzigartige Sniffer: Die Sniffer-Datei befindet sich im Verzeichnis src oder js auf den Servern der Angreifer. Die Integration in den Website-Code erfolgt über einen direkten Link zum Sniffer.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Im Code des Sniffers sind die Feldnamen der Formulare hartkodiert, aus denen Daten gestohlen werden sollen. Der Sniffer prüft außerdem, ob sich der Benutzer auf der Zahlungsseite befindet, indem er die Liste der Schlüsselwörter mit der aktuellen Adresse des Benutzers abgleicht.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Einige entdeckte Versionen des Sniffers waren obfuskiert und enthielten eine verschlüsselte Zeichenfolge, in der das Hauptressourcenarray gespeichert war: darin waren die Namen der Formularfelder für verschiedene Zahlungssysteme sowie die Adresse des Gateways, an das die gestohlenen Daten gesendet werden sollten.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Die gestohlenen Zahlungsinformationen wurden über den Pfad an ein Script auf dem Server der Angreifer gesendet /savePayment/index.php или /tr/index.php. Es wird angenommen, dass dieses Script dazu dient, die Daten vom Gateway an den Hauptserver zu übertragen, der die Daten von allen Sniffern konsolidiert. Um die übertragenen Daten zu verbergen, werden alle Zahlungsinformationen des Opfers mit Hilfe von base64verschlüsselt, wonach mehrere Zeichenersetzungen stattfinden:

  • Das Zeichen „e“ wird durch „:“ ersetzt
  • Das Zeichen „w“ wird durch „+“ ersetzt
  • Das Zeichen „o“ wird durch „%“ ersetzt
  • Das Zeichen „d“ wird durch „#“ ersetzt
  • Das Zeichen „a“ wird durch „-“ ersetzt
  • Das Zeichen „7“ wird durch „^“ ersetzt
  • Das Zeichen „h“ wird durch „_“ ersetzt
  • Das Zeichen „T“ wird durch „@“ ersetzt
  • Das Zeichen „0“ wird durch „/“ ersetzt
  • Das Zeichen „Y“ wird durch „*“ ersetzt

Durch die Zeichenersetzungen ist es mit Hilfe von base64 nicht möglich, die Daten zu dekodieren, ohne eine Umkehrtransformation durchzuführen.

So sieht ein unverschleierter Sniffer-Code aus:

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Analyse der Infrastruktur

In früheren Kampagnen registrierten Angreifer domainnamen, die den legitimen Webseiten von Online-Shops ähnlich waren. Ihre Domain konnte sich nur durch ein Zeichen oder eine andere TLD vom legitimen unterscheiden. Die registrierten Domains wurden verwendet, um Sniffer-Code zu speichern, dessen Verweis in den Code des Shops eingebaut wurde.

Diese Gruppe verwendete auch Domainnamen, die an den Namen populärer jQuery-Plugins erinnerten (slickjs[.]org für Seiten, die das Plugin nutzen slick.js), Zahlungsdienstleister (sagecdn[.]org für Seiten, die das Zahlungssystem Sage Pay verwenden).

Später begann die Gruppe, Domains zu erstellen, deren Namen nichts mit der Domain des Shops oder dem Thema des Shops zu tun hatten.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Jeder Domain entsprach eine Webseite, die ein Verzeichnis erstellte /js oder /src. In diesem Verzeichnis wurden die Sniffer-Skripte gespeichert: je ein Sniffer für jede neue Infektion. Der Sniffer wurde über einen direkten Link in den Code der Webseite eingefügt, aber in seltenen Fällen modifizierten die Angreifer eine der Dateien der Webseite und fügten schädlichen Code hinzu.

Codeanalyse

Erster Obfuskationsalgorithmus

In einigen der entdeckten Proben von Sniffern dieser Familie war der Code obfuskiert und enthielt verschlüsselte Daten, die für das Funktionieren des Sniffers erforderlich sind: insbesondere die Adresse des Sniffer-Gateways, eine Liste der Felder des Zahlformulars und in einigen Fällen - den Code des gefälschten Zahlungsformulars. Im Code innerhalb der Funktion wurden die Ressourcen mit Hilfe von XOR mit einem Schlüssel, der als Argument in dieselbe Funktion übergeben wurde, verschlüsselt.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Durch die Entschlüsselung der Zeichenfolge mit dem entsprechenden, für jede Probe einzigartigen Schlüssel kann eine Zeichenfolge erhalten werden, die alle Zeichenfolgen aus dem Sniffer-Code durch ein Trennzeichen enthält.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Zweiter Obfuskationsalgorithmus

In späteren Proben von Sniffern dieser Familie wurde ein anderer Obfuskationsmechanismus verwendet: In diesem Fall wurden die Daten mit Hilfe eines selbstgeschriebenen Algorithmus verschlüsselt. Die Zeichenfolge, die die für den Betrieb des Sniffers notwendigen verschlüsselten Daten enthielt, wurde als Argument der Entschlüsselungsfunktion übergeben.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Mit der Konsole des Browsers können die verschlüsselten Daten entschlüsselt werden, um ein Array zu erhalten, das die Ressourcen des Sniffers enthält.

Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren

Verbindung zu frühen MageCart-Attacken

Bei der Analyse einer der von der Gruppe verwendeten Domains, die als Gateway zum Sammeln gestohlener Daten dient, wurde festgestellt, dass auf dieser Domain eine Infrastruktur zum Diebstahl von Kreditkarten eingerichtet wurde, die identisch mit der von Group 1 ist – einer der ersten Gruppen, entdeckt worden von den Spezialisten von RiskIQ.

Auf dem Host der CoffeMokko-Sniffer-Familie wurden zwei Dateien gefunden:

  • mage.js — eine Datei, die den Sniffer-Code der Gruppe 1 mit dem Gateway-Adresse js-cdn.link
  • mag.php enthält – ein PHP-Skript, das für das Sammeln der von dem Sniffer gestohlenen Daten verantwortlich ist.

Содержимое файла mage.js Vier JavaScript-Sniffer, die Sie in Online-Shops ausspionieren
Es wurde außerdem festgestellt, dass die frühesten Domains, die von der Gruppe hinter der CoffeMokko-Sniffer-Familie verwendet wurden, am 17. Mai 2017 registriert wurden:

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

Das Format dieser Domainnamen entspricht den Domainnamen von Group 1, die in den Angriffen von 2016 verwendet wurden.

Auf Grundlage der entdeckten Fakten lässt sich die Vermutung aufstellen, dass zwischen den Betreibern der Sniffer CoffeMokko und der kriminellen Gruppe Group 1 eine Verbindung besteht. Es ist anzunehmen, dass die Betreiber von CoffeMokko Werkzeuge und Software für die Kartendatenklausel von ihren Vorgängern entliehen haben. Wahrscheinlicher ist jedoch, dass die kriminelle Gruppe, die für den Einsatz der CoffeMokko-Sniffer verantwortlich ist, dieselben Personen sind, die zuvor Angriffe im Rahmen der Aktivitäten von Group 1 durchgeführt haben. Nach der Veröffentlichung des ersten Berichts über die Aktivitäten der Gruppierung wurden alle ihre Domainnamen gesperrt, und ihre Werkzeuge wurden eingehend untersucht und dokumentiert. Die Gruppe sah sich gezwungen, eine Pause einzulegen, um ihre internen Tools zu überarbeiten und den Code der Sniffer neu zu schreiben, um ihre Angriffe fortsetzen und unentdeckt bleiben zu können.

Infrastruktur

DomainEntdeckungs-/Erscheinungsdatum
link-js.link17.05.2017
info-js.link17.05.2017
track-js.link17.05.2017
map-js.link17.05.2017
smart-js.link17.05.2017
adorebeauty.org03.09.2017
security-payment.su03.09.2017
braincdn.org04.09.2017
sagecdn.org04.09.2017
slickjs.org04.09.2017
oakandfort.org10.09.2017
citywlnery.org15.09.2017
dobell.su04.10.2017
childsplayclothing.org31.10.2017
jewsondirect.com05.11.2017
shop-rnib.org15.11.2017
closetlondon.org16.11.2017
misshaus.org28.11.2017
battery-force.org01.12.2017
kik-vape.org01.12.2017
greatfurnituretradingco.org02.12.2017
etradesupply.org04.12.2017
replacemyremote.org04.12.2017
all-about-sneakers.org05.12.2017
mage-checkout.org05.12.2017
nililotan.org07.12.2017
lamoodbighats.net08.12.2017
walletgear.org10.12.2017
dahlie.org12.12.2017
davidsfootwear.org20.12.2017
blackriverimaging.org23.12.2017
exrpesso.org02.01.2018
parks.su09.01.2018
pmtonline.su12.01.2018
ottocap.org15.01.2018
christohperward.org27.01.2018
coffetea.org31.01.2018
energycoffe.org31.01.2018
energytea.org31.01.2018
teacoffe.net31.01.2018
adaptivecss.org01.03.2018
coffemokko.com01.03.2018
londontea.net01.03.2018
ukcoffe.com01.03.2018
labbe.biz20.03.2018
batterynart.com03.04.2018
btosports.net09.04.2018
chicksaddlery.net16.04.2018
paypaypay.org11.05.2018
ar500arnor.com26.05.2018
authorizecdn.com28.05.2018
slickmin.com28.05.2018
bannerbuzz.info03.06.2018
kandypens.net08.06.2018
mylrendyphone.com15.06.2018
freshchat.info01.07.2018
3lift.org02.07.2018
abtasty.net02.07.2018
mechat.info02.07.2018
zoplm.com02.07.2018
zapaljs.com02.09.2018
foodandcot.com15.09.2018
freshdepor.com15.09.2018
swappastore.com15.09.2018
sehr geehrte Google Chrome 74 hat das Löschen des Verlaufs verlernt15.09.2018
elegrina.com18.11.2018
majsurplus.com19.11.2018
top5value.com19.11.2018

Quelle: habr.com

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster