Intrusion Detection System
PHPIDS è un Intrusion Detection System, ovvero un software che tenta (e dovrebbe anche riuscirci) di identificare e neutralizzare tentativi di intrusione e di defacing dei siti.
Non sto a farla troppo lunga: se sai appena appena l'inglese, capisci perfettamente di cosa si tratta anche leggendo dal sito originale del progetto (e magari vorrai anche provare la demo).
Proverò invece a spiegarti come usarlo.
PHPIDS è scritto in PHP, ovviamente. Necessita quindi di un server e di qualche altro ammennicolo: la configurazione perfetta è la tradizionale LAMP (Linux, Apache, MySQL, PHP).
Installarlo è piuttosto semplice: si scarica dal sito
wget http://php-ids.org/files/phpids-0.5.3.tar.gz
si scompatta in una cartella (preferibilmente al di sopra della DOCUMENT_ROOT)
tar xvfz phpids-0.5.3.tar.gz
Già che ci sei, scarica anche quest'altro file:
wget https://svn.php-ids.org/svn/trunk/lib/IDS/default_filter.xml
Edita il file di configurazione, per adattarlo alle tue necessità
vi <cartella>/lib/IDS/Config/Config.ini
poi crei il file <cartella>/ids.php
vi <cartella>/ids.php
in cui incolli il frammento di codice che trovi nella pagina delle FAQ (badando ad aggiungere <?php in testa e ?> alla fine).
Includi questo file nelle tue pagine php, in testa, prima di qualsiasi altra chiamata.
I giochi sono fatti.
Se invece di avere un semplice sito hai un intero server con dei virtualhost e vuoi che PHPIDS funzioni su tutti i siti che ospiti (senza che i proprietari se ne debbano neanche preoccupare), modifica il tuo php.ini, aggiungendo questa riga
auto_prepend_file = /percorso/completo/del/file/ids.php
Se invece vuoi che PHPIDS sia attivo solo su alcuni dei siti che ospiti, vai ad editare il file virtualhost (dovrebbe trovarsi nella cartella /etc/apache) aggiungendo la riga
php_value auto_prepend_file = /percorso/completo/del/file/ids.php
all'interno del blocco virtualhost che ti interessa, oppure aggiungila all'interno del file .htaccess relativo al sito che vuoi proteggere.
Poi prova a fare lo sciocchino con un sito protetto, aggiungendo, nella barra dell'url, delle stringhe come
http://tuosito.tld/index.php?test=%22%3EXXX%3Cscript%3Ealert(1)%3C/script%3E
e guarda cosa succede.
PS. In realtà, fare il tuning fine di un programma come questo può anche prendere parecchio tempo. Io l'ho fatta un po' troppo facile, ma non vorresti mica che facessi tu io, nevvero?

Interessante se usi uno shared web hosting dove non puoi controllare il tuo webserver. Altrimenti c'è anche mod_security.
Inviato da jan — 23 Ott 2008, 08:02