
Tutorial NSN Sentinel 2.0.1
by Rino www.phpnukefordonkeys.com
Introduzione
Negli ultimi mesi c'è stata una notevole produzione di addons diretti a
sconfiggere i numerosi attacchi di tipo SQL Injection aventi come obiettivo il
nostro beneamato Nuke. Ne abbiamo testati diversi ma alla fine abbiamo dedicato
la nostra attenzione a NukeSentinel™ : dopo aver
testato la versione ed utilizzato con ottimi risultati la versione 1.2.0
abbiamo installato e testato l'ultima release la 2.0.1 (agosto 2004). Abbiamo
cercato di condensare le nostre esperienze in questo tutorial che, visto
l'argomento sempre - ahimè - in continua evoluzione, non è sicuramente da
considerare definitivo, quindi periodicamente subirà aggiornamenti che
pubblicheremo man mano che reperiremo le novità.
Cosa fa
NukeSentinel™ è un pacchetto di script "specializzati" per i vari tipi di attacco.
Una volta installato e configurato si metterà a guardia del tuo CMS vigilando ed
intervenendo in modo automatico o manuale richiedendo il tuo intervento. A
seconda di come viene configurato può bloccare subito l'IP dell'attaccante,
metterlo alla berlina in homepage e addirittura bombardargli il pc con una
scarica di popup che porterà al crash del sistema. Inoltre ad ogni tentativo di
attacco potete decidere se ricevere una email con la quale venite informati
sull'attività, sul tipo di attacco, su l'IP ed inoltre una serie di informazioni
tecniche. Guardando una di queste mail vedrete mittenti e provenienze le più
disparate: la prima che ho ricevuto è arrivata da Tokyo, ma chi la mandava?
(trovate una raccolta di email campioni alla fine del tutorial).
Dovete sapere che esiste una rete mondiale che gestisce allocazione e
registrazione dei servizi che supportano globalmente le operazioni in Internet.
Attualmente esistono quattro Regional Internet Registries che operano in tutto
il mondo. Si tratta di gruppi che comprendono servizi tipo Internet Service
Providers, National Internet Registries, e organizzazioni similari.

Le quattro organizzazioni nel mondo
Tra i tanti servizi svolti c'è anche quello di controllo del traffico ed in
particolare tracking spam and hacking ossia la tracciatura dello spam e degli
attacchi diretti ai siti web. Se volete approfondire questo tema potete leggere
questo articolo (purtroppo in italiano non esiste molto materiale) ,
http://www.telecomitalialab.com/libri/InternetTouch/aree/guadagni2.pdf
Passiamo subito alla fase di installazione. Questa operazione, a
prima vista, può sembrare complicata ma vi assicuro che ponendo un po' di
attenzione e seguendo il tutorial non avrete problemi.
Installazione
Scaricate l'ultima versione del pacchetto direttamente dal sito ufficiale (non
occorre iscrizione) http://www.nukescripts.net/modules.php?name=Downloads (in
questo tutorial abbiamo utilizzato la versione 2.0.1)

Scompattate ed otterrete

aprite la cartella

Trovate 4 files .txt che non prenderemo in
considerazione e due files che contengono la Guida originale in lingua inglese.
Aprite la cartella html

Trasferite sul remoto seguendo questo schema
 |
Senza aprirla trasferite la cartella sulla root
del server remoto. Questa cartella
contiene i templates da modificare simili a quelli del forum phpBB. Sono in
estensione *.tpl modificabili con editor. |
 |
Trasferite il contenuto delle 3 cartelle (case,
links, modules) nelle rispettive cartelle sul server remoto |
 |
Trasferite block-Sentinel e
block-Hacker_Beware.php nella cartella blocks sul server remoto |
 |
Aprite la cartella admin e trasferite il file
sentinel.png nella stessa images/admin sul server remoto.
Senza aprirla trasferite la cartella sentinel nella cartella images sul
server remoto |
 |
Se non hai modificato il file originale
includes/javascript.php puoi trasferire direttamente questo file che andrà a
sovrascrivere l'originale aggiornandolo. Prima di fare l'upload devi
rinominarlo da javascript.tmp a javascript.php
Se invece hai già modificato questo file devi apportare manualmente
queste modifiche |
 |
Sempre in questa cartella trovi 3
files: overlib.js overlib_hideform.js sentinel.php che vanno
trsferiti anche essi sulla cartella includes del server remoto |
 |
