Come risolvere e prevenire gli attacchi XSS in WordPress

Pubblicato: 2022-06-14
How to fix and prevent xss attacks

Sei preoccupato che gli hacker attacchino il tuo sito web?

Il cross-site scripting, chiamato anche XSS, è uno degli attacchi più comuni ai siti WordPress. Gli hacker trovano le vulnerabilità sul tuo sito e le utilizzano per rubare informazioni e abusare del tuo sito web.

Quel che è peggio è che se non lo risolvi immediatamente, questi hack potrebbero causare danni più gravi, del tipo da cui è davvero difficile riprendersi.

Puoi prevenire questi hack installando un firewall sul tuo sito WordPress.

Se il tuo sito web è già sotto attacco, ti mostreremo come risolverlo subito in un linguaggio semplice e adatto ai principianti. Manterremo il gergo della sicurezza informatica al minimo in questo tutorial. Ti mostreremo anche come prevenire futuri attacchi.

Per prima cosa, capiamo rapidamente cosa succede in un attacco XSS in modo da essere meglio equipaggiato per gestirlo.

Che cos'è un attacco XSS in WordPress?

XSS sta per Cross Site Scripting, una sorta di attacco di iniezione in cui gli hacker iniettano script dannosi in un sito Web.

Questi script sono mascherati da codice valido su un sito Web affidabile. Successivamente, quando un utente atterra su questo sito Web, il suo browser esegue tutto il codice, incluso lo script dannoso, perché pensa che siano tutte istruzioni affidabili.

In termini più semplici, immagina di essere una spia e di aver appena ricevuto un'e-mail ufficiale dal governo su una missione top-secret. Contiene tutte le istruzioni da seguire fino al T.

Quello che non sai è che qualcuno ha intercettato quell'e-mail e ha aggiunto alcune istruzioni in più. Il governo non ne ha idea e non ti preoccupi di ricontrollare perché ti fidi della fonte.

Alcuni non hanno senso, ma sei addestrato a obbedire a ogni ordine per portare a termine la tua missione.

In questo scenario, il governo è il tuo sito Web e la spia è il browser dell'utente. Il browser segue le istruzioni del tuo sito Web e non è in grado di distinguere tra script buoni e cattivi.

Questi script sono solitamente in Javascript, uno dei linguaggi di programmazione più popolari e ampiamente utilizzati. Tuttavia, questi attacchi possono aver luogo utilizzando qualsiasi linguaggio lato client.

Ora ci sono molti modi per eseguire un attacco XSS. Un modo è inviare un collegamento a utenti ignari per convincerli a fare clic su di esso. Una volta cliccato su di esso, l'attacco può eventualmente eseguire una o più delle seguenti operazioni:

  • Reindirizza gli utenti a un sito dannoso
  • Cattura le sequenze di tasti dell'utente
  • Esegui exploit basati su browser web
  • Ruba le informazioni sui cookie dell'utente che ha effettuato l'accesso a un account

Se l'hacker è in grado di rubare le informazioni sui cookie, può compromettere completamente l'account dell'utente. Ad esempio, se hai effettuato l'accesso al pannello di amministrazione wp del tuo sito Web, l'hacker può rubare le tue credenziali e accedere al tuo sito.

Quello che devi fare per prevenire questi attacchi è assicurarti che tutti i dati degli utenti siano convalidati e disinfettati correttamente prima che entrino nel tuo sito web. In questo modo, nessun input dell'utente può essere codice Javascript dannoso. Inoltre, devi assicurarti che non ci siano vulnerabilità XSS sul tuo sito che possano consentire a un hacker di attaccare.

Abbiamo appena scalfito la superficie degli attacchi XSS, ma speriamo che tu abbia una comprensione decente di come funziona un attacco XSS di WordPress. Ora, se sospetti che il tuo sito sia stato violato, segui il nostro semplice tutorial passo passo di seguito.

Come trovare e risolvere un attacco XSS in WordPress

Per trovare qualsiasi tipo di malware o hack sul tuo sito, dovrai eseguire una scansione approfondita dell'intero sito Web, inclusi file e database.

Useremo Sucuri per scansionare e ripulire il tuo sito hackerato. Sucuri ti offre una solida configurazione di sicurezza che include un firewall, uno scanner di malware e un pulitore di malware.

Sucuri offre uno scanner di malware per siti Web gratuito che puoi installare all'interno del tuo sito WordPress accedendo a Plugin »Aggiungi nuovo scheda.

Si consiglia di utilizzare lo scanner lato server premium. Questo capovolgerà il tuo sito Web per trovare qualsiasi traccia di malware.

In aggiunta a ciò, ecco alcuni dei suoi punti salienti:

  • Monitora lo spam e gli script dannosi
  • Verifica la presenza di backdoor nascoste create dagli hacker
  • Rileva le modifiche apportate a DNS (sistema dei nomi di dominio) e SSL
  • Verifica la presenza di liste nere con motori di ricerca e altre autorità
  • Monitora il tempo di attività del sito web
  • Avvisi istantanei via e-mail, SMS, Slack e RSS

Per maggiori dettagli, leggi la nostra recensione di Sucuri.

Sucuri ha un prezzo di $ 199,99 all'anno. Se è fuori budget, puoi provare altri plugin di sicurezza. Guarda il nostro elenco: 9 migliori plugin di sicurezza per WordPress a confronto.

Durante la selezione di un plug-in di sicurezza, assicurati che ti fornisca tutte le funzionalità di sicurezza informatica necessarie per trovare e correggere le infezioni da malware e proteggere il tuo sito web.

Passaggio 1: scansione del tuo sito web

Per iniziare, dovrai iscriverti a un piano con Sucuri. Quindi, accedi alla dashboard di Sucuri dove puoi aggiungere il tuo sito.

Add site in Sucuri

Qui dovrai connettere il tuo sito web inserendo le tue credenziali FTP. Se non conosci le tue credenziali FTP, puoi ottenerle dal tuo host web.

Connect site to Sucuri

Quando il tuo sito è connesso, Sucuri eseguirà automaticamente una scansione approfondita del tuo sito web. Una volta terminato, ti mostrerà un rapporto dettagliato nella scheda "I miei siti" .

Sucuri dashboard site infected

Ora puoi fare clic sul pulsante "Dettagli" accanto al messaggio di avviso. Si aprirà la pagina Monitoraggio in cui è possibile visualizzare i dettagli dell'hacking o dell'infezione.

Passaggio 2: richiesta di rimozione malware

Nella pagina Monitoraggio , puoi vedere che tipo di malware ha infettato il tuo sito. Sucuri aggiunge un rating per indicare il livello di rischio. Quindi, se è un rischio critico o alto, sai che devi risolverlo immediatamente. In aggiunta a ciò, ti mostrerà anche se il tuo sito è stato inserito nella lista nera da qualsiasi motore di ricerca.

Clean up site with Sucuri

Ora che sai che il tuo sito è infetto, devi ripulirlo e Sucuri lo rende davvero facile per te. Per iniziare con il processo, fai clic sul pulsante "Pulisci il mio sito" .

Malware removal request in Sucuri

Nella pagina successiva, fai clic sul pulsante Nuova richiesta di rimozione malware e verrà visualizzato un modulo in cui puoi inserire i dettagli del tuo sito.

Malware removal request form in Sucuri

Basta compilare il modulo e inviarlo. Una volta fatto, gli esperti di sicurezza di Sucuri ripuliranno il tuo sito per te. Nel caso in cui non conosci nessuno dei dettagli necessari per il modulo, puoi richiederli al tuo host web.

Ora ti starai chiedendo quanto tempo ci vorrebbe per pulire il tuo sito.

Sucuri dà la prima preferenza agli utenti del piano Business. Assicurano un tempo di consegna di 6 ore. Per altri piani, dipende dalla complessità dell'infezione del tuo sito e dal volume di richieste che hanno in coda.

Immediatamente dopo un attacco, ti consigliamo vivamente di disconnettere tutti gli utenti dal tuo sito e di modificare le tue credenziali di accesso per essere al sicuro.

Come prevenire gli attacchi XSS sul tuo sito WordPress

È sempre meglio proteggere il tuo sito Web e prevenire questo tipo di attacchi di malware sul tuo sito. È molto più facile ed economico che cercare di riparare un sito Web violato. Ecco i nostri principali passaggi consigliati per prevenire gli attacchi XSS al tuo sito.

1. Abilita un Web Application Firewall (WAF)

Sucuri ha uno dei migliori firewall per i siti WordPress. Non solo blocca gli attacchi XSS, ma tutti i tipi di altri attacchi malware come DDoS, Brute Force, Phishing e SQL injection.

Il firewall si posizionerà davanti al tuo sito Web e analizzerà ogni utente che passa. Identificherà e bloccherà i robot dannosi prima che raggiungano il tuo sito.

Per abilitare il firewall Sucuri, vai alla scheda Firewall sulla dashboard di Sucuri.

Seleziona il tuo sito e vedrai le istruzioni di configurazione che puoi seguire. Sucuri ti offre 2 opzioni per configurare il firewall:

1. Integrazione automatica: inserisci semplicemente le tue credenziali di hosting utilizzando cPanel o Plesk. Questo metodo richiede che tu dia a Sucuri l'accesso al server del tuo sito web per configurare automaticamente il firewall sul tuo sito.

