Sicurezza hosting, 10 consigli per mettere al sicuro un sito – II parte

Sicurezza hosting a portata di tutti, imparando a configurare passo dopo passo i servizi PHP e il webserver Apache attraverso l'uso del file .HTACCESS

Nel corso del precedente appuntamento, si è fatta strada la convinzione che la sicurezza hosting non dipende solo dal provider, ma anche dai comportamenti che l’utente usa nella gestione del proprio account hosting. Sicurezza hosting, 10 consigli per mettere al sicuro un sito - I parteUna volta appurata questa corresponsabilità, sono stati elencati i primi cinque consigli più semplici da mettere in atto per migliorare l’aspetto della sicurezza hosting che riguarda la gestione utente.

A questi, è possibile far seguire altri cinque consigli più sofisticati, che se messi in atto rappresentano la migliore protezione possibile contro gli attacchi hacker e la compromissione della sicurezza hosting.

Sesto consiglio per la sicurezza hosting: impostare i permessi dei file

Con il termine permessi dei file si intende l’opportunità di interagire con i file presenti sull’hosting, nei modi in cui ciò è possibile, ossia in lettura, in scrittura e in esecuzione. Ogni utente deve avere permessi di accesso ai file differenti, in modo da essere sicuri che solo l’amministratore dell’hosting possa, ad esempio, eseguire script o cancellare file, mentre altre tipologie di utente possano semplicemente leggere il file ed eseguirlo.

I permessi dei file vengono indicati con una notazione numerica formata da tre cifre, di cui la prima rappresenta il permesso di lettura, scrittura ed esecuzione (o una combinazione di alcuni di questi permessi) per il proprietario del file, la seconda il permesso per il gruppo e la terza il permesso per l’utente pubblico.

La notazione prevede che:

  • il permesso di lettura venga indicato con il numero 4,
  • il permesso di scrittura venga indicato con il numero 2,
  • il permesso di esecuzione venga indicato con il numero 1,
  • lo 0 indica la mancanza del permesso.

Sono poi stabilite le seguenti combinazioni, usate per sostituire le terzine di lettere:

  • lettura e scrittura sono identificate con il numero 6 dato dalla somma della lettura (4) e della scrittura (2);
  • lettura ed esecuzione sono identificate con il numero 5 (da 4+1, ossia lettura + esecuzione);
  • scrittura ed esecuzione sono identificate con il numero 3 (2+1);
  • lettura, scrittura ed esecuzione sono identificate con il numero 7 (4+2+1).

In generale, per mantenere la sicurezza hosting i file memorizzati dovrebbero sempre avere permessi impostati a 644 o 755. Se una particolare applicazione richiede che una directory o un file abbia delle condizioni di permesso superiori (ad esempio 777), bisogna provare a porre tale file o directory fuori dalla webroot identificata di norma dalla cartella public_html oppure porre una condizione di non accesso pubblico nel file di .HTACCESS tramite l’inserimento della dicitura deny from all.

Sicurezza hosting, 10 consigli per mettere al sicuro un sito - II parte

Al di là di tutto, prima di cambiare le condizioni di permesso ai file, annotare quelli riportati (anche con uno screenshot), in modo da poterli ripristinare in caso di malfunzionamento. Per modificare i permessi dei file usare un client FTP o specificarli nel file .HTACCESS

Settimo consiglio per la sicurezza hosting: configurare il PHP

Gli hosting PHP di norma hanno un file di configurazione chiamato php.ini, da cui è possibile disabilitare alcune funzionalità che potrebbero concedere particolari privilegi di esecuzione agli hackers. Negli hosting tradizionali, non sempre è possibile modificare il file php.ini, ma alcuni provider configurano il server per poter funzionare anche con file di configurazione locali, ossia dei file php.ini che è possibile personalizzare e salvare nel percorso su cui è attestato l’account hosting e sulle sue sottodirectory.

Se il provider concede questo privilegio, è il caso di mettere mano al file php.ini locale (ricordandosi di salvarlo nella directory ove sono contenuti i file PHP da controllare). Al suo interno, infatti, dovranno comparire alcune dichiarazioni come quelle seguenti, che migliorano l’aspetto della sicurezza hosting e mettono al riparo da brutte sorprese.

Ad esempio, la dichiarazione:

disable_functions = show_source, system, shell_exec, passthru, exec, phpinfo, popen, proc_open

inserita nel file php.ini disabilita alcune funzioni PHP che potrebbero essere molto pericolose. Allo stesso tempo, la dichiarazione:

open_basedir = /home/users/example/public_html

limita a una specifica cartella i file che possono essere interpretati dal motore PHP. E ancora:

allow_url_fopen=off

