In questo Case Study analizzeremo come risolvere l’attacco meglio conosciuto come Japanese Hacking.
Questo genere di attacco solitamente comporta l’indicizzazione massiva di contenuti SPAM.
Come conseguenza principale avremo una progressiva deindicizzazione dei contenuti di valore del nostro sito con la conseguente perdita di traffico organico derivante dalla perdita di posizionamento delle keywords strategiche.
Vedremo insieme come diagnosticare la problematica e come ripristinare il traffico perso migliorando la priorità di scansione dei contenuti di primaria importanza per il nostro business.
Pronto? Iniziamo
Cos’è il Japanese Hacking
Con questo termine identifichiamo gli attacchi che come risultato comportano la massiva indicizzazione di pagine con contenuti SPAM in lingua Giapponese.
Molto spesso questo problema è difficile da identificare fino a quando il virus non ha compromesso del tutto o comunque pesantemente i nostri risultati organici.
Il risultato è vedere compromessa la visibilità delle pagine più importanti del nostro business in cambio di tante belle paginette in lingua nipponica:
Diagnosi del problema
Il primo elemento che ci aiuta a diagnosticare la problematica di un attacco con parole chiave giapponesi è l’operatore site:nomedominio.it.
Questo operatore nella SEO è estremamente importante in quanto consente di verificare il numero di pagine indicizzate dal motore di ricerca oltre che identificare eventuali anomalie come quelle relative ad injection di malware.
Nel mio caso il cliente si è accorto della problematica in uno stato avanzato, quando cioè l’infezione era talmente tanto diffusa che l’operatore site mostrava in SERP praticamente solo risultati relative a pagine hackerate:
Un altro metodo per diagnosticare la problematica è analizzare i picchi di scansione in Google Search Console.
Da Search Console è possibile verificare questi dati direttamente nella sezione Impostazioni > Statistiche di Scansione
Come puoi notare in corrispondenza del 29/10/2021 il cliente ha avuto un picco di scansione anormale che ha comportato nei giorni a seguire anche un incremento del tempo di risposta medio in quanto le pagine scansionate erano decine di migliaia di più rispetto al contenuto del sito web.
Questo risulta problematico in quanto se anche tu, come il cliente in questione, godi di una buona Domain Authority, Google tenderà progressivamente ad allocare sempre più risorse per la scansione e l’indicizzazione del sito web.
La conseguenza può essere devastante sia in termini di de-ranking delle keywords posizionate come si può vedere in questo screen estratto da SeoZoom
ma anche in termini di uptime del tuo server. I googlebot, infatti, possono da un lato essere tuoi alleati nel processo di scansione ed indicizzazione dei contenuti ma in alcuni casi, come questo, possono diventare i tuoi peggiori nemici in quanto sono in grado di mandare in down il server che hosta il tuo sito web per un eccessivo utilizzo di CPU, specialmente se utilizzi hosting condivisi.
Le analisi eseguite
I controlli eseguiti sul sito web includono l’utilizzo congiunto di diversi tool:
- Screaming Frog: attraverso il tool ho analizzato il numero di pagine sottoposte a scansione che ritornavano uno status code 200 e risultavano essere indicizzabili per il motore di ricerca. La maggior parte delle pagine risultati in SERP risultavano essere indicizzabili;
- Screaming Frog Log File Analyser: attraverso l’analisi dei log file ho confrontato le statistiche di scansione precedenti all’attacco malware, confrontandole con le statistiche dei giorni in cui è stato rilevato il picco in Google Search Console. Il Log file ha confermato il picco di accessi di Googlebot e come conseguenza l’aumento esponenziale dell’utilizzo di CPU del server;
- Google Search Console: attraverso il pannello di controllo ho innanzitutto verificato le sitemap inviate. Con mia grande sorpresa, oltre alle sitemap inviate manualmente, era stata fatta richiesta di submit di una sitemap contente migliaia di link SPAM creati dal malware. Monitorando nei giorni successivi mi sono reso conto che il numero di pagine in sitemap cresceva esponenzialmente. Verificando le statistiche di scansione e i relativi Status Code ho appurato che la maggior parte delle pagine in sitemap erano state sottoposte a scansione ed erano presenti nell’indice di ricerca. All’interno della sezione Azioni Manuali non era contrassegnata alcuna azione, segno di una penalizzazione algoritmica.
- Seozoom: come mostrato in precedenza lo strumento mostrava un calo drastico di posizionamento delle main keywords. Il che è abbastanza automatico considerato che la maggior parte del crawl budget veniva destinato alla scansione delle nuove URL presenti in Sitemap
- Analisi delle SERP: come mostrato in precedenza grazie all’operatore site:nomedominio.it mi sono reso conto che oltre 7000 pagine presenti in SERP erano SPAM.
Risoluzione della problematica
L’approccio che mostrerò di seguito non è valido per ogni sito web in quanto bisogna capire che tipologia di injection è stata fatta e che tipo di pagine sono state installate sul vostro sito.
Nel mio caso gli step eseguiti sono stati i seguenti:
-
- Eliminazione del malware: per eseguire questo importante step mi sono avvalso di uno strumento che reputo davvero potente nell’identificazione delle infezioni ed efficace nella risoluzione delle stesse. Il tool in questione si chiama Siteguarding (link affiliato) e diventerà il tuo miglior alleato quando si tratta di risoluzione di infezioni importanti. Come primo step puoi eseguire una scansione gratuita del tuo sito web a questo indirizzo. Dovrai lasciare la tua email e successivamente riceverai l’esito della scansione. Se l’esito è positivo sarà necessario registrarsi e acquistare un piano per la rimozione dei malware presenti. Il piano che vi offre la rimozione dei malware una tantum ha un costo base di circa 50€ (il prezzo varia a seconda di quanta urgenza avete nella risoluzione dell’infezione). Acquistato il piano sarà sufficiente inserire il proprio dominio, installare il codice o il plugin (in caso tu faccia uso di un CMS) e dopo aver verificato la corretta installazione dovrai lanciare nuovamente la scansione.
In base alla priorità di intervento da voi pagata il team di Siteguarding inizierà il lavoro di pulizia per voi. - Errori 404: una volta eliminato il malware dal sito web dovrete testare gli status code delle pagine attualmente indicizzate. Riutilizziamo l’operatore site:nomedominio.it e clicchiamo nelle URLs in Giapponese per verificare che adesso le pagine rispondano con il codice 404 non trovato. Se il virus è stato eliminato correttamente tutte le pagine andranno adesso in 404. Nel mio caso avevo oltre 7000 URLs con il medesimo status code. Il che è un passo avanti ma decisamente non è una situazione ideale in quanto il crawl budget sarà allocato principalmente per la scansione di pagine con codice “non trovato” ergo spreco enorme di crawl budget;
- Google Search Console: dalla search console sarà necessario eliminare le sitemap malevole. Prima di eliminarle conservate tutte le URLs contenute in essa, ci servirà successivamente. Sarà sufficiente accedere all’interno della Sitemap in questione e cliccare sui 3 puntini in alto a destra e cliccare “Rimuovi Sitemap”
Un altro accorgimento è quello di verificare che nessun altro account (oltre a quello vostro e quello del cliente) abbia accesso alla search console con privilegi di amministratore. Per verificare sarà sufficiente dirigersi all’interno della sezione Impostazioni > Utenti e Autorizzazioni. Da qui cliccare sui 3 puntini in corrispondenza dell’account che ritenete estraneo alla vostra organizzazione e premere “Rimuovi accesso”.
- Richiesta rimozione delle URLs dall’indice di ricerca: lo scopo di questo step è eliminare tutte le URLs SPAM dall’indice di ricerca affinché il Crawl Budget non venga sprecato per indicizzare contenuti in 404. Se hai poche URLs affette dal malware sarà sufficiente procedere manualmente con la richiesta di rimozione delle stesse tramite lo strumento di Rimozione delle pagine obsolete di Search Console. Da questa schermata basterà cliccare su Nuova Richiesta > Per aggiornare un risultato obsoleto di Google per una pagina web che è stata modificata. A questo punto potrete procedere all’inserimento delle URLs compromesse una alla volta
Se invece come me siete fortunati allora la procedura riguarderà migliaia di pagine che chiaramente richiederebbe giornate intere di lavoro. Per ovviare a questo problema, visto che Google non ha ancora messo a disposizione uno strumento per l’eliminazione massiva dovremmo optare per l’installazione di una estensione di chrome a pagamento. Questa estensione si chiama WebMasterTools: Bulk Outdated Content Removal. La licenza ha un costo annuale di 50$ e una mensile di 15$. Ti suggerisco di optare per la versione da 15$ perchè servirà solo temporaneamente. Ottenuta la licenza post acquisto potrete inserirla all’interno del popup che comparirà una volta cliccata l’estensione su Chrome.
In questa fase dovrete creare un CSV contenente le sole URLs SPAM. Questo file verrà dato in pasto all’estensione per effettuare la richiesta di rimozione dalla Search Console. Ricordate il punto 3 dove vi dicevo di conservare le URLs della Sitemap SPAM? Benissimo è il momento di usarla. Compilate il file con le URLs presenti in essa. Inoltre alcune URLs potrebbero non essere presenti nella Sitemaps in questione, pertanto vi suggerisco di dirigervi all’interno di Search Console Indicizzazione > Pagine e cliccare su Visualizza i dati sulle pagine indicizzate.
A questo punto cliccate su Esporta in alto a destra e conservate il CSV. Questo file dovrà essere filtrato preventivamente avendo cura di conservare le sole URLs SPAM. Aggiungiamo anche queste all’interno del nostro file da dare in pasto all’estensione. Salviamo il file definitivo e avviamo l’estensione all’interno della sezione Rimozione delle pagine obsolete di Search Console, carichiamo il nostro file con le URLs SPAM ed attendiamo che la procedura sia portata a termine. A seconda del numero di URLs date in pasto questo procedimento potrebbe durare minuti come ore. Abbiate pazienza la luce è vicina; - Se avete eseguito la procedura correttamente nei giorni a seguire noterete che le SERP cominceranno a pulirsi dai risultati SPAM. Se invece siete fortunati come me non sarà cambiato molto. Certo ero riuscito ad eliminare un migliaio di URLs ma a distanza di 15 giorni dall’intervento i risultati tardavano ad arrivare. Pertanto la soluzione migliore trovata in questo caso è stata quella di impedire la scansione delle risorse con una determinata path dal file robots.txt. Nel mio caso la path ricorrente era la seguente:
/723uytz4t-11nz64061
ho modificato il mio file robots.txt affinchè non scansionasse le URLs contenti numeri (in questo caso è stato possibile in quanto nessuna delle URLs del sito web conteneva numeri come primo elemento nello slug.
/11501uytzds-21by85348
/6784uytze5-ea64qu2le-136
/20180uytz1572-0wu071696
/3066uytz0049qt3076
/6137uytzds-21ty78003
/21893uytzds-23ty90004
/28113zugt769zu7849
/26034zugt4384ag46190
/2582zugttrus-2ag671780
/13430zugttnob-2gg310716
/4076zugted51mz0218
/11793zugtts_35hu54309
/3439zugtc4yztcsn
/3541kqvoed18xq75853
- Eliminazione del malware: per eseguire questo importante step mi sono avvalso di uno strumento che reputo davvero potente nell’identificazione delle infezioni ed efficace nella risoluzione delle stesse. Il tool in questione si chiama Siteguarding (link affiliato) e diventerà il tuo miglior alleato quando si tratta di risoluzione di infezioni importanti. Come primo step puoi eseguire una scansione gratuita del tuo sito web a questo indirizzo. Dovrai lasciare la tua email e successivamente riceverai l’esito della scansione. Se l’esito è positivo sarà necessario registrarsi e acquistare un piano per la rimozione dei malware presenti. Il piano che vi offre la rimozione dei malware una tantum ha un costo base di circa 50€ (il prezzo varia a seconda di quanta urgenza avete nella risoluzione dell’infezione). Acquistato il piano sarà sufficiente inserire il proprio dominio, installare il codice o il plugin (in caso tu faccia uso di un CMS) e dopo aver verificato la corretta installazione dovrai lanciare nuovamente la scansione.
I risultati raggiunti
A distanza di circa un mese dall’intervento il sito ha ripreso a rankare completamente, riprendendo le posizioni in SERP precedentemente perse e migliorando il ranking per le altre parole chiave:
Per concludere
La sicurezza nel web veste un ruolo rilevante oggi giorno. Con la diffusione delle piattaforme CMS per lo sviluppo semplificato di siti web la vita degli hacker è stata resa ancora più semplice.
E’ sufficiente sfruttare una vulnerabilità presente nel codice di un CMS per bucare milioni se non miliardi di siti web.
Il mio suggerimento è sempre quello di prevenire anzichè ricorrere ai ripari e sfruttare servizi di terze parti affidabili come Siteguarding per proteggere in tempo reale il proprio sito web ed evitare di dover sostenere spese esorbitanti in un secondo momento.
Con il servizio messo a disposizione da Siteguarding puoi sottoscrivere anche un abbonamento di appena 4,95$ mese per avere un firewall sempre aggiornato sulle nuove vulnerabilità riscontrate in rete.
That’s all guys!