Suhosin, angelo custode in coreano del Sud, è un hardener per PHP, ovvero un software che si frappone, per così dire, tra l'utente ed il programma Web PHP nell'intento di fornire funzionalità atte a raggiungere una maggior sicurezza.
Suhosin mette a disposizione funzionalità basilari, dedicate alla difesa dei programmi PHP a fronte di codice mal scritto (input utente poco o per nulla validato), ed avanzate, quali la cifratura di file di sessione e cookie ed il controllo preventivo dei file caricati tramite upload, peculiarità apprezzate anche dai programmatori/sistemisti più avanzati ed attenti alla sicurezza dei loro prodotti informatici.
Nell'hardening di programmi PHP, Suhosin di Hardened-PHP Project rientra di diritto nella lista delle tecnologie da adottare a difesa perenne e fedele del software, in unione con una programmazione conscia, una rete ed un server adeguatamente configurati ed un firewall di livello applicativo. Tutto questo affinché il solito lamer genio quindicenne non abbia ancora a rovinare le giornate ai - già abbastanza oberati di lavoro - programmatori Web.
Esistono due versioni dell'hardener Suhosin, una patch ed un'estensione standard PHP. La prima ha come fine la protezione da buffer overflow dello stesso interprete PHP, mentre la seconda rappresenta un caleidoscopio di funzionalità utili.
Per applicare la patch è necessario ricompilare i sorgenti di PHP, ciò che potrebbe rompere però la compatibilità con altri componenti software. C'è da dire, tuttavia, che Zend Optimizer ed APC, le due più importanti tecnologie a stretto servizio di PHP (a mio avviso) funzionano senza far una piega.
Nella trattazione descriverò, in ogni modo, l'installazione e l'utilizzo teorico e pratico, convalidato da oltre un mese di "prova su strada" su server di produzione, dell'estensione PHP, escludendo le funzionalità ancora in stato sperimentale ed includendo solamente le più utili o innovative.
L'estensione Suhosin è stata testata su programmi Web PHP proprietari complessi, su server Linux Debian4 con installazioni A2M5P5 (per PHP5 è presente stabilmente anche l'"ottimizzatore" APC). Come annotazione, va infine detto che, secondo l'autore, il calo massimo di prestazioni medie utilizzando sia estensione che patch risulta in una diminuita velocità del 9%.
Per una lista completa delle funzionalità si rimanda al sito Web del progetto,
Sull'installazione non spenderemo fiumi di parole. Da un server LAMP Debian o equivalente correttamente funzionante e configurato, digitare apt-get install php5-suhosin come root. Questo è tutto. Per quanti fossero invece interessati a come installare anche la patch, consiglio un HowTo molto ben fatto. proseguiamo con la configurazione.
A completamento della semplicissima installazione, viene creato il file /etc/php5/conf.d/suhosin.ini che abilita di fatto l'estensione:
extension=suhosin.so
I file in conf.d/ su Debian affiancano il php.ini nella configurazione ed abilitazione delle estensioni PHP.
Di qui in avanti, e per il prosieguo dell'articolo, vedremo alcune delle principali funzionalità di Suhosin, distinte per tipologia di effetto.
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Zend FrameworkDiventate professionisti dello sviluppo Web. Zend Framework è lo... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |