Come proteggere un blog wordpress da attacchi hacker, aumentare la sicurezza!

Come proteggere un blog wordpress da attacchi hacker, aumentare la sicurezza!E’ chiaramente impossibile prevenire completamente gli attacchi degli hacker, ma ci sono tante piccole operazioni che possono aumentare la sicurezza del tuo blog wordpress, riducendo al minimo la possibilità di subire il fastidioso inconveniente. Ecco le principali operazioni da compiere per proteggere il tuo amato blog wordpress!

Backup del blog

Iniziamo con la base, ovvero prima di ogni modifica è consigliabile fare un bel backup dei file che si andranno a modificare, così da evitare un infarto quando vedrai comparire una schermata bianca al posto del tuo blog.

Vulnerabilità del tuo computer

Un aspetto che molte persone sottovalutano è la vulnerabilità del computer dal quale accedono, anche solo per una volta, al blog. Assicurati che il PC sia privo di virus, spyware, malware e quant’altro… non ha senso proteggere il tuo blog se sul tuo pc c’è un keylogger in grado di intercettare il tuo nome utente e password!

Utilizza password molto resistenti

Come in ogni campo, la password è fondamentale, rendila più complessa possibile, soprattutto per gli utenti con il massimo dei privilegi come l’amministratore.
Ecco come scegliere una password sicura:

  • lunghezza di almeno 8 caratteri alfanumerici, ovvero sia lettere che numeri, magari mixando anche maiuscole con minuscole.
  • non deve contenere il nome utente associato, nè il nome o cognome della persona stessa
  • evitare di utilizzare parole di senso compiuto, come compleanno88, piuttosto usare c8eanmopl8no
  • utilizzare caratteri speciali come # @ ! ?
  • utilizzare software per generare password sicure, ad esempio IOBit
  • non utilizzare come password le date, password di soli numeri, o di nomi reali

Consiglio inoltre di:

  • evitare di salvare automaticamente le password sul computer tramite i browser
  • non salvare la password nel computer
  • sarebbe buona norma anche proteggere l’accesso al nostro pc tramite una password molto sicura

Elimina l’utente Admin

L’account Admin è l’utente standard che viene creato ad ogni installazione di WordPress, per cui l’hacker può conoscere facilmente il nome utente e concentrarsi solo sulla password (per di più accederà direttamente come amministratore!).
Aggiungi un nuovo utente (deve avere il nome-utente diverso dal nome che faremo visualizzare nel blog), assegnali il permesso di Amministratore. Fai il logout e accedi con le credenziali del nuovo utente. Elimina l’utente Admin e assegna al nuovo utente tutti gli articoli di Admin seguendo le istruzioni a video.

Cambiare il prefisso delle tabelle del database

Anche qui wordpress pecca un pochino, nel senso che di default, le tabelle hanno il prefisso wp_ … così l’hacker è più facilitato nel suo sporco lavoro. Dagli filo da torcere, cambia il prefisso, ad esempio mettendo tab_wp_X con X l’iniziale del nome del blog. Ma come fare?
A tal proposito ci viene in aiuto un ottimo plugin, wp security scan, che in un solo click, ci permette di effettuare questa modifica (nella sezione Database).

Eliminare gli account degli utenti inattivi

Se si è lasciata la possibilità di iscriversi al blog, ti sarà sicuramente capitato di avere nuovi utenti registrati… qui nasce il problema, spesse volte questi utenti utilizzano un nome utente e password molto semplici (per non dire la stessa accoppiata utilizzata in tutto il web). Così facendo gli hacker potrebbero entrare facilmente nel tuo blog, ed in qualche modo creare problemi. Cancella gli utenti inattivi e imposta una politica di creazione delle password più severa, magari tramite un semplice plugin come Login Lock che proporrò anche successivamente.

La sicurezza del file wp-config.php

Il file wp-config.php è importantissimo, ha il compito di contenere tutte le password di accesso ai database, quindi dovrai proteggerlo al massimo!
Basta aggiungere al file .htaccess le seguenti righe di codice, e l’accesso al file verrà negato a chiunque:

# protect wp-config.php
<files wp-config.php>
Order deny,allow
Deny from all
</files>

Impedisci l’indicizzazione delle cartelle wp-

Gli spider scandagliano tutte le pagine del tuo blog per eseguire l’indicizzazione delle stesse… ma avere indicizzate pagine importanti come quelle in wp-admin, wp-content e wp-include, non è una bella cosa!
Per cui devi dire subito agli spider di non indicizzare tutta la cartella admin, come?
Inserisci nel file robots.txt la seguente riga (il file di robots, lo puoi creare automaticamente negli strumenti per webmaster > Configurazione sito > Accesso crawler ):

Disallow: /wp-*

Limitare il numero di tentativi di login non riusciti su WordPress

Login Lock limita la possibilità ad un utente di provare e riprovare ad accedere al blog tramite il classico login. Dopo N tentativi falliti in X minuti, verrà bloccato l’indirizzo ip dell’utente per Y minuti. Ottimo per evitare attacchi di hacker tramite Brute Force Attack (attacco di forza bruta, ovvero provare infinite password finchè non si trova la corretta corrispondenza col nome utente).

Aggiorna sempre WordPress

Tieni per quanto possibile il tuo blog sempre aggiornato all’ultima versione disponibile in quanto vengono spesso apportate modifiche e/o correzioni per migliorare la sicurezza del blog. Per la versione in italiano consiglio la community italiana di WP, per la versione in inglese WordPress.org.

Eliminare la stringa di versione di WordPress

Attualmente con la versione 3.2.1, non ho trovato la versione di wordpress nel sorgente, per cui chi ha versioni >= 3.2.1 salti questo punto.
WordPress aggiunge in automatico la versione attualmente installata, informazione che può essere utilizzata dall’hacker per capire come e dove è vulnerabile il blog.
Per eliminarla, tutto ciò che devi fare è aggiungere questo codice nel file functions.php del tuo tema Aspetto > Editor > functions.php :

<? php remove_action ('wp_head', 'wp_generator')?>

Ora controlla il sorgente del tuo blog (clicca col pulsante destro del mouse sulla home del tuo blog, poi scegli HTML oppure Visualizza sorgente pagina), se la versione è ancora presente, cerca ed elimina nel file header.php questa stringa:

<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />

Permessi delle cartelle e file

I permessi dei file devono essere i più stringenti possibili quindi cerca dove è possibile di dare permessi 644. Ti propongo un ipotetico schema di permessi, che va adattato da blog a blog.

  • /   :la root della directory di WordPress, tutti i file dovrebbero essere scrivibili solamente da te, tranne .htaccess che deve essere scrivibile anche da WP stesso (per il mod_rewrite).
  • /wp-admin/ : area di amministrazione, tutti i file dovranno essere scrivibili solamente da te.
  • /wp-includes/ : area di inclusioni file di WP, tutti i file dovranno essere scrivibili solamente da te.
  • /wp-content/ : area dedicata agli utenti, con tutto il contenuto che interessa all’utente, tutti i file dovranno essere scrivibili da tutti gli utenti
  • /wp-content/themes/ : cartella dei temi, se possono modificare il tema più utenti, allora devi aprire i permessi a tutti (group), altrimenti i file dovranno essere scrivibili solamente da te.
  • /wp-content/plugins/ : cartella dei plugin, tutti i file dovranno essere scrivibili solamente da te.

In generale posso consigliarti di dare ai file i permessi 644, mentre alle cartelle i permessi 755.
Inoltre se sei su un server condiviso, è bene dare al file wp-config.php permessi 644, che significa che nessun altro utente può leggere le tue password per accedere ai database.
Impostare determinati permessi può comportare il non corretto funzionamento di alcuni plugin; in questo caso poni i file dei plugin a 755.
Come cambiare i permessi? Utilizza FileZilla per accedere via FTP, poi basta cliccare col destro sul file o cartella e scegliere Impostare permessi…

Plugin consigliati da me

Ecco un post dove mostro pochi ma fondamentali plugin per proteggere il tuo blog da virus, malware e attacchi da parte di hacker.

Backup periodico di file e post

Consiglio di effettuare un periodico backup dell’intero blog wordpress, sia dei file fisici che dei post, in maniera tale da essere sempre coperti in caso di danneggiamento di file da parte di intrusioni esterne,

Fai un breve controllo

Infine, controlla immediatamente se il tuo blog è colpito da qualche problema tramite il Sucuri check.
Per il futuro, puoi controllare periodicamente il numero di pagine trovate dagli spider di google, digitando nel motore di ricerca site:www.nomesito.it . In questo modo vedrai più o meno quante pagine ha il tuo blog, così se qualcuno creerà molte pagine spam, te ne renderai subito conto.

VUOI CREARE IL TUO SITO O BLOG WORDPRESS?

Scegli uno tra i migliori hosting per WordPress

HOSTING

Scegli uno tra i migliori hosting per WordPress

Hosting

Scegli uno tra i migliori temi WordPress professionali

GRAFICA

Scegli uno tra i migliori temi WordPress professionali

Grafica

Guide e risorse per gestire il sito WordPress a 360°

GESTIONE

Guide e risorse per gestire il sito WordPress a 360°

Gestione
  
con le dita sempre in costante, frenetico movimento sulla tastiera… vengo spesso trascinato e catturato “in rete” per colpa delle mille idee che mi girano per la testa (prima o poi troverò quella giusta)… dal futuro incerto (nonostante una laurea, e chi non lo è?..siamo in tanti!) .. credo fortemente nella condivisione della conoscenza!
28 Commenti
  • Splendido articolo da trovarsi poi disponibile e gratuitamente su internet !!!
    Bravo Roberto …anzi parafrasando quello che….come direbbe Automan: “In una scala 0 a 10, devi pensare a Roberto come ad un 11” 🙂

    • Ti ringrazio! Sono felice di aiutare altre persone!

  • Grazie Roberto, info molto utili, per i backup e l’htacces e relativi account ero già tranquilla, ma un giro con il Security Check lo faro subito 😉

    • Sì, fallo che è davvero comodo per capire al volo che buchi ha il tuo blog (se ne ha)…

  • Non uso wordpress ma con questa tua guida hai fatto felice un amico… “wordpress dipendente”…. D:

    Grazie Roberto

    • Sono felice di aver aiutato qualcuno! Grazie a te!

  • Ottimi consigli, molti applicabili non solo a Worpress 🙂

  • Grazie tantissime, sono un neofita e mi sei arrivato come la manna dal cielo 🙂
    ti devo mettere fra i preferiti perchè nessuno da info cosi chiare come fai tu 🙂

    • Ti ringrazio 🙂 Mi fa molto piacere!

  • purtroppo da quando ho installato il plug-in Login Look tutto il pannello amministratore ha perso la grafica, subito appena l’ho attivato mi ha reindirizzato alla pagina di login è già si vedeva che era cambiata la schermata di accesso, anche disattivandolo non cambia niente.
    Ti ho mandato una mail ma ho pensato che fosse meglio scriverti qui anche perchè puo’ essere interesse di tutti 🙂
    grazie anticipatamente per la risposta

    • per il tuo problema (disattiva il plugin login lock):

      Sembrerebbe un problema di impaginazione (codice css)…

      Io farei così, prima di tutto un bel backup di tutte le cartelle del sito, poi se hai un vecchio backup funzionante (con la stessa versione di WP), sovrascriverei tutta la cartella wp-admin … altrimenti se non hai la copia di backup (male!), scarica il pacchetto di installazione di quella precisa versione, e poi sovrascrivi tutto.

      Incrocia le dita!

      PS: possibilmente fallo di notte quando non hai nessuno sul sito

      • Ok risolto tutto ricopiando la cartella admin. Ho reinstallato login look e tutto funziona bene, forse il problema è stato creato con la modifica degli attributi delle cartelle che ti avevo detto per email 🙂
        grazie ancora per la disponibilità e la pazienza

        • Meno male, prego 🙂

  • Roberto,

    la tua guida è eccezzzzzzzionale e molto utile.
    Ho già applicato diversi dei tuoi consigli..pian, piano 🙂
    Una info: quando dici “Basta aggiungere al file .htaccess le seguenti righe di codice…”

    il codice va bene inserirlo alla fine del file stesso?
    Grazie

    • Ti ringrazio!

      Sì, il codice puoi inserirlo dove vuoi all’interno di questo file.

  • Ah, un altra cosa….ma cosa sono i bots..non quelli del tesoro 🙂

    • I bots sono dei programmi che accedono alla rete attraverso gli stessi canali che utilizzano le persone. Ad esempio in internet c’è il web crawler, chiamato comunemente spider (ragno), vengono lasciati girare nella rete soprattutto dai motori di ricerca per cercare nuove pagine dai indicizzare (e molte altre funzioni).

      • Ok, grazie mille

  • Ciao Roberto,

    ottimo articolo. Ho un problema, non riesco più a creare nuovi utenti da amministratore, mi arriva un messaggio che mi dice (quando inserisco la mail dell’utente) che sono permessi solo numeri e lettere come se la chiocciola gli desse problemi.

    Hai qualche idea? Grazie molte, Marco

    • Ciao Marco,
      hai installato dei plugin ultimamente? Opure hai dei plugin “di protezione” del blog? Se sì, disattiva questi plugin e prova a creare un nuovo utente… probabilmente è solo colpa di un plugin.

  • Ciao ho trovato questo tuo post semplice (abbastanza) e chiaro, sicuramente ne sai piu’ di me che sono un “hobbista” di WordPress e per questo volevo chiederti alcuni pareri su:
    plugin di sicurezza,
    – AntiVirus
    – Captcha
    – BulletProof Security

    e servizi che conosci per monitorare lo stato del sito come “strani accessi” o “hakeraggi”
    Grazie per il tuo articolo
    Ciao

    • Ciao Edoardo,
      hobbista e mi parli di sicurezza? Sei già ad un ottimo livello 🙂

      -Allora, per il plugin Antivirus ce l’ho installato, ma penso che si possa fare anche a meno, bisognerebbe impedire proprio l’accesso ai file del sito, questa è la soluzione migliore…
      – Per il Captcha, io non lo uso perchè a me scoccia metterlo quando devo lasciare commenti in altri siti, quindi suppongo che scocci anche all’utente del mio sito… Stò utilizzando un ottimo plugin per ridurre i commenti spam, si chiama “hiddy”
      – l’ultimo non l’ho mai provato, ma sembra molto buono… però c’è da vedere quanto pesa sulle prestazioni del sito

  • Bell’articolo.

    L’unica cosa che tanti si dimenticano di dire e che si può proteggere quanto si vuole la propria installazione di Wp ma se sul server ove è ospitato il sito (nel 99,99 % dei casi si tratta di hosting condivisi) ci sono siti web non aggiornati PURTROPPO si è in pericolo ugualmente 🙁

  • Ciao Roberto, l’articolo è molto interessante…però mi è venuto un dubbio sulla cancellazione dell’utente admin…infatti non sarebbe meglio creare un altro amministratore e poi scrivere come autore? ovvero avere un utente amminstratore e un altro come autore o editore che scrive…. invece tu consigli di creare un altro amministratore e di far comparire in pubblico un altro nome…ma il nome dell’amministratore può essere facilmente individuabile…infatti cliccando sul box autore qui esce prototipo88…che alla fine è come se si avesse ancora l’utente admin…

    • Certo, la tua è una buona idea/soluzione al problema, grazie!

  • Guida molto interessante! Sicuramente prenderò spunto per migliorare la sicurezza dei miei siti.

  • Ciao Roberto,
    ho letto il tuo ebook “30 cose da non fare con wordpress”. Nella parte in cui spieghi come “oscurare” le pagine readme e license ho seguito alla lettera le tue indicazioni. Il problema è che oltre a quelle due pagine mi oscura anche tutte le altre pagine del sito che non siano la home.
    Ho aperto il file con notepad++ e visto che facendo copia/incolla della stringa di codice dall’ebook al file veniva tutta su un rigo l’ho messa a posto io manualmente.
    Secondo te dove sbaglio?
    Grazie

    • Roberto Iacono

      Te lo metto qua, dimmi se funziona che magari è solo un problema dell’ebook:

      <files readme.html>
      order allow,deny
      deny from all
      </files>