WordPress e sicurezza – Guida per proteggere il vostro sito wordpress

Condividi su twitter
Condividi su linkedin
sicurezza wordpress 2020

Tabella dei Contenuti

WordPress è UNA PIATTAFORMA SICURA ?

Un’installazione standard di WordPress non garantisce un alto livello di sicurezza del sito, fortunatamente esistono delle procedure di non difficile attuazione per diminuire alcune vulnerabilità. Che sia un sito vetrina o un e-commerce più complesso, oggi vi scrivo alcuni passi fondamentali per rimanere protetti.

WordPress è la piattaforma più popolare per la costruzioni di siti web, di conseguenza è anche il target più succoso per gli hacker. Nella maggior parte dei casi, le criticità sono dovute al fatto che gli utenti seguono quelle che si sono dimostrate le peggiori pratiche in ambito di sicurezza.

Mancati aggiornamenti, plugin obsoleti, cattiva gestione delle credenziali, password deboli. Fondamentalmente una sicurezza del 100% non esiste, è molto difficile avere sistemi perfetti. E’ bene intendere la sicurezza come riduzione del rischio, non l’eliminazione totale dello stesso.

Come detto prima WordPress è la piattaforma maggiormente usata, pertanto quella che subiscie la maggior parte degli attacchi. Secondo uno studio effettuata da Sucuri, un’azienda specializzata nella sicurezza multipiattaforma, WordPress guida la classifica dei siti web infetti su cui ha lavorato nel corso del 2017. Come potete leggere, l’83% dei siti infetti era su piattaforma WordPress.

Ora è bene che non vi facciate spaventare da questi dati. E’ opportuno fare la giuste proporzioni. WordPress fa girare il 37,5% dei siti mondiali. Joomla e Shopify, i più vicini inseguitori, si attestano sul 2,5%. E il distacco aumenta anno dopo anno.
WordPress dispone di centinaia di miglaia di combinazioni di temi e plugin quindi non ci sorprende che le vulnerabilità esistano. Fortunatamente esiste una grande community che lavora per rimediare a queste vulnerabilità.
Introduzione finita, inziamo subito con la pratica

Guida pratica alla Sicurezza di WordPress 2020

1. Scegliete un Servizio di Hosting Performante e Sicuro

Questo è il primo passo, il più facile ma anche uno dei più importanti. L’hosting che selezionerete è responsabile della sicurezza lato server, quindi maggiori garanzie vi darà il vostro hosting, meglio dormirete. Quindi considerate bene l’investimento da fare, esistono Hosting da 10 € l’anno, ma anche quelli da 20 € mensili. Naturalmente i costi sono distribuiti in base ai servizi offerti: Visite mensili, memoria SSD, backup giornalieri, rimozione hack e malware, area di staging, php worker, CDN, certificati SSL, connessioni SFTP e SSH, per citarne qualcuno. 

Se vi state affacciando ora al mondo web e volete solo sperimentare con un sito vetrina potete accontentarvi di un hosting che vi garantisca il minimo indispensabile. Se invece il vostro sito rappresenta una percentuale importante del vostro business, bene, non risparmiate sull’hosting. In fin dei conti provate Site Ground che, anche con il servizio base, vi fornisce una buona infrastruttura. Oppure, se potete, puntate subito un hosting più costoso e performante, come Kinsta o Digital Ocean.

2. Utilizzate la versione più recente di PHP

WordPress è una piattaforma principalmente scritta in un linguaggio PHP, di conseguenza è molto importante che utilizziate l’ultima versione di PHP sul vostro server. Per aggiornare la versione php basta entrare nel pannello di amministrazione del vostro hosting e selezionare la versione php più recente. Ogni hosting ha un un suo metodo, ma non è mai un’operazione complessa.

Perché è importante utilizzare la versione PHP più aggiornata?
Ogni nuova release di PHP è pienamente supportata nei successivi due anni e in questo lasso di tempo gli sviluppatori propongono correzioni e miglioramenti per ovviare a bug e problemi di sicurezza di vario genere. Quindi ciò che vi deve essere chiaro è che se avete una versione php più vecchia di due anni, sappiate che non riceve più alcun supporto per la sicurezza e siete quindi più esposti ad attacchi e vulnerabilità.

Nonostante l’operazione non sia difficoltosa, secondo le fonti WordPress Satistics, il 5,2% dei siti WordPress corre su php 7.4, il 25,6% su php 7.3, il 24,2% su php 7.1. Una volta che avete realizzato un sito, per voi o per i vostri clienti, è importante che consideriate la manutenzione dello stesso.

Volete sapere come verificare quale sia la versione php che state utilizzando?
Installate la plugin Display Php Version e vedrete la versione php in uso direttamente dalla vostra dashboard di wordpress.
Controllate sul pannello di amministrazione del vostro hosting.

  • A) Versione facile facile. Installate la plugin Display Php Version e vedrete la versione php in uso direttamente dalla vostra dashboard di wordpress.
  • B) Versione facile. Controllate sul pannello di amministrazione del vostro hosting. Troverete un menu dedicato alla versione php in uso e relativo aggiornamento.

3. usate Username e Password Intelligenti

Quali sono le password più “bucate” nel 2019 ? Sorprenidti ! ‘12345’, ‘123456’ e ‘123456789’ sono le password più frequentemente usate e rubate nel corso del 2019 relativamente a circa 6.3 milioni di account.

Fortunatamente molte installazioni di WordPress vi obbligano ad usare una password più sicura, in alternativa potete divertirvi con questo strumento online, Strong Password Generator.
Se gestite molte password vi consiglio l’uso di un tool gratuito, KeePass, per tenerle ordinate e al sicuro in locale. Altrimenti se preferite un tool online potete provare 1Password o LastPass.