serve per disabilitare l’inclusione di file disponibili su macchine remote e raggiungibili tramite protocollo FTP e HTTP. Se non prettamente necessaria, quindi, è il caso di disabilitare questa funzionalità, ma alcuni CMS, come ad esempio Joomla, richiedono che questa funzione sia attiva per garantire l’esecuzione di alcuni componenti, come l’aggiornamento automatico in un clic.

Inoltre, se si ha una versione di PHP più vecchia della 5.3.0, bisogna anche inserire nel file di configurazione le seguenti configurazioni:

safe_mode = 0
register_globals = 0

Conviene anche nascondere la versione di PHP in uso da eventuali occhi indiscreti, aggiungendo sempre al file php.ini la dichiarazione:

expose_php = off

Ottavo consiglio per la sicurezza hosting: configurare il file .HTACCESS

L’.HTACCESS è un file di configurazione per il webserver Apache, che contiene una serie di direttive testuali che permettono di specificare come il webserver deve comportarsi nella gestione dei file e directory, nella gestione degli errori, nella configurazione di PHP e via discorrendo.

Per garantire il massimo della sicurezza hosting, bisogna configurare il file .HTACCESS in modo che neghi l’accesso al sito da parte dei bot indesiderati e del linguaggio PERL. Per ottenere questo risultato, bisogna appurare che nel file .HTACCESS sia presente la seguente configurazione:

SetEnvIfNoCase User-Agent libwww-perl bad_bots
order deny,allow
deny from env=bad_bots

Inoltre, se sul sito non sono presenti script Perl da eseguire, conviene impedirne l’esecuzione, configurando un falso gestore, in questo modo:

<FilesMatch “.(cgi|pl|py|txt)”>
Deny from all
</FilesMatch>

ricordandosi di aggiungere le seguenti tre linee:

<FilesMatch robots.txt>
Allow from all
</FilesMatch>

se si sta usando un file robots.txt. Questa configurazione permette di evitare che vengano eseguiti gli script Perl, con cui sono scritti molti exploit e backdoors.

Un’altra condizione che potrebbe migliorare la sicurezza hosting è l’attivazione del modulo di riscrittura delle URL, magari per mascherare l’uso del PHP, facendolo sembrare un altro linguaggio di programmazione lato server, come Python. Così si riescono a depistare gli hacker alle prime armi. Per ottenere questo risultato, il file .HTACCESS dovrebbe contenere:

RewriteEngine On
RewriteRule ^/(.+)\.py(.+)? /$1.php$2 [L,QSA,NC]

sempre che il filtro mod_rewrite sia installato e configurato da parte del provider per bloccare alcuni attacchi PHP. Altre misure prevedono l’imposizione di particolari restrizioni ad alcuni tipi di file, la prevenzione dal browsing non autorizzato di determinate directory, il cambio della pagina di index predefinita e l’accesso sicuro ad alcune directory sono da specifico indirizzo IP.

Nono consiglio per la sicurezza hosting: attivare un piano di backup

Verificare sempre che sia presente una soluzione di backup manuale o automatica associata al servizio hosting e all’eventuale database in uso, in modo da poter resettare i file in qualsiasi momento dopo l’exploit e ripristinarli al volo a una versione pre-attacco.

Sicurezza hosting, 10 consigli per mettere al sicuro un sito - II parte

Decimo consiglio per la sicurezza hosting: proteggere anche il PC locale e usare il buon senso

Poiché sull’hosting si lavora dal proprio PC locale o dalla LAN, assicurarsi che questi elaboratori siano sempre protetti e puliti da eventuali virus e malware, per evitare che i file trasferiti possano essere stati infettati. Infine, usare sempre il buon senso: tenere sempre un PC non collegato a Internet e alla rete locale e conservare qui, in modalità offline, tutte le informazioni più importanti.

 

 

ArubaQuesto articolo è offerto da Aruba.it. Aruba gestisce una propria rete di Data Center a livello Europeo ed è leader nell’erogazione di servizi di hosting condiviso in Italia con oltre 1 milione di clienti attivi. L’offerta di hosting condiviso include diverse soluzioni per il singolo professionista o l’azienda, verifica la migliore per te.  Aruba S.p.A., fondata nel 1994, è la prima società in Italia per i servizi di web hosting, e-mail, PEC e registrazione domini, la società gestisce oltre 2 milioni di clienti. In aggiunta ai servizi di web hosting, Aruba fornisce anche tutti una serie di servizi come server dedicati, housing e colocation o servizi managed. Aruba propone anche tutte le soluzioni nell’ambito dell’e-Security, come la firma digitale, la PEC e la conservazione sostitutiva.

Facci sapere cosa ne pensi!

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *