Linee guida di base per sicurezza su server di hosting condiviso
- Assicurarti che il computer locale sia pulito. A tal fine utilizza software antivirus aggiornati come:
- Norton Internet Security, che offre Antivirus, Antispyware, Two-way firewall, Antiphishing, etc.
o - Kaspersky Internet Security, che offre protezioni integrate da ogni minaccia internet, come Parental Control, un firewall personale, un filtro anti-spam, Privacy Control e molto altro.
- Norton Internet Security, che offre Antivirus, Antispyware, Two-way firewall, Antiphishing, etc.
- Verifica che tutte le applicazioni web siano aggiornate. Ciò include tutti i moduli, i componenti o quant’altro aggiunto e/o integrato;
- Assicurati di utilizzare plugin scaricati da fonti ufficiali. I file scaricati da fonti non ufficiali vengono spesso modificati per includere codice aggiuntivo che include backdoor che gli aggressori possono utilizzare e infettare un sito;
- Scegli una password sicura per l’account principale, MySQL, FTP e indirizzi email. Non usare la stessa email per diversi utenti. Ad esempio, un utente MySQL non dovrebbe avere la stessa password di un utente FTP;
- Evita di avere directory con autorizzazioni superiori a 755. Se le applicazioni richiedono tali directory, prova a metterle fuori del tuo webroot (public_html) o ad inserire un file .htaccess contenente “deny from all” per limitare l’accesso pubblico a questi file.
- Modifica le impostazioni PHP locali per una maggiore sicurezza. Ciò può essere fatto disattivando le funzioni e le opzioni “inutili”. Ecco alcune direttive consigliate:
allow_url_fopen=off
disable_functions = proc_open , popen, disk_free_space, set_time_limit, leak, tmpfile, exec, system, shell_exec, passthru
Tieni presente che le direttive sopra riportate possono ridurre la funzionalità del tuo codice. Devono essere incollati in un file php.ini in ogni directory a cui desideri applicarli.
- Nega a perl ed ad altri bots l’accesso al sito. Questo può essere facilmente fatto con le seguenti regole nel tuo file .htaccess:
SetEnvIfNoCase User-Agent libwww-perl bad_bots
order deny,allow
deny from env=bad_bots
- Se non si utilizza gli script Perl, aggiungere un “gestore falso” per questi file. Creare un file .htaccess nella home directory con il seguente contenuto:
###Deny access to all CGI, Perl, Python and text files
<FilesMatch “.(cgi|pl|py|txt)$”>
Deny from all
</FilesMatch>
###If you are using a robots.txt file, please remove the
# sign from the following 3 lines to allow access only to the robots.txt file:
#<FilesMatch robots.txt>
#Allow from all
#</FilesMatch>
Quanto indicato sopra impedirà l’esecuzione di script Perl. Molti exploit / backdoors sono scritti in Perl e il contenuto indicato sopra impedirà la loro esecuzione. Questa direttiva si applica a tutte le sottodirectory.
IMPORTANTE: una volta che il tuo account è stato compromesso, è molto probabile che l’intruso lascerà un backdoor per accedere facilmente in un secondo momento. Ecco perché riparare semplicemente il codice vulnerabile potrebbe non essere sufficiente. Trovare il backdoor sarà impegnativo e costoso (richiede uno sviluppatore professionale). Ecco perché potrebbe essere preferibile iniziare da zero il sito.