Naturalmente non usate mai il nome utente predefinito “admin”. Create sempre un nuovo nome utente, con permessi di amministratore e successivamente eliminate l’utente “Admin” originale. Assicuratevi, quando fate clic su Elimina, di selezionare l’opzione “Attribuisci tutto il contenuto a” e di selezionare il vostro nuovo profilo da amministratore appena creato.

4. Aggiornate Sempre all’Ultima Versione di WordPress e relativi Plugin

Mantenete WordPress sempre aggironato, sia il core WordPress che i vostri plugin. Una buona norma quando si aggiorna wordpress o i plugin è quella di eseguire il tutto nell’area di staging, in modo che possiate controllare che non ci siano incompatibilità tra tutti gli elementi del sito. Gli aggiornamenti servono per correggere eventuali bug, migliorare la sicurezza e aumentarne le prestazioni.

Come già detto, una volta costruito il vostro sito occorre sempre un controllo costante per la manutenzione. Purtroppo è una pratica che molti non seguono, la manutenzione di un sito è comunque un fattore di costo per un cliente e non tutti ne capiscono l’importanza. Quando vi proponete coem fornitori di siti web, considerate sempre nel contratto una sezione dedicata alla manutenzione. Nel migliore dei casi vi basterà aggiornare il tutto con un click, quindi con un impegno di unità di tempo molto basso, ma considerate anche l’ipotesi opposta, magari un’incompatibilità tra plugin, che rompono il corretto funzionamento del sito. In questo caso il vostro impegno sarà di gran lunga maggiore e difficoltoso.

In realtà, i siti web si bloccano principalmente a causa di bug nelle precedenti versioni di WordPress. Le modifiche al core non sono mai consigliate dal team di WordPress e da sviluppatori esperti che comprendono i rischi che queste comportano. Gli aggiornamenti di WordPress riguardano principalmente patch di sicurezza indispensabili, insieme con le funzionalità aggiuntive necessarie per eseguire gli ultimi plugin.

Wordfence, una ditta che si occupa di sicurezza web, ha eseguito uno studio nel 2016 che mostra come le vulnerabilità dei plugin rappresentino il 55,9% dei punti di ingresso noti per gli hacker. Ripetiamolo ancora, la manutenzione è fondamentale.

Relativamente ai plugin è consigliabile installare solo quelli attendibili, che abbiano aggiornamenti recenti e con un grosso numero di installazioni. Naturalmente i plugin premium, cioè quelli a pagamento, sono ovviamente i più sicuri, ricevono aggiornamenti costanti e in linea di massima sono maggiormente ottimizzati.

Per aggiornare il core di WordPress è possibile fare clic su “Aggiornamenti” nella dashboard di WordPress e poi fare clic sul pulsante “Aggiorna ora”.

Potete anche aggiornare wordpress in maniera manuale, scaricando l’ultima versione Wordprress da qui e poi caricandola via FTP. Fate attenzione quando caricate tramite FTP nel sovrascrivere le cartelle giuste, cancellando cartelle sbagliate potreste bloccare il vostro sito.

Seguite attentamente i passaggi di questa guida per aggiornare un’installazione esistente.

L’aggiornamento dei plugin è molto simile al processo svolto per aggiornare wordpress. Potete eseguire il tutto in maniera automatica nella sezione Plugin della Dashboard o farlo in maniera manuale sempre tramite FTP. La directory delle plugin in wordpress è la seguente /wp-content/plugins/Usate il vostro miglior giudizio quando dovete scegliere i plugin. Guardate la data dell’ultimo aggiornamento (“Last updated”) e il numero di valutazioni che ha il plugin.
Inoltre, esistono molte risorse per aiutarvi a rimanere al corrente degli ultimi aggiornamenti e delle vulnerabilità nella sicurezza di WordPress. Ecco alcuni esempi qui di seguito:

5. Bloccare l’accesso al Pannello di Amministrazione di WordPress

A volte la strategia popolare della sicurezza tramite segretezza di WordPress è efficace per un sito aziendale di medie dimensioni basato su WordPress. Per diminuire il rischio di essere attaccati è buona norma anche rendere più difficile agli hacker trovare backdoor o debolezze del vostro sito. Per esempio sappiamo che la pagina di login di WordPress, per dafault, è nomesito.it/wp-admin. Possiamo rendere il lavoro degli hacker un pochino più difficle andando a modificare la url di accesso a wp-admin e limitandone i tentativi di accesso. Successivamente possiamo impostare una password per accedere solamente alla pagina del log in.
La sicurezza tramite segretezza può essere un modo molto efficace per rafforzare la sicurezza di WordPress

Modifichiamo la url di accesso a WordPress

L’installazione standard di WordPress imposta l’accesso al pannello di amministrazione secondo una url predefinita: nomedominio.com/wp-admin. Di conseguenza tutti gli hacker andranno a controllare la url di accesso predefinita. Modificando l’URL avrete l’opportunità di proteggere l’0accesso al pannello di amministrazione da attacchi di tipo Brute Force. A costo di essere ripetitivo, sottolineo che ogni piccola modifica che apporterete non renderà il vostro sito a prova di bomba, ma aumenterà la sicurezza WordPress, immaginate di aggiungere un livello di dissuasione in più per il vostro hacker.
Per cambiare il vostro URL di accesso a WordPress troverete molte plugin da poter utilizzare. Ne segnalo un paio, WPS Hide login, gratuito, oppure Perfmatters, a pagamento.
Impostare entrambi i plugin risulta manovra facile. Vi viene chiesto di scrivere una nuova url in un campo di testo. Scegliete voi la difficoltà della parola o combinazione di lettere e numeri da usare e naturalmente memorizzate la nuova url. Una volta salvate le nuove impostazioni ed eseguito il log out potrete acceder alla dashboard solo dalla nuova url.

Limitiamo i tentativi di accesso al pannello di amministrazione WordPress

