Plugin per la sicurezza di WordPress: ne avete bisogno?
Pubblicato: 2023-03-24Con Google che fornisce oltre 22 milioni di risultati per "plug-in di sicurezza WordPress" e oltre 1.000 plug-in di sicurezza elencati nella pagina ufficiale dei plug-in di WordPress, non si può negare la loro popolarità. Ma la vera domanda è:ne hai davvero bisogno sul tuo sito per cominciare?
In virtù del solo nome e di ciò che sono pubblicizzati come in grado di fare per il tuo sito, alcune soluzioni in questo spazio si stanno posizionando come plug -in indispensabili per garantire che WordPress funzioni in modo sicuro.Presumibilmente, in modo che tu possa smettere di preoccuparti del tutto della sicurezza.
Questo è lontano dalla realtà.
In effetti, l'utilizzo di un plug-in di sicurezza WordPress mal costruito può effettivamente rallentare il tuo sito, aggiungendo funzionalità che dovrebbero realisticamente verificarsi a livello di rete prima ancora che la richiesta debba essere elaborata dal tuo server.
Quindi, senza ulteriori indugi, tuffiamoci subito.
Hai bisogno di un plugin per la sicurezza di WordPress?
Ogni sito Web è un potenziale bersaglio per hacker malintenzionati, alcuni obiettivi più grandi di altri. Questo non è un segreto.
La popolare pubblicazione Fast Company di recente (al momento in cui scrivo)ha subito una violazione dei propri sistemi da parte di qualcuno che ha proceduto all'invio di notifiche offensive di Apple News.
Le persone che cercano di ottenere l'accesso a siti con intenti dannosi non prendono necessariamente di mira aziende più grandi. Le piccole e medie imprese potrebbero potenzialmente rappresentare un bersaglio più facile se lo assumessero, magari prendendo di conseguenza meno precauzioni.
Al di là della seccatura di affrontare la situazione, il tempo perso e la perdita di entrate che il tuo sito avrebbe potuto generare mentre rimaneva inaccessibile, le aziende hanno l'obbligo legale di proteggere le informazioni dei clienti. Questo obbligo comporta il rischio di un'azione normativa.
Inutile dire che nessuno vuole essere vittima di un attacco. Ma dato che l'ecosistema globale dei siti WordPress è stato valutato indipendentemente a circa $ 635,5 miliardi (USD), non sorprende che vendere la promessa di sicurezza si sia rivelata una buona opportunità di business.
In che modo gli hacker attaccano i siti WordPress
WordPress è open-source, quindi le vulnerabilità scoperte nel core di WordPress e qualsiasi tema o plug-in alla fine diventano di dominio pubblico. Sfortunatamente, questo può accadere prima che WordPress sia in grado di rilasciare una patch per la vulnerabilità, creando una finestra di opportunità per coloro che hanno cattive intenzioni. I cattivi attori sono ben consapevoli di questa opportunità, che consente loro di iniziare a prendere di mira automaticamente i siti chepotrebberoeseguire il tema o il plug-in vulnerabile, per vedere cosa è possibile.
Anche senza queste vulnerabilità, è abbastanza comune che sia le persone che i bot utilizzino attacchi di forza bruta per tentare di ottenere l'accesso a un sito. Ciò comporta l'invio ripetuto di più richieste di accesso nel tentativo di identificare gli account utente che utilizzano combinazioni di nome utente e password predefinite o comuni.
Esistono molti modi possibili in cui un sito WordPress può essere violato, motivo per cui è così importante un approccio ampio a livello di server .Alcuni dei rischi di hacking più probabili includono quanto segue:
Attacchi di forza bruta : questo tipo di attacco comporta il tentativo ripetuto di diverse combinazioni di nome utente e password nel tentativo di ottenere l'accesso al pannello di amministrazione di un sito.
SQL Injection : questo tipo di attacco comporta l'inserimento di codice dannoso nel database di un sito Web, che può quindi essere utilizzato per rubare informazioni sensibili o interrompere la funzionalità del sito.
Cross-Site Scripting (XSS) : questo tipo di attacco comporta l'inserimento di codice dannoso in un sito Web, che viene quindi eseguito dal browser dell'utente.Questo può essere utilizzato per rubare informazioni sensibili, come le credenziali di accesso, o per reindirizzare gli utenti a un sito Web dannoso.
Iniezione di file : questo tipo di attacco comporta il caricamento di file dannosi su un sito Web, come backdoor o malware.Questi file possono quindi essere utilizzati per ottenere l'accesso non autorizzato al sito.
Software obsoleto : se un sito Web non viene aggiornato regolarmente, potrebbe presentare vulnerabilità che possono essere sfruttate dagli hacker.
Phishing : questo tipo di attacco induce gli utenti a fornire informazioni sensibili come credenziali di accesso, numeri di carte di credito e altre informazioni personali creando una falsa pagina di accesso.
Perché i plugin di sicurezza non sono la scelta intelligente
In virtù di come funzionano i plugin, funzionano solo quando una richiesta raggiunge il server. Ciò significa che è possibile solo per il plug-in di sicurezza sfidare le cose a livello di PHP. Ad esempio, questo potrebbe includere un accesso con qualche meccanismo per impedire possibili accessi non autorizzati una volta che il server ha ricevuto la richiesta.
Il risultato di ciò è, ovviamente, il consumo di risorse del server aggiuntive su ogni richiesta al server poiché si trova tra la richiesta e l'inizio dell'elaborazione dell'output. Evidentemente, questo non è nemmeno infallibile: pluginvulnerabilities.com ha testato 31 plugin di sicurezza contro una vulnerabilità zero-day e solo 6 di loro sono stati in grado di respingere l'attacco.
I plugin di sicurezza di WordPress devono essere caricati completamente prima di poter iniziare a elaborare il traffico. Ciò significa che questi plugin consumeranno risorse anche se il tuo sito web non è sotto attacco .
Inoltre, non è raro che i plug-in di sicurezza di WordPress abbiano le proprie vulnerabilità e anche queste possono essere sfruttate dagli hacker.
Ad esempio, Wordfence, un popolare plug-in di sicurezza con oltre 4 milioni di utenti, ha segnalato molteplici vulnerabilità, come Cross Site Scripting e Broken Access Control nel corso degli anni. Queste vulnerabilità sono state rapidamente corrette, ma questo non cambia il fatto che i sistemi sono stati esposti, anche se per un breve periodo.
C'è anche il pericolo che i plugin di sicurezza possano creare un falso senso di sicurezza .È già successo che un amministratore del sito installasse un popolare plug-in di sicurezza, credendo che avrebbe protetto il proprio sito da tutti i tipi di attacchi, trascurando altre importanti misure di sicurezza come aggiornamenti regolari del software, password complesse, autenticazione a due fattori e backup.
Un altro problema che abbiamo riscontrato è dove i plug-in di sicurezza causanoproblemi di compatibilità con temi esistenti o altri plug-in.In alcuni casi, questo conflitto può portare a lasciare il tuo sito vulnerabile agli attacchi.
Ed è anche abbastanza comune riscontrarefalsi positivi utilizzando i plug-in di sicurezza.I plug-in eccessivi possono contrassegnare azioni legittime come dannose, il che può portare a falsi allarmi e disagi per amministratori e utenti.
La linea di fondo è che quando si tratta della sicurezza del tuo sito WordPress,non esiste una soluzione plug-in che puoi utilizzare per set-it-and-forget-it .La sicurezza è una bestia organica in evoluzione che necessita di una vigilanza costante.
Ci sono plugin di sicurezza che vale la pena usare?
Quindi, come proteggere un sito Web WordPress?
Per cominciare, lavora con un provider di hosting WordPress che offre competenza in termini di sicurezza, scalabilità e prestazioni, proprio come facciamo noi di Servebolt. Ci occupiamo del lavoro pesante relativo alla protezione completa dell'infrastruttura sottostante per i tuoi siti.
Oltre a ciò, desideri che tutte le richieste dannose (e potenzialmente dannose) vengano bloccate prima ancora che raggiungano il tuo server , prima che abbiano l'opportunità di consumare risorse in modo da poter offrire la migliore esperienza possibile peri visitatori reali del sito web.
Un esempio di questo tipo di soluzione è Cloudflare. Cloudflare è una società che fornisce una varietà di servizi di sicurezza Internet, tra cui un Content Delivery Network (CDN), un Domain Name System (DNS) e un Web Application Firewall (WAF). Questi servizi lavorano insieme per proteggere i siti Web da diverse forme di attacco informatico, come attacchi DDoS, SQL injection e cross-site scripting (XSS). Cloudflare offre anche funzionalità aggiuntive come la crittografia SSL/TLS, nonché un sistema di gestione dei bot per migliorare ulteriormente la sicurezza di un sito web.
In Servebolt, oltre a questo approccio, offriamo due servizi proattivi gestiti, Accelerated DomainseServebolt CDN, che possono rafforzare la sicurezza del tuo sito web.Si basano sull'offerta Enterprise di Cloudflare e offriamo due domini gratuiti a tutti i clienti che si registrano.
Utilizziamo entrambi i prodotti di sicurezza basati su server, oltre a basarci sul WAF di Cloudflare quando viene implementato tramite noi. Aggiungiamo ulteriori misure di sicurezza per ridurre i tentativi di hacking, oltre a impedire l'accesso diretto al server quando si utilizza Cloudflare per ridurre i tentativi di hacking a forza bruta. Queste misure sono configurate per bloccare automaticamente le richieste potenzialmente dannose e non richiedono alcuna configurazione o manutenzione .
A parte questo, alcuni plugin possono migliorare la sicurezza del tuo sito, sebbene questi non forniscano in alcun modo una soluzione completa:
- Two-Factor :questo plugin è sviluppato dal team di WordPress e abilital'autenticazione a due fattoriutilizzando password monouso basate sul tempo (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), e-mail e verifica del backup codici.
Se le tue credenziali vengono trapelate su Internet, il tuo server può essere violato anche se la maggior parte del traffico dannoso è bloccata da un firewall.Consigliamo vivamente di utilizzare l'autenticazione a due fattori per scoraggiare i malintenzionati.
Un'alternativa che utilizziamo in Servebolt è Cloudflare Access .
- Patchstack eWPScan:uno scanner di vulnerabilità come Patchstack o WPScan può essere utile per tenere traccia delle vulnerabilità. WP Scan, ad esempio, verifica continuamente la presenza di minacce al tuo server rispetto a un database noto di oltre 37.000 vulnerabilità gestito dai professionisti della sicurezza di WordPress. Se viene rilevata una minaccia, può attivare unanotifica via e-mail o utilizzando un webhook personalizzato con tutte le informazioni e i consigli necessari per risolvere il problema.
Suggerimenti per rafforzare il tuo sito WordPress
L'utilizzo di domini accelerati o Servebolt CDN protegge il tuo sito da molti attacchi noti. Implementano automaticamente la limitazione della velocità di accesso e XML-RPC per proteggersi da attacchi di forza bruta dannosi sulla pagina di accesso del tuo sito. Ma puoi migliorare ulteriormente la tua sicurezza implementando le seguenti pratiche di sicurezza aggiuntive sul tuo sito web.
Limitazione dell'accesso ai file
Ogni file e cartella sul tuo server ha diritti di accesso ad esso associati che specificano chi può leggere, scrivere ed eseguire il file o la directory specificati. Anche se avere autorizzazioni aperte sulle risorse pubbliche del tuo sito potrebbe non sembrare un grosso problema, è sicuramente una cattiva pratica. Inoltre, alcuni file sensibili, come .htaccessewp-config.php,dovrebbero essere bloccati in modo sicuro.
Ti consigliamo di bloccare il più possibile tutti i file sensibili e di allentare brevemente queste autorizzazioni solo quando è assolutamente necessario.
Per.htaccess, dovresti cambiare il livello di autorizzazione a 644 – questo concederebbe al proprietario del file l'accesso in lettura e scrittura, con tutti gli altri utenti in grado solo dileggereil file.
Puoi limitare ulteriormente queste autorizzazioni per il filewp-config.phpimpostando la modalità di autorizzazione su400 o 440, il che significa che solo il proprietario (o, facoltativamente, anche altri membri del gruppo selezionato) può leggere il file, mentre le modifiche può essere effettuato solo dall'utente root.
Diamo uno sguardo dettagliato ai requisiti di autorizzazione per specifiche directory di WordPress:
- Directory principale di WordPress (/):
Tutti i file, ad eccezione di.htaccess, dovrebbero essere scrivibili solo dal tuo account: imposta la modalità di autorizzazione su 644 per tutti i file tranne.htaccess.
- Area amministrazione WordPress (/wp-admin/):
Tutti i file dovrebbero essere scrivibili solo dal tuo account: imposta la modalità di autorizzazione su 644 per tutti i file.
- Logica dell'applicazione WordPress (/wp-includes/):
Tutti i file dovrebbero essere scrivibili solo dal tuo account: imposta la modalità di autorizzazione su 644 per tutti i file.
- Contenuto fornito dall'utente (/wp-content/):
Questa directory è pensata per essere scrivibile sia da te che dal processo del server Web: imposta la modalità di autorizzazione su 664 per tutti i file.
Tuttavia, all'interno della directory /wp-content/, potresti trovare:
- File dei temi (/wp-content/themes/):
Se desideri utilizzare l'editor di temi integrato, tutti i file devono essere scrivibili dal processo del server web. Se non è necessario utilizzare l'editor, tutti i file possono essere scrivibili solo dal proprio account utente.
- File plugin (/wp-content/plugins/):
Tutti i file dovrebbero essere scrivibili solo dal tuo account utente. Tuttavia, alcuni plug-in di terze parti potrebbero richiedere l'accesso in scrittura. Ti consigliamo di rimuovere i permessi di scrittura e di concederli solo a plug-in specifici caso per caso.
Disabilita l'esecuzione di file PHP nelle directory selezionate
Puoi migliorare ulteriormente la sicurezza del tuo sito Web WordPress limitando l'esecuzione di file PHP nelle directory in cui non è necessario.
La prima posizione in cui dovresti disabilitarlo è la tua cartella/wp-content/perché un utente potrebbe caricare uno script PHP dannoso e provare a eseguirlo.
Puoi disabilitare l'esecuzione di PHP creando un file chiamato.htaccessnella cartella desiderata e incollandovi il seguente codice:
<File *.php> negato da tutti </File>
Il codice precedente crea una regola che vieta l'esecuzione di qualsiasi file PHP nella directory specificata. Ciò significa che anche se un hacker inserisce codice PHP dannoso in un file, non può essere eseguito sul server, prevenendo eventuali danni al tuo sito web.
Disabilita l'indicizzazione e la navigazione nella directory
La navigazione nelle directory è una funzionalità dei server Web che mostra tutti i file e le directory disponibili in una determinata directory di un sito Web. Se abilitato, chiunque su Internet può vedere tutti i contenuti su qualsiasi percorso del sito web. Questo è un grave rischio per la sicurezza in quanto può rivelare informazioni riservate e configurazione del server.
Ad esempio, se qualcuno visitasse https://www.example.com/static , sarebbe in grado di vedere (e scaricare) tutti i file presenti in questo percorso. Si consiglia vivamente di disattivare questa funzione. Puoi farlo aggiungendo la seguente riga al tuo file.htaccess.
Opzioni -Indici
Usa Fail2ban per fermare gli attacchi di forza bruta
Fail2ban è un'utilità per server in grado di creare dinamicamente regole firewall per bloccare gli indirizzi IP in base a una condizione predefinita. Puoi usarlo con WordPress per bloccare temporaneamente un utente se non riesce ad accedere 3 volte di seguito.
Non utilizzare il nome utente "admin".
Per un hacker, un account con privilegi amministrativi equivale ai gioielli della corona: gli account amministratore possono sbloccare tutte le porte del server. Non sorprende che questo sia il primo account preso di mira dagli hacker. È una buona idea utilizzare un nome diverso per questo account amministratore per rendere questo processo più difficile per loro e scoraggiare eventuali attacchi di forza bruta.
Se stai ancora utilizzando il nome utente "admin", dovresti creare un secondo account con un nome diverso e concedergli l'accesso come amministratore.Accedi al tuo secondo account ed elimina il vecchio account amministratore.
Limitazione dei privilegi degli utenti del database
La sicurezza del database è di fondamentale importanza per qualsiasi sito web. Quando installi più siti sul tuo server, crea database e utenti separati per ciascun sito. Ciò rende più difficile per gli intrusi ottenere l'accesso al sistema completo e rubare informazioni personali.
Dovresti anche configurare correttamente i privilegi dell'account MySQL e disabilitare tutte le funzionalità non necessarie, come la connessione TCP remota. È inoltre possibile limitare i tentativi di accesso se l'utente del database non si trova in una posizione autorizzata. Ad esempio, è possibile bloccare l'accesso alle connessioni root se la connessione non è stata avviata sull'host locale.
Inoltre, WordPress richiede solo i permessi di lettura e scrittura su un database MySQL per le normali funzioni. Se concedi solo SELECT, INSERT, UPDATE e DELETE all'utente del tuo database, tutto funzionerà comunque correttamente. Tuttavia, a volte i plug-in di terze parti e gli aggiornamenti di WordPress potrebbero causare errori quando tentano di modificare lo schema del database o di creare una nuova tabella. Leggi attentamente le note di rilascio e la documentazione di ciascun plug-in se stai utilizzando questa misura di sicurezza.
Cambia l'URL wp-admin
Per rendere più difficile per gli hacker lanciare attacchi di forza bruta sul tuo sito WordPress, prendi in considerazione la possibilità di modificare l'URL predefinito della tua dashboard di amministrazione in qualcosa di oscuro. Per fare ciò, puoi utilizzare un plug-in come WPS Hide Login o Change wp-admin login , che ti consente di personalizzare facilmente il tuo URL di accesso.
Disabilita la modifica dei file
La funzione di modifica dei file in WordPress consente agli amministratori di modificare i file dei temi e dei plug-in direttamente dalla dashboard. Sebbene sia utile durante la configurazione del sito, ciò può rappresentare un rischio per la sicurezza se l'account dell'amministratore viene compromesso. La disabilitazione della funzionalità di modifica dei file mitiga questo rischio.
Ciò ridurrà anche le modifiche accidentali e imporrà una migliore documentazionedelle modifiche, poiché tutte le nuove revisioni verranno tracciate sul controllo della versione e dovranno essere sottoposte a test prima di essere pubblicate sul sito.
Per disabilitare la modifica dei file in WordPress, puoi aggiungere la seguente riga di codice al file wp-config.php del tuo sito:
definire ('DISALLOW_FILE_EDIT', true );
Modifica del prefisso del database
WordPress utilizza una stringa di testo comune in tutti i nomi delle tabelle per facilitare l'identificazione. La modifica di questo prefisso rende difficile per gli attori malintenzionati indovinare i nomi delle tabelle durante l'esecuzione di attacchi SQL injection e altre forme di exploit del database.
Sebbene possa sembrare un piccolo e insignificante miglioramento, la maggior parte degli attacchi su Internet viene eseguita da robot automatizzati che mirano solo a frutti a basso impatto. Modificando il valore predefinito, puoi difenderti dalla maggior parte degli attacchi automatici .
Il prefisso del database corrente è memorizzato nel file wp-config.php nella directory principale di WordPress. Il valore predefinito è simile a questo.
$table_prefix = 'wp_';
Puoi sostituire il prefisso "wp_" con un nuovo prefisso univoco a tua scelta. Tieni presente che puoi utilizzare solo lettere, numeri e caratteri di sottolineatura. Per esempio:
$table_prefix = 'my_custom_prefix_123_';
Dopo aver salvato le modifiche al file wp-config.php, dovrai aggiornare manualmente le tabelle SQL esistenti con i nuovi nomi. Se non sei sicuro di come farlo, puoi utilizzare un plug-in come Brozzme DB Prefix .
Disconnette automaticamente gli utenti inattivi
L'implementazione di una funzione di disconnessione automatica in WordPress può aiutare a migliorare la sicurezza del tuo sito terminando automaticamente le sessioni degli utenti dopo un determinato periodo di inattività. Questa funzione può aiutare a prevenire l'accesso non autorizzato al tuo sito nel caso in cui un utente dimentichi di disconnettersi o se lascia il proprio dispositivo incustodito.
Per implementare una funzione di disconnessione automatica in WordPress, puoi utilizzare un plug-in come Inactive Logout . Ciò contribuirà a proteggere la privacy degli utenti garantendo che le informazioni sensibili non siano accessibili a persone non autorizzate.
Rapporto post-azione: agisci oggi stesso per proteggere il tuo sito e la tua reputazione
30.000 siti Web vengono violati ogni giorno e con WordPress che alimenta il 43% del Web, il che rappresenta un possibile numero di 12.900 siti WordPress gravemente compromessi ogni singolo giorno.
Sfortunatamente, i consigli disponibili online che descrivono in dettaglio come proteggere un sito WordPress sono vaghi, obsoleti o semplicemente sbagliati. È questo cattivo consiglio, la dipendenza esclusivamente da plug-in di terze parti e il presupposto che una volta impostata la sicurezza, puoi dimenticartene, che si traduce in così tante di queste violazioni.
Anche se la sicurezza non è mai "finita", non deve essere un mal di testa e la maggior parte dei consigli in questo articolo è abbastanza semplice per la maggior parte. Naturalmente, avere una solida società di web hosting che prende la sicurezza sul serio come dovrebbe è un primo passo importante per la maggior parte degli utenti.
Hai domande su come proteggere i tuoi siti WordPress?Sentiti libero di metterti in contatto con noi e saremo felici di illustrarti come Servebolt Cloud può aiutarti a offrire la migliore esperienza possibile ai tuoi visitatori. Oppure, se questa guida ha già risposto a tutte le tue domande e sei pronto a provare l'approccio Servebolt...
Ti interessa un hosting gestito empiricamente più veloce? Prova il nostro approccio all'hosting WordPress :
- Scalabilità: nei test del carico di lavoro dell'utente reale, Servebolt ha fornito tempi di risposta medi di 65 ms, tempi di risposta 4,9 volte più rapidi rispetto al secondo migliore.
- I tempi di caricamento globali più veloci: i tempi medi di caricamento delle pagine di 1,26 secondi ci collocano in cima all'elenco dei risultati globali di WebPageTest.
- La massima velocità di elaborazione: i server Servebolt forniscono velocità di database mai viste prima, elaborando 2,44 volte più query al secondo rispetto alla media ed eseguendo PHP 2,6 volte più velocemente del secondo migliore!
- Sicurezza e tempo di attività perfetti: con un tempo di attività del 100% su tutti i monitor e una valutazione A+ sulla nostra implementazione SSL, puoi essere certo che il tuo sito è online e sicuro.