CriticoFamiglia antivirus

js.skimmer.b64: lo script che copia le carte di credito al checkout

js.skimmer.b64 è la firma di uno skimmer JavaScript codificato in base64: uno script che, nella pagina di pagamento, legge i campi della carta di credito mentre il cliente li compila e li invia a un server dell'attaccante, lasciando che l'ordine vada a buon fine. Nel corpus di misura di WPsec.it dell'agosto 2026 compare su 3 domini e-commerce, nessuno WordPress, tutti sullo stesso server, e in tutti e tre i casi il file era salvato con estensione .png: uno script che si presenta come immagine per superare i controlli sull'estensione.

Famiglia: Skimmer di carte di credito · Anche noto come: skimmer, web skimming, Magecart · Aggiornato il 1 settembre 2026

Le stringhe esatte

Se hai trovato una di queste stringhe sul tuo sito, sei nella pagina giusta.

  • js.skimmer.b64
  • SMW-BLKH-SA-CLOUDAV-js.skimmer.b64
  • js.skimmer
  • skimmer

Dove si trova

  • In un file con estensione da immagine, .png nel 100% dei casi del corpus, caricato in una cartella di risorse statiche
  • Richiamato da un tag script aggiunto al tema o al template del checkout, oppure iniettato nel database nelle impostazioni del negozio
  • Su piattaforme e-commerce di ogni tipo: nel corpus Magento e PrestaShop, ma la tecnica vale identica per WooCommerce

Cosa fa

  • Intercetta i dati della carta prima che arrivino al gateway di pagamento: il cliente paga davvero, l'ordine è regolare, e i dati della carta finiscono anche altrove.
  • Resta invisibile per mesi, perché non rompe nulla: nel corpus un caso di skimmer era attivo da nove mesi al momento della bonifica.
  • Configura una violazione di dati personali e di pagamento: comporta obblighi di notifica al Garante e ai clienti, e responsabilità verso il circuito delle carte.

Come verificare

Comandi di sola lettura: non modificano nulla. Sostituisci ESEMPIO.it con il tuo dominio ed esegui dalla radice del sito.

  1. Elenca gli script caricati dalla pagina di checkout e verifica ogni dominio

    curl -sL -A 'Mozilla/5.0' 'https://ESEMPIO.it/checkout/' | grep -oE '<script[^>]+src="[^"]+"' | sort -u
  2. Cerca file immagine che contengono JavaScript

    find . -type f \( -iname '*.png' -o -iname '*.jpg' -o -iname '*.gif' -o -iname '*.svg' \) -size -300k -exec grep -lIE '(atob\(|fromCharCode|document\.(createElement|write)|XMLHttpRequest|fetch\()' {} + 2>/dev/null | head
  3. Cerca codice base64 decodificato a runtime nel tema e nelle impostazioni

    grep -rnE 'atob\(|eval\(atob|fromCharCode' wp-content/themes/ wp-content/plugins/ 2>/dev/null | grep -vE 'node_modules|\.min\.js' | head; wp option list --search='*script*' --fields=option_name 2>/dev/null | head

Cosa non basta fare

  • Rimuovere lo script e riaprire il checkout: senza sapere da quando era attivo non si può stimare quali carte sono state esposte, e l'obbligo di notifica non sparisce.
  • Cambiare gateway di pagamento: lo skimmer legge il modulo prima che i dati partano, qualunque sia il gateway.
  • Fidarsi del certificato HTTPS: la connessione è cifrata, lo script gira dentro la pagina e vede i dati in chiaro.

Cosa fare

  • Metti il checkout in manutenzione finché non hai rimosso lo skimmer e verificato che la pagina carichi solo script noti.
  • Ricostruisci la finestra di esposizione dalla data del file e dai log: serve per la notifica al Garante, entro 72 ore dalla scoperta, e ai clienti.
  • Informa il fornitore del servizio di pagamento: i circuiti hanno procedure proprie per gli esercenti compromessi.
  • Cerca la porta di ingresso e gli altri artefatti: lo skimmer è il carico, la backdoor che lo ha installato è ancora lì.

FAQ

Domande frequenti

  • In buona parte sì, se i dati della carta vengono inseriti sulla pagina del fornitore di pagamento e non sul tuo sito. Restano esposti i dati di fatturazione e spedizione, e resta il rischio che lo skimmer sostituisca il modulo con uno finto che imita quello del fornitore. Il controllo degli script caricati al checkout va fatto comunque.

Se il sito è compromesso

Trovare la firma è il primo passo, chiudere la via di ingresso è quello che conta

Rimuovere l'artefatto senza chiudere il punto da cui è entrato porta alla reinfezione. La scansione gratuita è il modo più rapido per capire cosa è osservabile dall'esterno del tuo sito.

Questa pagina pubblica firme di rilevamento, non codice sfruttabile. I casi citati sono descritti in forma anonima.