Possiamo impostare un limite massimo di tentativi di login vero il nostro pannello di amministrazione WordPress. Possiamo impostare un numero di tentativi di login errati oltre il quale bloccare temporaneamente l’accesso o inserire gli IP in blacklist . Provate Login LockdownCerber Limit Login Attempts, le impostazioni sono elementari per entrambe le soluzioni. Login LockDown inoltre registra l’indirizzo IP e il timestamp di ogni tentativo di accesso fallito. Se vengono rilevati più di un certo numero di tentativi, che siamo noi ad impostare, in un breve periodo di tempo dallo stesso intervallo di IP, la funzione di accesso viene disabilitata per tutte le richieste da quel range di IP

Aggiungiamo un’Autenticazione Base HTTP (protezione htpasswd)

Possiamo limitare l’accesso alla pagina di login di WordPress attrraverso un modulo di richiesta user name e password. Questa pratica non dovrebbe essere utilizzata nei siti eCommerce o nei siti con iscrizioni.

Limitiamo l’accesso tramite .htpasswd, vediamo come farlo sia con Apache che con Nginx.

Apache

Con un host che utilizza cPanel potete impostare la protezione con password della direcotry di login dal proprio pannello di controllo. Occorre prima creare un file .htpasswd. Potete utilizzare questo pratico generatore. Quindi caricate il file in una directory nella cartella wp-admin, ad esempio:

home/user/.htpasswds/public_html/wp-admin/htpasswd/

Quindi create un file .htaccess con il seguente codice e caricatelo nella directory /wp-admin/. Assicuratevi di aggiornare il percorso della directory e il nome utente.

AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/htpasswd
AuthType basic
require user yourusername

L’unico avvertimento per operare in questo modo è che si si interromperà il funzionamento di AJAX (admin-ajax) sul front-end del vostro sito. Questo è richiesto da alcuni plugin di terze parti. Quindi dovrete anche aggiungere il seguente codice al file .htaccess sopra.

<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>

Nginx

Se state utilizzando Nginx, potete anche limitare l’accesso con l’autenticazione base HTTP. Date un’occhiata a questo tutorial.

Abilitare la protezione .htpasswd

Dopo l’attivazione, il vostro sito WordPress vi richiederà l’autenticazione per accedere. Potete cambiare le credenziali in qualsiasi momento o disabilitarlo quando non ne avete più bisogno.

Bloccare il percorso di un URL

Se utilizzate un web application firewall (WAF) come Cloudflare o Sucuri, ricordate che questi forniscono ottime soluzioni per bloccare il percorso di un URL. Potete in pratica impostare una regola in modo tale che solo il vostro indirizzo IP possa avere accesso al vostro URL di login di WordPress. Ripetiamo, questa soluzione non dovrebbe essere implementata nei siti di eCommerce o ad iscrizione in quanto anche questi si basano sull’accesso al back-end del vostro sito.

6. Sfruttare l’Autenticazione a Due Fattori

E, naturalmente, non possiamo dimenticare l’autenticazione a due fattori! Non importa quanto sia sicura la vostra password, c’è sempre il rischio che qualcuno la scopra. L’autenticazione a due fattori prevede un processo in 2 passaggi in cui non basta inserire la password per accedere, ma è necessario un ulteriore metodo. Generalmente si tratta di un messaggio di testo (SMS), una telefonata o una password a scadenza valida una sola volta (TOTP). Nella maggior parte dei casi, questo sistema è efficace al 100% nel prevenire attacchi brute force sul vostro sito WordPress. Perché? Perché è quasi impossibile che chi attacca abbia sia la vostra password che il vostro cellulare.

Ci sono in realtà due parti quando si parla di autenticazione a due fattori. La prima è il vostro account e/o la dashboard del vostro provider di hosting web. Se qualcuno ottiene l’accesso alla dashboard, potrebbe cambiare la vostra password, eliminare i vostri siti web, modificare i record DNS e ogni sorta di orribili cose.

La seconda parte dell’autenticazione a due fattori si riferisce alla vostra installazione di WordPress. Per questo abbiamo alcuni plugin da consigliarvi:

Molti di questi hanno le proprie Authenticator App che potete installare sui vostri telefoni:

Dopo aver installato e configurato uno dei plugin qui sopra, in genere nella pagina di accesso di WordPress si presenta un campo aggiuntivo dove andrà inserito il codice di sicurezza. Oppure, con il plugin Duo, per prima cosa dovrete accedere con le vostre credenziali, quindi vi viene richiesto di scegliere un metodo di autenticazione, come Duo Push, chiamata o passcode.

Questo metodo può essere facilmente combinato con la modifica dell’URL di accesso predefinito che abbiamo esaminato in precedenza. Quindi non solo il vostro URL di accesso a WordPress lo conoscete solo voi, ma ora è necessaria un’autenticazione extra per entrare. 💪

Quindi non rinunciate ai vantaggi dell’autenticazione a due fattori, perché può costituire una soluzione semplice per rafforzare la sicurezza di WordPress.

7. Utilizzare HTTPS per Connessioni Criptate – Certificato SSL

Uno dei modi più trascurati per rafforzare la sicurezza di WordPress è installare un certificato SSL ed far girare il vostro sito su HTTPS. HTTPS (Hyper Text Transfer Protocol Secure) è un meccanismo che consente al browser o all’applicazione web di collegarsi in modo sicuro a un sito web. Un grosso equivoco è che se non si accettano le carte di credito non è necessario SSL.

Bene, lasciateci illustrare alcuni motivi per cui HTTPS è importante al di là del semplice eCommerce. Molti host, tra cui Kinsta, ora offrono anche certificati SSL gratuiti con Let’s Encrypt.

1. Sicurezza