Sucuri firewall waf

2. Integrazione manuale: puoi configurare il firewall da solo senza concedere l'accesso interno a Sucuri. Per iniziare, fai clic sul collegamento del dominio interno e assicurati che venga caricato.

check internal domain link

Successivamente, puoi configurare il tuo DNS per indirizzare il tuo traffico web verso il firewall Sucuri. Per questo, dovrai accedere ai record DNS nel tuo account di hosting. Qui puoi modificare il record "A" del tuo sito e inserire gli indirizzi IP forniti da Sucuri.

sucuri dns ip addresses

Se sei stressato dal fatto che sia tutto troppo complicato, puoi chiedere aiuto al tuo host web e ti guideranno attraverso il processo. In aggiunta a ciò, puoi anche creare un ticket di supporto con Sucuri e il loro team di supporto ti aiuterà a modificare i record DNS.

Per aprire un ticket, troverai un link all'interno delle istruzioni del manuale nella stessa pagina.

open a ticket sucuri

Una volta terminata la configurazione del firewall, di solito sono necessarie alcune ore prima che le modifiche si riflettano. Puoi aspettarti un tempo di attesa massimo di 48 ore.

Quando abiliti il ​​firewall, aggiungerà automaticamente le intestazioni di sicurezza al tuo sito per proteggerlo dagli attacchi XSS.

Se c'è un tentativo di attacco XSS, Sucuri lo bloccherà e te lo segnalerà nella scheda Rapporti .

Ora, ciò che amiamo del firewall Sucuri è che è così facile da usare per chiunque, compresi i principianti. Non devi essere un esperto di sicurezza informatica o conoscere alcun codice.

Puoi abilitare tutti i tipi di funzionalità di protezione con un semplice clic nella scheda Impostazioni »Sicurezza .

Ad esempio, puoi abilitare la protezione DDoS e il geoblocking per rendere più difficile per gli hacker attaccare il tuo sito.

Emergency ddos protection

Per abilitare una funzione di sicurezza qui, tutto ciò che devi fare è selezionare la casella e salvare le tue impostazioni. Quando devi disabilitarlo, devi semplicemente deselezionare la casella.

A parte questo, il plugin Sucuri:

  • Scansiona e monitora regolarmente lo spam e il codice dannoso
  • Avvisarti di qualsiasi vulnerabilità di scripting tra siti
  • Blocca bot e hacker dannosi
  • Verifica la presenza di liste nere con motori di ricerca e altre autorità
  • Monitora il tempo di attività del sito web
  • Rileva le modifiche apportate a DNS (sistema dei nomi di dominio) e SSL
  • Invia avvisi di sicurezza immediati tramite e-mail, SMS, Slack e RSS

Quindi il tuo sito sarà protetto in ogni momento.

2. Usa moduli protetti

Su un sito Web vulnerabile, i moduli sono uno degli obiettivi più comuni per gli hacker. Se il tuo modulo non è protetto, significa che chiunque può semplicemente inserire codice dannoso nei campi del modulo.

La nostra raccomandazione per proteggere i moduli del tuo sito Web è WPForms. È il generatore di moduli n. 1 di WordPress che ha una sicurezza integrata in modo che i tuoi moduli siano protetti fin dall'inizio.

anti spam protection in WPForms

Per impostazione predefinita, i moduli hanno la protezione antispam attivata. Inoltre, puoi persino aggiungere CAPTCHA ai tuoi moduli per bloccare i bot spam.

Advanced noCaptcha and Invisible Captcha

Puoi abilitare un captcha invisibile o il tipo in cui un utente dovrà risolvere un piccolo enigma o spuntare una casella per dimostrare di essere umano.

3. Impostare le autorizzazioni del ruolo utente

Quando più persone lavorano sul tuo sito Web, non è saggio concedere a tutti l'accesso come amministratore. È meglio assegnare loro ruoli in base alle autorizzazioni di cui hanno bisogno.

WordPress ti consente di creare ruoli per:

  • Super amministratore
  • Amministratore
  • Editore
  • Autore
  • Collaboratore
  • Abbonato

Ora, se un hacker ottiene il controllo sull'account di un utente, sarà limitato in ciò che può fare sul tuo sito.

4. Disconnessione automatica degli utenti inattivi

Gli hacker possono accedere agli account utente dirottando le sessioni del browser e rubando i cookie.

Puoi ridurre al minimo questo rischio disconnettendo gli utenti WordPress inattivi.

Molti plug-in di sicurezza hanno una funzione di disconnessione della sessione inattiva oppure puoi utilizzare il plug-in di disconnessione inattiva.

5. Aggiorna regolarmente il tuo sito web

