Se gestisci un sito su internet, la sicurezza è un aspetto assolutamente da non tralasciare in quanto nell’infinito mondo del web è sempre presente un certo numero di individui pronti ad attaccare il tuo sito oppure usarlo come base per attaccare i tuoi visitatori.
Diventa quindi fondamentale andare a proteggersi contro questi attacchi e in questa guida vedremo come farlo grazie al file .htaccess (ovvero il file di configurazione del server Apache).
Dovrai agire sul file .htaccess andando semplicemente ad aggiungere le seguenti direttive nel file, nel punto in cui vuoi tu (e non devi quindi nè modificare e nè cancellare il contenuto già presente nel tuo file .htaccess).
XSS
La prima direttiva serve per proteggere il sito contro gli attacchi XSS (Cross-site scripting). Questo è un tipo di vulnerabilità presente nei form dei siti dinamici. Un hacker è in grado di intromettersi e modificare i form al fine di eseguire del codice malevolo sul lato client. Grazie alla seguente direttiva il tuo sito potrà essere esente da questo tipo di attacchi:
Header set X-XSS-Protection "1; mode=block"
Frame e click-jacking
Con questa seconda direttiva andremo a risolvere il dilagante problema del click-jacking (ovvero il click di un utente su un oggetto nella pagina viene “intercettato” a sua insaputa, e quindi il suo click viene reindirizzato verso un altro oggetto che può avere conseguenze più o meno gravi come il download di virus, l’invio di spam oppure l’attivazione di un’offerta settimanale indesiderata su smartphone). Per farlo bisogna andare a disabilitare tutti i frame e gli iframe. Ecco la direttiva:
Header set X-Frame-Options DENY
Lo svantaggio di questa direttiva è che se il tuo sito contiene dei frame o iframe, questi smetteranno di funzionare.
Server header
Questa direttiva serve per nascondere le informazioni del server su cui si trova il sito, tra cui la versione di Apache, la versione di PHP in uso e altre estensioni aggiuntive. Ecco un esempio:
Server: Apache/2.4.2 (Unix) PHP/4.2.2 MyMod/1.2
Con la seguente direttiva andremo a nascondere queste informazioni dal pubblico:
Header unset X-Powered-By
Content-sniffing
Questo tipo di attacco viene svolto analizzato il contenuto di un byte stream attraverso il quale si va a dedurre il tipo di file contenuto nei dati. Molti server HTTP inviano un Content-Type (MIME type) che non corrisponde al file in questione. L’eventuale responsabile di un attacco sfrutta questa falla per iniettare del codice malevolo all’interno del file e farlo renderizzare dal browser come codice HTML. La direttiva per bloccare questo tipo di attacco è la seguente:
Header set X-Content-Type-Options nosniff
Riassunto
Per concludere, qui puoi trovare tutte le direttive spiegate in questa guida tutte unite insieme, così ti basterà fare la copia del seguente codice e incollarlo all’interno del tuo file .htaccess;
Header set X-XSS-Protection "1; mode=block"
Header set X-Frame-Options DENY
Header unset X-Powered-By
Header set X-Content-Type-Options nosniff
1 commento
Denis · 03/09/2019 alle 19:09
Gran bel articolo! Molto utile..