Naturalmente, il motivo principale per utilizzare HTTPS è la maggiore sicurezza e, certo, questo è molto importante per i siti di eCommerce. Tuttavia, quanto sono importanti le vostre informazioni di accesso? Per quelli di voi che gestiscono siti WordPress multi-autore, se si gira su su HTTP, ogni volta che una persona esegue l’accesso, tali informazioni vengono passate al server come testo normale. HTTPS è assolutamente vitale per mantenere una connessione sicura tra un sito Web e un browser. In questo modo potete prevenire meglio che hacker o intrusi ottengano l’accesso al vostro sito web.

Così anche blog, siti di notizie, agenzie, tutti possono trovare utile HTTPS, in quanto garantisce che le informazioni non passino mai in chiaro.

2. SEO

Google ha dichiarato ufficialmente che HTTPS è un fattore di ranking. Anche se è solo un piccolo fattore di ranking, la maggior parte di voi probabilmente trarrà vantaggio dalla SERP per battere la concorrenza.

3. Fiducia e Credibilità

Secondo un sondaggio di GlobalSign, il 28,9% dei visitatori cerca la barra degli indirizzi verde nel proprio browser. E il 77% di loro è preoccupato che i suoi dati vengano intercettati o male utilizzati online. Vedendo quel lucchetto verde, i clienti saranno immediatamente tranquillizzati sapendo che i loro dati sono più sicuri.

4. Dati di Referral

Molte persone non si rendono conto che i dati di referral da HTTPS a HTTP sono bloccati in Google Analytics. Quindi cosa succede ai dati? Bene, la maggior parte è solo accorpata nella sezione “traffico diretto”. Se qualcuno sta passando da HTTP a HTTPS, il referrer è invece sempre trasmesso.

5. Avvisi di Chrome

A partire dal 24 luglio 2018, Chrome 68 e versioni superiori hanno cominciato a contrassegnare tutti i siti non-HTTPS come “Non Sicuri”. Indipendentemente dal fatto che raccolgano o meno i dati. Questo è il motivo per cui HTTPS è più importante che mai!

Questo è particolarmente importante se il vostro sito web riceve la maggior parte del suo traffico da Chrome. Potete cercare in Google Analytics nella sezione Pubblico, in Browser & Sistema operativo, per vedere la percentuale di traffico che il vostro sito WordPress riceve da Google Chrome. Google rende molto più chiaro ai visitatori che il vostro sito WordPress potrebbe non essere in esecuzione su una connessione protetta.

Non sicuro in Google Chrome

6. Prestazioni

Grazie ad un nuovo protocollo chiamato HTTP/2, molto spesso, coloro che eseguono siti ben ottimizzati su HTTPS possono sperimentare aumenti di velocità. HTTP/2 richiede HTTPS per essere supportato dai browser. Il miglioramento delle prestazioni è dovuto a una serie di motivi, tra cui il miglior supporto di HTTP/2 del multiplexing, il parallelismo, la compressione HPACK con codifica Huffman, l’estensione ALPN e il server push.

E con TLS 1.3 dietro l’angolo, le connessioni HTTPS saranno ancora più veloci. 

Per applicare una connessione sicura e crittografata tra voi e il server durante il login e l’amministrazione del vostro sito, aggiungete la seguente riga al vostro file wp-config.php:

define ('FORCE_SSL_ADMIN', true)

(Lettura suggerita: se state usando versioni precedenti di TLS, potreste voler correggere le notifiche ERR_SSL_OBSOLETE_VERSION su Chrome).

8. Mettere in Sicurezza il File wp-config.php

Il vostro file wp-config.php è come il cuore e l’anima della vostra installazione di WordPress. È di gran lunga il file più importante del vostro sito per quel che riguarda la sicurezza di WordPress. Contiene le informazioni di accesso al database e le chiavi di sicurezza che gestiscono la crittografia delle informazioni nei cookie. Di seguito sono indicate un paio di cose che potete fare per proteggere meglio questo importante file.

1. Spostare wp-config.php

Di default il vostro file wp-config.php risiede nella directory principale della vostra installazione di WordPress (la vostra cartella HTML /pubblic/). Ma potete spostarlo in una directory non accessibile tramite www. Aaron Adams ha fornito una ottima spiegazione dei motivi per cui questa operazione è così importante.

Per spostare il vostro file wp-config.php, basta semplicemente copiare tutto quello che vi è contenuto in un altro file. Quindi nel vostro file wp-config.php potete inserire il seguente frammento che semplicemente include l’altro file. Nota: il percorso della directory potrebbe essere diverso a seconda del vostro host web e della configurazione. In genere però è semplicemente una directory sopra.

<?php
include('/home/yourname/wp-config.php');

Nota: questo non funzionerà per gli utenti Kinsta, per via della configurazione del nostro ambiente. Questo perché le nostre restrizioni open_basedir non consentono l’esecuzione di PHP sulla directory ~/public per motivi di sicurezza. La buona notizia è che gestiamo noi tutto questo per voi! Facciamo praticamente la stessa cosa bloccando l’accesso a wp-login.php all’interno della directory ~/public. La nostra configurazione Nginx predefinita contiene una regola che restituirà un 403 per ogni tentativo di accesso a wp-config.php.

2. Aggiornare le Chiavi di Sicurezza di WordPress

Le chiavi di sicurezza di WordPress sono un set di variabili casuali che migliorano la crittografia delle informazioni memorizzate nei cookie dell’utente. A partire da WordPress 2.7, sono disponibili 4 chiavi diverse: AUTH_KEYSECURE_AUTH_KEYLOGGED_IN_KEY e NONCE_KEY.

Quando installate WordPress, queste chiavi vengono generate casualmente per voi. Tuttavia, se siete passati attraverso varie migrazioni (onsulta la nostra lista curata dei migliori plugin per la migrazione di WordPress), oppure avete acquistato un sito da qualcun altro, potrebbe essere utile creare nuove chiavi di WordPress.