I plugin, i temi e persino l'installazione di WordPress vengono aggiornati regolarmente. Li vedrai all'interno della dashboard di WordPress quando saranno disponibili:

updates in wordpress

Molti proprietari di siti Web ignorano gli aggiornamenti per molto tempo, ma ciò può esporre il tuo sito Web agli hacker. Gli aggiornamenti di solito portano correzioni di bug, nuove funzionalità e miglioramenti al software. Possono anche avere patch di sicurezza. Puoi vedere se un aggiornamento contiene una patch di sicurezza visualizzando i dettagli dell'aggiornamento.

view version details of update

Ciò significa che è stata rilevata una vulnerabilità nel software che gli hacker possono utilizzare per attaccare il tuo sito. Quando gli sviluppatori trovano problemi di sicurezza, li riparano e rilasciano una nuova versione del software.

Tutto quello che devi fare è aggiornare il software sul tuo sito.

Quindi, se vedi che si tratta di una patch di sicurezza, aggiornala immediatamente per evitare qualsiasi rischio di essere violato.

security update

Uno dei motivi principali per cui i proprietari di siti ignorano gli aggiornamenti è che a volte possono danneggiare il tuo sito o causare problemi di incompatibilità. Ti consigliamo di testare l'aggiornamento su un sito di staging e quindi eseguirlo sul tuo sito live.

Con ciò, hai imparato come correggere e prevenire gli attacchi XSS sul tuo sito WordPress.

Prima di concludere, ti daremo un altro consiglio sulla sicurezza. Fai sempre backup regolari del tuo sito web.

Anche con le misure di sicurezza più efficaci sul tuo sito, ci sono molte cose che possono andare storte. Ad esempio, un utente può commettere un semplice errore umano che manda in crash il tuo sito web.

Puoi impostare backup automatici utilizzando un plug-in di backup come UpdraftPlus. Per ulteriori opzioni, consulta il nostro elenco dei migliori plug-in di backup di WordPress.

Domande frequenti

1. WordPress è vulnerabile agli attacchi di scripting cross-site?

Il core software di WordPress è sviluppato e mantenuto da alcuni dei migliori esperti al mondo. Il loro software è piuttosto solido, ma tieni presente che nessun software è esente da vulnerabilità.

Il motivo per cui i siti Web WordPress vengono attaccati spesso è che la piattaforma è così popolare. E la maggior parte degli utenti installa tonnellate di temi e plugin di terze parti. Le vulnerabilità possono svilupparsi in ognuno di questi elementi e gli hacker possono sfruttarli per hackerare il tuo sito.

2. Esistono diversi tipi di attacchi di scripting tra siti?

Sì. Esistono 3 tipi principali di attacchi XSS:

  • XSS memorizzato (noto anche come XSS persistente): gli aggressori archiviano il loro carico utile su un server compromesso, facendo sì che il sito Web fornisca codice dannoso ad altri visitatori.
  • XSS riflesso: il payload è memorizzato nei dati inviati dal browser al server.
  • DOM XSS: qui, il server stesso non è quello vulnerabile a XSS, ma piuttosto il JavaScript sulla pagina lo è.
  • Self cross-site scripting: gli aggressori possono sfruttare una vulnerabilità che richiede un contesto davvero specifico e modifiche manuali. La vittima qui puoi essere solo te stesso.
  • Blind cross-site scripting: in questi attacchi, la vulnerabilità risiede comunemente in una pagina a cui possono accedere solo gli utenti autorizzati. L'attaccante non può vedere il risultato di un attacco.

3. Come posso assicurarmi che non ci siano altri problemi di sicurezza sul mio sito?

Assicurati di avere sempre un plug-in di sicurezza installato sul tuo sito web. Questo è un must per tutti i tipi di siti Web, inclusi WooCommerce, blog e siti di piccole imprese. Consigliamo Sucuri, ma puoi anche dare un'occhiata a Wordfence, MalCare e SiteLock. Vedi altri dei nostri migliori consigli qui: 9 migliori plugin di sicurezza per WordPress a confronto.

Questo è tutto ciò che abbiamo per te oggi. Ci auguriamo che questo post ti abbia fornito tutto ciò di cui hai bisogno per proteggere il tuo sito web.

Per ulteriori informazioni sulla sicurezza del sito Web, consulta le nostre risorse su:

  • La guida completa alla sicurezza di WordPress (per principianti)
  • 5 migliori scanner di vulnerabilità di WordPress per trovare le minacce
  • 9 migliori plugin per il registro delle attività per monitorare e controllare il tuo sito WordPress

Questi post ti daranno più modi per sigillare le vulnerabilità e proteggere il tuo sito Web da tutti i rischi.