Aprite la cartella e trasferite
tutta la cartella Sentinel (senza aprirla) sul server remoto nella
cartella language. Ora dovete caricare il file del linguaggio italiano
che abbiamo preparato specificatamente per questa versione, seguite queste
istruzioni:
Scaricate il file cliccando su questa icona
scompattatela ed otterrete questa cartella
apritela e troverete il file
che dovete trasferire sul vostro server esattamente qui language/sentinel
|
Procediamo...
 |
Trasferite la cartella
Blocked_IPs nella cartella module sul server remoto |
 |
Se non hai modificato il file
originale header.php puoi utilizzare questo per sovrascrivere ed aggiornare
l'originale. In tal caso però devi prima rinominarlo da header.tmp ad
header.php
Se invece hai già modificato questo file oppure sei in dubbio in merito a
ciò, devi apportare manualmente
queste modifiche |
Procediamo...
 |
Trasferite questo file sulla root
del server remoto solo se dovete fare l'upgrade da NSN IP Banner. Se non
siete in questa condizione non trasferite questo file. |
 |
Trasferite questo file sulla root
del server remoto. Grazie a questo file installerete, aggiornerete o
eliminerete automaticamente le tabelle di NukeSentinel(tm) . |
L'upload
è terminato ma occorre fare ancora delle modifiche su due files:
Aprite il file mainfile.php che trovate nella root del vostro Nuke e subito sotto la linea di
apertura aggiungete questa stringa
E' quasi fatta... nel file Your Account rimane da correggere un bug che non permette
agli utenti di aggiornare i propri dati,
clicca qui per scoprire come fare
TRASFERIMENTO
DELLE TABELLE SUL DATABASE
Aprite il vostro browser web e loggatevi come Admin. Ora, nella barra degli indirizzi, digitate
http://www.tuosito.com/nsnst.php oppure, se
dovete fare l'upgrade da NSN IP Banner, digitate
http://www.tuosito.com/nsnib.php
Ti apparirà un'immagine come questa:

Se questa è la prima volta che installate Sentinel
scegliete Prima Installazione di Nuke Sentinel nel menu a discesa mentre
se avete
già una versione installata dovrete farne l'upgrade (noi per
esempio in questo tutorial eseguiremo l'upgrade dalla versione
1.2.0 alla 2.0.1). Per fare ciò dovremo passare per tutte le opzioni
partendo dalla prima ed arrivando all'attuale.
NOTA: Se dovete fare l'upgrade partendo da versioni precedenti
alla 1.2.0 è consigliabile effettuare la disinstallazione e poi
installare l'ultima versione come
Prima Installazione di Nuke Sentinel
Riprendiamo le operazioni...
Nel menu a discesa scegliete la vostra
opzione, noi sceglieremo Upgrade tabelle di NukeSentinel™ 1.2.0 to 2.0.0 RC
4 e cliccate sul bottone COMMIT.
Se l'upgrade avverrà con successo vedrete apparire qualcosa di
simile a questo:

Ora dovete ripetere l'operazione per l'upgrade del livello successivo e qui
potreste avere qualche problema nel senso che potreste trovarvi nella condizione
di non poter andare avanti. Per evitare questo problema fate così:

ripete le fasi descritte qui sopra (uscite dal sito, ecc...) fino ad arrivare
all' ultimo upgrade

NOTA
IMPORTANTISSIMA
Appena terminate l'installazione cancellate subito, per sicurezza, il file nsnst.php dalla root sul
server remoto. In
tal modo eviterete che qualche malintenzionato lo possa utilizzare per cancellare Sentinel e
crearvi problemi sul sito.
Complimenti!
L'installazione è terminata! Prendetevi un momento di relax,
gustatevi un buon caffè e preparatevi allo sforzo finale:
Amministrazione e Configurazione di NukeSentinel™ .
|
Cliccate su Vai
in Amministrazione NukeSentinel™ e si aprirà una
tabella simile a questa:

Questa è la pagina principale, il ponte di comando
da cui potrete accedere a tutte le opzioni di amministrazione della vostra
sentinella.
Iniziamo a conoscere queste numerose possibilità.
|

| Sei su >> Amministrazione NukeSentinel™ >> SETTAGGI
SISTEMA DI AIUTO |
Tipo di Sistema
di Aiuto
Con questo settaggio puoi scegliere il sistema di aiuto che
apparirà quando cliccherai o passerai il mouse su
e
. Il
settaggio di default è Mouseover.

Mouseover su
immagine
Selezionando questa opzione sarà sufficiente passare il
mouse su
per ottenere l'apertura della finestra contenente l'aiuto
relativo. Attenzione perchè in alcuni temi (realizzati in Flash
o con files Javascript questa opzioni potrebbe non funzionare
correttamente.
Click su
immagine
Selezionando questa opzione occorrerà cliccare su
per ottenere l'apertura della finestra contenente
l'aiuto relativo.
|

| Sei su >> Amministrazione NukeSentinel™ >>
STATO URL NUKE |

potete scegliere tra due opzioni:
Si
Questo è utile perchè obbliga i tuoi utenti ad accedere al
tuo sito solo e sempre attraverso l'URL che avete settato in
Preferenze del vostro Nuke.
Per esempio se il vostro server permette che il vostro sito sia
raggiungibile sia con
http://tuosito.com che con
http://www.tuosito.com
sicuramente si creeranno problemi di confusione e conflitti di
cookies per i vostri utenti che avranno due sezioni aperte per
lo stesso sito. Potete osservare questa situazione entrando in
qualche sito conosciuto usando sia
http://nomesito.com e/o
http://www.nomesito.com: in un url loggatevi e poi entrate
nell'altro url come utente anonimo (non loggato). Ora se fate un
login anche nel secondo url potrete avere conflitti con i
cookies generati per lo stesso dominio. Scegliendo questa
opzione l'utente che accede da
http://tuosito.com verrà
reindirizzato su
http://www.tuosito.com
No
Scegliendo questa opzione il tuo sito manterrà la configurazione
originale prestabilita dal gestore del server.
|

| Sei su >> Amministrazione NukeSentinel™ >> SETTAGGI
BOX LATERALE |

Questo menu è
usato per gestire ciò che viene mostrato nei blocchi laterali di
NukeSentinel™ . Se desiderate usare i blocchi laterali di
NukeSentinel™ queste sono le opzioni disponibili:
Non mostrato
I links dove potete vedere le informazioni aggiuntive non
saranno linkabili. Gli indirizzi IP verranno mostrati come
testo normale.
Solo Admin
Verranno mostrati gli IPs con link attivo per le informazioni
addizionali solo agli amministratori del sito
Solo Users/Admins
Come sopra ma stavolta potranno accedere ai links anche gli
utenti registrati.
Tutti i visitatori
Come sopra ma ora chiunque acceda al sito potrà vedere e
linkare i links informativi.
|

| Sei su >> Amministrazione NukeSentinel™ >>
MOSTRA MOTIVO |

Questo menu è
usato per selezionare il motivo per il quale la visualizzazione
del blocco laterale non è mostrato:
Non mostrato
Scegliendo questa opzione nessun motivo verrà mostrato
Solo Admin
Scegliendo questa opzione solamente gli amministratori potranno
vedere i motivi del blocco
Solo Users/Admins
Scegliendo questa opzione utenti registrati e amministratori
potranno vedere i motivi del blocco
Tutti i visitatori
Scegliendo questa opzione tutti potranno vedere i motivi del
blocco siano essi visitatori, utenti registrati o
amministratori.
|

| Sei su >> Amministrazione NukeSentinel™ >> STATO
SITO |
Interruttore Sito
Per mette di scegliere se il sito deve essere Abilitato o
Disabilitato

Pagina di
Default
Questo interruttore permette di selezionare il file di
default che sarà mostrato quando terremo il sevizio disabilitato
nella opzione precedente

|

| Sei su >> Amministrazione NukeSentinel™ >>
STATO DI BLOCCO DEL PROXY |
Bloccare
Proxy

Blocca tutti gli IPs mascherati
dal proprio gestore (es: Fastweb assegna un unico IP a più
utenti). La modalità ON bloccherà questi utenti con IP comune.
Pagina di
Deafult

Proxy reason
Questo è un file modello che potete editare per
mostrare per un utente del proxy che l'accesso non è permesso
per questo tipo di connessione.
Questa opzione funziona solo se l'opzione Bloccare Proxy è stata
abilitata (On).
Site reason
Questo è un file modello che potete editare per mostrare
il motivo per il quale l'accesso non è permesso.
|

| Sei su >> Amministrazione NukeSentinel™ >> SETTAGGI
AMMINISTRATIVI |
Path .htaccess:

In questo campo
dovete inserire il percorso del vostro file .htaccess. Ricordate
di assegnare a questo file i permessi CHMOD 666
|

| Sei su >> Amministrazione NukeSentinel™ >>
CONTATTI ADMINS |

Qui dovete
indicare l'indirizzo email al quale riceverete le segnalazioni
del sistema. Potete inserire vari indirizzi scrivendone però
solo uno per linea.
|

| Sei su >> Amministrazione NukeSentinel™ >>
AUTENTICAZIONE HTTP ADMINS |

Se disponibile,
con questa opzione potete obbligare gli amministratori del
sito ad effettuare il login via HTTP prima di poter
accedere alla pagina di amministrazione del sito (admin.php).
L'autenticazione HTTP rappresenta la protezione più sicura. I
dettagli per la configurazione di questo servizio variano da
server a server. È quindi necessario consultare la
documentazione del proprio server nella sezione dedicata
all'autenticazione ("authentication"). Contattate pure il vostro
amministratore di sistema.
|

| Sei su >> Amministrazione NukeSentinel™ >>
AUTOCANCELLAZIONE BLOCCHI |

Questa opzione
permette di decidere se la cancellazione degli IPs bloccati
deve essere automatica ogni volta
che Sentinel accede al database. Si setta dai singoli settaggi
in configurazione.
|

| Sei su >> Amministrazione NukeSentinel™ >>
PROTEZIONE ATTACCHI DOS |

Da qui potete
abilitare o meno la protezione contro i tentativi di attacco DOS
( Denial of Service Attack Blocker).
Non si usano più in quanto ci sono
nuovi tipi di attacchi ma è sempre meglio attivarlo...
|

| Sei su >> Amministrazione NukeSentinel™ >> SETTAGGI
LISTA PAGINE |
IPs per pagina
Quanti IPs desiderate per pagina.

Formato
Incolonnamento
Avete quattro opzioni per il formato dell'incolonnamento.

Ordinare per
Scegliete l'ordinamento dei dati.

|
Torniamo al pannello principale

Amministrazione Sito
Cliccando qui tornate al pannello di amministrazione generale
del sito.

Cliccate su
Indirizzi IPs Bloccati
| Sei su >> Amministrazione NukeSentinel™ >>
INDIRIZZI IPs BLOCCATI |
Viene mostrata la lista degli IPs bloccati ed
una lunga serie di informazioni.


Cliccando sulle icone sulla destra
otterrete le seguenti informazioni:
Cliccando su questa opzione poterete vedere lo storico dell' IP
bloccato. Per esempio:

Cliccando su questa opzione potrete editare i dati dell 'IP. Per
esempio:

Cliccando su questa icona cancellerete questo indirizzo IP dal
database e quindi gli darete di nuovo accesso al sito.
|

| Sei su >> Amministrazione NukeSentinel™ >>
AGGIUNGI INDIRIZZI IPs |
Con questa opzione potete aggiungere IPs
manualmente utilizzando il form che vedete in basso.


Blocca IP
Potete inserire un IP nel formato xxx.xxx.xxx.xxx per
bloccare un IP specifico oppure nel formato formato xxx.xxx.
per bloccare un gruppo completo di IPs.
Scade tra giorni
Potete indicare il numero di giorni di blocco oppure usare
l'opzione Permanente.
Note
In questo campo potete annotare i motivi del blocco ed altri
particolari che riteniate utili.
Motivo del Blocco
Abuse Author: Tentativo di attacco
indirizzato alla tabella nuke_authors.
Abuse CLike: Tentativo di attacco utilizzando il comando di
Injection Mysql
Abuse Filters - Principalmente per tentativi di attacchi XSS.
Abuse Harvester - Blocco di user agent che usano programmi
noti come bots e semelhantes che vengono usati per
raccogliere indirizzi di email, immagini e altro
Abuse Other - Qualche altro tipo di blocco non presente
nella lista
Abuse Referer - Blocco per tentativi di
accesso Anonimi che usano siti porno
Abuse Request - Blocca l'utilizzo di metodi di
richiesta quali HEAD, SEARCH. Non usarlo bloccare POST o GET
perchè potresti mandare in crash il tuo sito.
Abuse Script - Blocca l'uso di molti
tags html che possono essere usati per attaccare il sito
Abuse String -
Ti permette di bloccare qualunque stringa che tu
possa considerare un tentativo di hacking
Abuse Union -
Attacchi che utilizzano comandi di tipo Union per
inserimenti nel database |

| Sei su >> Amministrazione NukeSentinel™ >>
CANCELLA TUTTI GLI INDIRIZZI IP |

Questa
opzione permette di cancellare dal database tutti gli IPs
bloccati.
 |

| Sei su >> Amministrazione NukeSentinel™ >>
CANCELLA BLOCCHI SCADUTI |

Cliccando su questa
opzione i blocchi scaduti verranno cancellati dalla lista.
|

| Sei su >> Amministrazione NukeSentinel™ >>
LISTA ADMIN PROTETTI |

Cliccando su questa opzione verrà
mostrata la lista degli amministratori con accesso protetto via
autenticazione HTTP

|

| Sei su >> Amministrazione NukeSentinel™ >>
SCOPRI NUOVI AMMINISTRATORI |

Con questa
opzione permettete la ricerca e la segnalazione di nuovi
amministratori aggiunti al database senza autorizzazione.
|
Cliccate su
Configurazione NukeSentinel

apparirà questo

| Sei su >> Configurazione NukeSentinel™ >>
SETTAGGI ADMIN BLOCKER |


In alto
vedete un esempio di configurazione per proteggersi da tentativi
di attacchi al super admin nella tabella nuke_authors.
Analizziamo ora le
varie opzioni:

Attiva
Off: Modulo di Protezione disattivato
E-mail Admin: Invia una e-mail all' (agli) Admin(s) del sito
Reindirizza: Invia l'attaccante in un URL definito
precedentemente
Pagina di Default: Invia l'attaccante nella pagina di default
E-mail & Reindirizza: Invia una e-mail all' (agli) Admin(s)
del sito e invia l'attaccante in una pagina precedentemente
definita
E-mail & Pagina di Default: Invia una e-mail all' (agli) Admin(s)
del sito e invia l'attaccante nella pagina di default
E-mail, Blocca & Reindirizza: Invia una e-mail all' (agli) Admin(s)
del sito, blocca l'IP dell'attaccante aggiungendolo nella lista .htaccess e
nel database, e lo invia in un URL precedentemente definito
E-mail, Blocca, & Pagina di Default: Invia una e-mail all'
(agli) Admin(s) del sito, blocca l'IP dell'attaccante aggiungendolo
nella lista .htaccess e nel database, e invia l'attaccante nella
pagina di default.
Scrivi su htaccess:
(Non
disponibile su questo sito)

Le opzioni di questo
menu sono:
Si:Scrive
l'IP bloccato nell'archivio
.htaccess
No: Non scrive l'IP bloccato nell'archivio
.htaccess
Reindirizza a

Indica un URL
al quale saranno reindirizzati gli IPs bloccati
Tipo di
blocco

Potete
scegliere tra le seguenti opzioni:
IP Completo (127.2.3.4) : Blocco di IP specifico che verrà
addizionato al file .htaccess e al database
1 ottetto (127.2.3. *) : Blocco o Subnet di IP che verrà
addizionato al file .htaccess e al database
2 ottetti (127.2. *. *) : Blocco o Subnet di IP che verrà
addizionato al file .htaccess e al database
3 ottetti (127. *. *. *) : Blocco o Subnet di IP che verrà
addizionato al file .htaccess e al database
Pagina di
Default

Da qui potete
selezionare il template di blocco specifico a cui inviare
l'attaccante. Le pagine potranno corrispondere al tipo di
attacco.
Traccia IP

Ci sono due
opzioni On e Off.
On: Vengono incluse informazioni dettagliate nella email che
viene inviata all'amministratore del sito.
Off: Non vengono incluse informazioni dettagliate nella email
che viene inviata all'amministratore del sito.
Motivo del
Blocco

In questo box potete scrivere un
testo con il motivo per il quale l'IP è stato bloccato.
Durata del Blocco

Potete scegliere tra queste
opzioni:
Permanente: Questo tipo di blocco non ha una scadenza. L'IP
potrà essere rimosso solo quando l'amministratore lo cancellerà
dal database.
Giorni da 1 a 365: Questo tipo di blocco dura per un certo
tempo. Il blocco dell'IP scadrà al raggiungimento dei giorni che
avete scelto.
Tutti i settaggi degli altri tipi di blocco
utilizzano lo stesso schema che abbiamo analizzato.
|
Esempi di Email ricevute con segnalazione di attacco
A titolo di esempio riproduciamo alcune email che ci sono pervenute da quando
abbiamo installato Sentinel. Per problemi di spazio solo la prima email viene
mostrata nella sua interezza mentre delle successive viene mostrata solo la
parte superiore che contiene le informazioni più importanti. Preparatevi a
ricevere un buon numero di queste email specie se il vostro sito ha un buon
traffico, noi siamo arrivati a riceverne anche 30 al giorno. Attenzione però
perchè alcune segnalano dei falsi attacchi che scaturiscono a causa
della sensibilità di Sentinel quando settato a livelli alti. In particolare
abbiamo constatato che una delle aree più suscettibili è risultata essere il
bloccoMessenger specie quando vengono inseriti messaggi lunghi o con
qualche stringa contenente URL.









Testo, immagini e loghi (esclusi quelli registrati) sono proprietà intellettuale di Gennaro Cinquegrana
© 2004
www.phpnukefordonkeys.com
|