WordPress offre uno strumento gratuito che è possibile utilizzare per generare chiavi casuali. Potete aggiornare le vostre chiavi correnti memorizzate nel vostro file wp-config.php file.

Le chiavi di sicurezza di WordPress

Leggete di più sulle chiavi di sicurezza di WordPress.

3. Cambiare i Permessi

In genere i permessi sui file presenti nella directory principale di un sito WordPress saranno impostati su 644, il che significa che i file sono leggibili e scrivibili dal proprietario del file, leggibili dagli utenti del gruppo proprietario di quel file e leggibili da tutti gli altri. Secondo la documentazione di WordPress, le autorizzazioni sul file wp-config.php dovrebbero essere impostate su 440 o 400 per impedire ad altri utenti sul server di leggerlo. Potete facilmente modificare questa impostazione con il vostro client FTP.

Permessi su wp-config.php

9. Disabilitare XML-RPC

Negli anni passati XML-RPC è diventato un obiettivo sempre più grande per attacchi brute force. Come affermato da Sucuri, una delle funzionalità nascoste di XML-RPC è che è possibile utilizzare il metodo system.multicall per eseguire più metodi all’interno di una singola richiesta. Questo è molto utile in quanto consente all’applicazione di passare più comandi all’interno di una singola richiesta HTTP. Ma quello che succede è che questa funzionalità è usata anche per intenti malevoli.

Ci sono alcuni plugin di WordPress come Jetpack che si basano su XML-RPC, ma la maggior parte delle persone non ne ha bisogno e può essere utile semplicemente disabilitarne l’accesso. Non siete sicuri se XML-RPC sia attualmente in esecuzione sul vostro sito web? Danilo Ercoli, del team di Automattic, ha creato un piccolo strumento chiamato XML-RPC Validator. Potete eseguire il vostro sito WordPress attraverso questo strumento per vedere se XML-RPC è abilitato. Se non lo è, vedrete un messaggio di errore, come mostrato nell’immagine qui sotto del blog di Kinsta.

WordPress XML-RPC validator

Per disabilitare completamente XML-RPC è possibile installare il plugin gratuito Disable XML-RPC. Oppure potete disabilitarlo con il plugin premium perfmatters, che consente anche miglioramenti delle prestazioni web.

Se siete clienti di Kinsta, questi plugin non sono necessari perché, quando viene rilevato un attacco tramite XML-RPC, viene aggiunto un piccolo snippet di codice nel file di configurazione NGINX per fermarlo mentre è in corso – generando un errore 403.

location ~* ^/xmlrpc.php$ {
return 403;
}

10. Nascondere la Versione di WordPress

Nascondere la vostra versione di WordPress concerne ancora l’argomento della sicurezza di WordPress per oscuramento. Meno persone conoscono la vostra configurazione di WordPress, meglio è. Un’installazione non aggiornata di WordPress potrebbe essere un segnale di benvenuto per intrusi. Di default, la versione di WordPress viene visualizzata nell’intestazione del codice sorgente del sito. Ancora una volta, vi consigliamo semplicemente di assicurarvi che l’installazione di WordPress sia sempre aggiornata. Facendo così non dovrete preoccuparti di nascondere la versione.Alle prese con i tempi di inattività e problemi di WordPress? Kinsta è la soluzione di hosting progettata per farvi risparmiare tempo! Scopri i nostri serviziVersione di WordPress nel codice sorgente

Versione di WordPress nel codice sorgente

Potete utilizzare il codice che segue per rimuovere la versione. Aggiungete semplicemente quanto segue al file functions.php del vostro tema WordPress.Importante! La modifica del codice sorgente di un tema WordPress potrebbe bloccare il vostro sito se l’operazione non viene eseguita correttamente. Se non vi senti sicuri, vi consigliamo di contattare prima uno sviluppatore.

function wpversion_remove_version() {
return '';
}
add_filter('the_generator', 'wpversion_remove_version');

Potete anche utilizzare un plugin premium come perfmatters (sviluppato da un membro del team di Kinsta), che vi consente di nascondere la versione di WordPress con un clic, insieme ad altre ottimizzazioni per il vostro sito WordPress.

Nascondere la versione di WordPress con perfmatters

Un altro posto dove appare la versione di WordPress si trova nel file readme.html predefinito (come mostrato di seguito), che è incluso in ogni versione di WordPress. Si trova nella root della vostra installazione, domain.com/readme.html. Potete tranquillamente cancellare questo file tramite FTP.

La versione di WordPress nel file readme

11. Aggiungere i Più Recenti Header HTTP di Sicurezza

Un altro passo in avanti per rafforzare la sicurezza di WordPress è l’utilizzo delle intestazioni HTTP relative alla sicurezza. Queste sono solitamente configurate a livello di server e indicano al browser come comportarsi quando gestisce i contenuti del vostr sito. Esistono molte intestazioni HTTP di sicurezza, ma quelle elencate di seguito possono essere considerate le più importanti.

KeyCDN ha pubblicato un ottimo post approfondito per chi volesse saperne di più sugli header HTTP di sicurezza.

Potete verificare quali header sono attualmente attivi nel vostro sito WordPress lanciando Chrome devtools e cercando gli header nella risposta iniziale del vostro sito. Di seguito è riportato un esempio di Kinsta.com. Potete vedere che utilizziamo gli header strict-transport-securityx-content-type e x-frame-options.

Header HTTP di Sicurezza

Potete anche eseguire la scansione del vostro sito WordPress con lo strumento gratuito securityheaders.io di Scott Helme. Questo vi mostrerà quali header di sicurezza HTTP sono al momento attivi sul vostro sito. Se non siete sicuri di come implementare gli header, potete sempre chiedere aiuto al vostro host.

Scansione degli header di sicurezza HTTP

Nota: è anche importante ricordare che quando si implementano le intestazioni di sicurezza HTTP, ciò potrebbe influire sui sottodomini di WordPress. Ad esempio, se si aggiunge l’intestazione Content Security Policy e si limita l’accesso in base ai domini, è necessario aggiungere anche i propri sottodomini.

12. Utilizzare Plugin di Sicurezza per WordPress

E ovviamente, dobbiamo ricordare alcuni plugin per la sicurezza di WordPress. Ci sono in giro molti ottimi sviluppatori e aziende che offrono grandi soluzioni per aiutare a proteggere meglio il vostro sito WordPress. Eccone alcuni.

Kinsta dispone di firewall hardware, sicurezza attiva e passiva, controlli di uptime al minuto e numerosi altri servizi avanzati per impedire agli hacker di accedere ai vostri dati. Se, nonostante i nostri sforzi, il vostro sito dovesse essere compromesso, lo ripareremo gratuitamente.
Ecco alcune funzionalità e utilizzi comuni dei plugin elencati sopra:

  • Generare e forzare password complesse durante la creazione di profili utente
  • Forzare le password a scadere e ad essere ripristinate regolarmente
  • Log delle azioni degli utenti
  • Aggiornamenti semplificati delle chiavi di sicurezza di WordPress
  • Scansione malware
  • Autenticazione a due fattori
  • reCAPTCHA
  • Firewall di sicurezza WordPress
  • Whitelist degli IP
  • Blacklist degli IP
  • Changelog dei file
  • Monitoraggio dele modifiche ai DNS
  • Blocco delle reti malevoli
  • Visualizzazione delle informazioni WHOIS sui visitatori

Una funzionalità molto importante di molti plugin di sicurezza è l’utilità di checksum. Vuol dire che controllano l’installazione di WordPress e cercano le modifiche sui file del core forniti da WordPress.org (tramite l’API). Eventuali modifiche a questi file potrebbero suggerire che c’è stata una violazione. Potete anche utilizzare WP-CLI per eseguire i vostri checksum.

Un altro ottimo plugin che merita una menzione d’onore è il plugin WP Security Audit Log plugin. Questo plugin è fantastico per quelli di voi che lavorano su WordPress multisite o semplicemente multi-autore. Il plugin assicura la produttività degli utenti e consente agli amministratori di vedere tutto ciò che viene modificato; cose come accessi, modifiche della password, modifiche ai temi, modifiche ai widget, nuove creazioni di post, aggiornamenti di WordPress, ecc.

È una soluzione completa per il registro dell’attività di WordPress. Nel momento in cui scriviamo, il plugin WP Security Audit Log vanta oltre 80.000 installazioni attive con una valutazione di 4,7 stelle su 5.

Security Audit Log Viewer

Il plugin dispone anche di add-on premium aggiuntive, come notifiche email, gestione sessioni utente, ricerca e report. Date un’occhiata anche a questi plugin di sicurezza WordPress che possono aiutarvi a bloccare i malintenzionati.

13. Rafforzare la Sicurezza del Database

Ci sono un paio di modi per migliorare la sicurezza del vostro database WordPress. Il primo è utilizzare un nome intelligente per il database . Se il vostro sito si chiama trucchi pallavolo, di default il vostro database di WordPress è chiamato molto probabilmente wp_trucchipallavolo. Cambiando il nome del vostro database a qualcosa di più oscuro, è possibile proteggere il vostro sito rendendo più difficile agli hacker identificare e accedere ai dati del vostro database. I ragazzi di WPMUDEV hanno scritto un piccolo grande tutorial su come cambiare il nome del vostro database su installazioni esistenti.

Una seconda raccomandazione è quella di utilizzare un diverso prefisso per le tabelle del database. Di default WordPress usa wp_. Cambiare questo a qualcosa come 39xw_ può essere molto più sicuro. Quando installate WordPress, vi viene richiesto un prefisso tabella (come mostrato qui sotto). Ci sono anche modi per cambiare il prefisso delle tabelle di WordPress su installazioni esistenti. Se siete clienti di Kinsta, questo non è necessario. Abbiamo pensato noi a mettere in sicurezza il sito e il database!

Prefisso tabelle WordPress – img src: jatinarora

14. Utilizzare Sempre Connessioni Sicure

Non potremo mai sottolineare abbastanza quanto sia importante l’utilizzo di connessioni sicure! Assicuratevi che il vostro host WordPress stia prendendo precauzioni come SFTP o SSH. SFTP o Secure File Transfer Protocol (noto anche come protocollo di trasferimento file SSH), è un protocollo di rete utilizzato per i trasferimenti di file. È un metodo più sicuro rispetto al consueto FTP.

Noi di Kinsta supportiamo solo connessioni SFTP per garantire che i vostri dati rimangano sicuri e criptati. La maggior parte degli host di WordPress utilizza in genere la porta 22 per SFTP. Noi di Kinsta facciamo un ulteriore passo in avanti e diamo ad ogni sito una porta casuale che può essere trovata nel cruscotto di MyKinsta.

Dati SFTP

È anche importante assicurarsi che il router di casa sia configurato correttamente. Se qualcuno viola la vostra rete domestica, potrebbe avere l’accesso ad ogni tipo di informazione, comprese eventualmente le informazioni rilevanti del vostro sito WordPress. Ecco alcuni semplici consigli:

  • Non abilitate la gestione remota (VPN). Gli utenti comuni non usano mai questa funzione e, tenendola spenta, potete evitare di esporre la vostra rete al mondo esterno.
  • I router utilizzano per impostazione predefinita gli IP in un dato intervallo, come 192.168.1.1. Utilizzate un intervallo diverso, ad esempio 10.9.8.7.
  • Abilitate il massimo livello di crittografia sul vostro Wifi.
  • Create una whitelist di IP per il vostro Wifi in modo tale che solo le persone con la password e determinati IP possano accedervi.
  • Mantenete aggiornato il firmware del router.

E fate sempre attenzione quando accedete al vostro sito WordPress in luoghi pubblici. Ricordate, Starbucks non è una rete sicura! Prendete precauzioni come verificare l’SSID di rete prima di fare clic su Connetti. Potete anche utilizzare un servizio VPN di terze parti come ExpressVPN per crittografare il vostro traffico Internet e nascondere il vostro indirizzo IP agli hacker.

15. Controllare le Autorizzazioni su File e Server

Le autorizzazioni sui file sia per l’installazione che per il server sono fondamentali per rafforzare la sicurezza di WordPress. Se le autorizzazioni sono troppo blande, qualcuno potrebbe facilmente accedere al vostro sito e provocare il caos. D’altra parte, autorizzazioni sono troppo rigide potrebbero compromettere la funzionalità del vostro sito. Quindi è importante impostare le autorizzazioni corrette su tutta la linea.

Permessii sui File

  • Read – I permessi di lettura vengono assegnati se l’utente dispone dei diritti per leggere il file.
  • Write – I permessi di scrittura vengono assegnati se l’utente dispone dei diritti per scrivere o modificare il file.
  • Execute – I permessi di esecuzione vengono assegnati se l’utente ha i diritti per eseguire il file e/o eseguirlo come script.

Permessi sulle Directory

  • Read – I permessi di lettura vengono assegnati se l’utente ha i diritti per accedere ai contenuti della cartella/directory identificata.
  • Write – I permessi di scrittura vengono assegnati se l’utente ha i diritti per aggiungere o eliminare i file contenuti nella cartella/directory.
  • Execute – I permessi di esecuzione vengono assegnati se l’utente ha i diritti per accedere alla directory ed eseguire funzioni e comandi, inclusa la possibilità di eliminare i dati all’interno della cartella/directory.

Potete utilizzare un plugin gratuito come iThemes Security per effettuare la scansione delle autorizzazioni nel vostro sito WordPress.

Scansione dei permessi sui file di WordPress

Ecco alcuni consigli tipici per quanto riguarda le autorizzazioni su file e cartelle in WordPress. Date un’occhiata all’articolo del Codex WordPress sulla modifica dei permessi sui file per una spiegazione più approfondita.

  • Tutti i file dovrebbero essere 644 o 640. Eccezione: wp-config.php dovrebbe essere 440 o 400 per impedire ad altri utenti presenti sul server di leggerlo.
  • Tutte le directory dovrebbero avere 755 o 750.
  • Nessuna directory dovrebbe mai essere avere 777, comprese le directory degli upload.

16. Disabilitare la Modifica dei File nella Dashboard di WordPress

Molti siti WordPress hanno più utenti e amministratori, cosa che può rendere più complessa la messa in sicurezza di WordPress. Una pratica molto negativa è quella di fornire agli utenti con ruolo author o contributor l’accesso da amministratori, ma sfortunatamente, si verifica sempre. È importante dare agli utenti i ruoli e le autorizzazioni corretti in modo che non rompano nulla. Per questo motivo può essere utile semplicemente disabilitare la pagina “Aspetto – Editor” in WordPress.

Molti di voi probabilmente ci si saranno imbattuti a un certo punto. Andate a modificare rapidamente qualcosa nell’Editor dell’Aspetto, e all’improvviso vi trovate lo schermo bianco della morte. È molto meglio modificare il file localmente e caricarlo via FTP. E, naturalmente, nella migliore prassi, dovreste prima provare cose come questa su un sito di sviluppo.

Editor Aspetto di WordPress

Inoltre, se il vostro sito WordPress viene violato la prima cosa che un hacker potrebbe fare è provare a modificare un file o un tema PHP tramite l’Editor dell’Aspetto. Questo è un modo rapido per eseguire codice dannoso sul vostro sito. Se non diamo accesso all’editor nella dashboard, tanto per cominciare, è possibile prevenire gli attacchi. Inserite il seguente codice nel vostro file wp-config.php per rimuovere le funzionalità ‘edit_themes’, ‘edit_plugins’ e ‘edit_files’ per tutti gli utenti.

define ('DISALLOW_FILE_EDIT', true);

17. Prevenire l’Hotlinking

Il concetto di hotlinking è molto semplice. Trovate un’immagine da qualche parte su Internet e utilizzate l’URL dell’immagine direttamente nel vostro sito. Questa immagine sarà visualizzata sul vostro sito web ma sarà servita dalla posizione originale. Questo è in realtà un furto poiché utilizza la larghezza di banda del sito collegato. Questo potrebbe non sembrare un grosso problema, tuttavia potrebbe generare alti costi aggiuntivi.

The Oatmeal è un ottimo esempio. L’Huffington Post ha utilizzato l’hotlink per un suo fumetto composto da più immagini, e questo ha ricevuto un conto della enorme cifra di oltre $1.000.

Il conto dell’hotlinking

Prevenire l’Hotlinking in Apache

Per evitare l’hotlinking in Apache basta aggiungere il seguente codice al file .htaccess.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]

La seconda riga definisce il referrer consentito – il sito che è autorizzato a collegarsi direttamente all’immagine, questo dovrebbe essere il vostro sito web. Se si desidera autorizzare più siti, è possibile duplicare questa riga e sostituire il referrer. Se volete generare regole più complesse, date un’occhiata a questo generatore di protezione di htaccess dall’hotlinking.

Impedire l’Hotlinking in NGINX

Per evitare l’hotlinking in NGINX è sufficiente aggiungere il seguente codice al file di configurazione.

location ~ .(gif|png|jpe?g)$ {
valid_referers none blocked ~.google. ~.bing. ~.yahoo yourdomain.com *.yourdomain.com;
if ($invalid_referer) {
return 403;
}
}

Impedire l’Hotlinking su CDN

Se state servendo le immagini da un CDN, la configurazione potrebbe essere leggermente diversa. Ecco alcune risorse con i provider CDN più diffusi.

18. Fare Sempre i Backup

I backup sono l’unica cosa di cui tutti sanno di aver bisogno ma che non sempre fanno. La maggior parte delle raccomandazioni riportate sopra sono misure di sicurezza che è possibile adottare per proteggersi meglio. Ma non importa quanto sia sicuro il vostro sito, non sarà mai sicuro al 100%. Quindi avrete bisogno di backup nel caso in cui succeda il peggio.

La maggior parte dei provider di hosting WordPress gestiti ora fornisce backup. Kinsta dispone di backup automatici che vi consentono di dormire tranquilli di notte. Inoltre, potete ripristinare il vostro sito con un solo clic.

Backup automatici di WordPress

Se il vostro host non offre backup, ci sono alcuni servizi e plugin per WordPress molto popolari che potete utilizzare per automatizzare il processo.

Servizi di Backup WordPress

I servizi di backup di WordPress di solito hanno una tariffa mensile bassa e archiviano i backup nel cloud.

Plugin di Backup WordPress

I plugin di backup di WordPress vi permettono di prelevare i vostri backup via FTP o integrarli con una fonte di archiviazione esterna come Amazon S3, Google Drive o Dropbox. Consigliamo vivamente di utilizzare una soluzione incrementale in modo da utilizzare meno risorse.

Nota: non consentiamo l’utilizzo di plugin di backup sui server di Kinsta a causa di problemi sulle prestazioni. Ma facciamo così perché gestiamo tutto questo a livello di server, in modo da non rallentare il ​​vostro sito WordPress.

19. Protezione DDoS

DDoS è un tipo di attacco DOS in cui vengono utilizzati più sistemi per colpire un singolo sistema generando un attacco Denial of Service (DoS). Gli attacchi DDoS non sono una novità – secondo la Britannica il primo caso documentato risale ai primi anni del 2000. A differenza di un hacker che ha violato il vostro sito, questo tipo di attacchi normalmente non danneggia il sito, ma lo interrompe per poche ore o qualche giorno.

Cosa potete fare per proteggervi? Uno dei migliori consigli è quello di utilizzare un servizio di sicurezza di terze parti affidabile, come Cloudflare o Sucuri. Se gestite un’attività, può aver senso investire nei loro piani premium.

Protezione DDoS di Cloudflare e Sucuri

La loro protezione DDoS avanzata può essere utilizzata per mitigare gli attacchi DDoS di tutte le forme e dimensioni, compresi quelli che hanno come target i protocolli UDP e ICMP, nonché gli attacchi SYN/ACK, di amplidicazione del DNS e Layer 7. Altri vantaggi comprendono la possibilità di associare un proxy che aiuta a nascondere l’indirizzo IP di origine, sebbene questo non sia proprio blindato.

Date un’occhiata al nostro caso di studio su come fermare un attacco DDoS. Avevamo un cliente con un piccolo sito di e-commerce su Easy Digital Download che ha ricevuto oltre 5 milioni di richieste su una singola pagina in 7 giorni. Generalmente il sito generava solo tra 30-40 MB al giorno come consumo di banda, e un paio di centinaia di visitatori al giorno. Ma, inaspettatamente, il sito è salito istantaneamente a 15-19 GB di trasferimento dati al giorno! É un aumento del 4650%. E Google Analytics non ha mostrato traffico aggiuntivo. Quindi non va bene.

Alto consumo di banda per un attacco DDoS

Il cliente ha implementato sul proprio sito il web application firewall di Sucuri e tutta la larghezza di banda e le richieste sul sito sono state immediatamente rilasciate (come mostrato di seguito) e da allora non si è verificato nemmeno un problema. Quindi, si tratta sicuramente di un buon investimento e di un risparmio di tempo se vi imbatti in problemi come questi.

Aggiunta del firewall dell’applicazione web di Sucuri

Riepilogo

Come potete vedere, ci sono numerosi modi per aumentare la sicurezza di WordPress. L’utilizzo di password intelligenti, l’aggiornamento del core e dei plugin e la scelta di un sicuro host WordPress gestito, sono solo alcuni di quelli che manterranno il vostro sito WordPress attivo e funzionante. Per molti di voi, il sito WordPress costituisce la vostra azienda e il vostro reddito, quindi è importante prendersi del tempo e mettere in atto alcune delle migliori pratiche di sicurezza sopra menzionate.

Avete qualche consiglio importante sulla sicurezza di WordPress che ci è sfuggito? Se è così, fatecelo sapere qui sotto nei commenti.

Francesco Febbo

Lascia un commento

sicurezza wordpress 2020

WordPress e sicurezza – Guida per proteggere il vostro sito wordpress

WordPress è UNA PIATTAFORMA SICURA ? Un’installazione standard di WordPress non garantisce un alto livello di sicurezza del sito, fortunatamente esistono delle procedure di non difficile attuazione per diminuire alcune vulnerabilità. Che sia un sito vetrina o un e-commerce più complesso, oggi vi scrivo alcuni passi fondamentali per rimanere protetti. WordPress è la piattaforma più

Leggi Tutto »

Voucher digitalizzazione: rimborso fino a 5000 euro per siti web con implemantazione di attività di e-commerce/analytics

Se la vostra attività non ha un un sito internet o volete ottimizzare la vostra presenza online ora è il momento giusto. La Camera di Commercio Chieti Pescara che rimborsa fino a 5000 € attivando il Band VOUCHER DIGITALI I4.0 per tutte le aziende che vogliono implementare e-commerce, cyber security e data analytics Il dissesto

Leggi Tutto »
Torna su

Serve un Esperto ?

Siamo quiper aiutarti