Next Previous Contents

2. Parte2 Tools di gestione della sicurezza

In questa parte della sezione verranno descritti i vari tool presenti nei sistemi Linux, per una protezione verso gli attacchi informatici, compreso una descrizione dei firewall con particolare occhio verso IPCHIANS.

2.2 Tips & Tricks sulla sicurezza

Tricks del Kernel per la sicurezza del sistema

L'attacco di Syn Flooding è un attacco di tipo Denial of Service che procura sul servizio di rete su cui viene effetuato un temporaneo "congelamento", dovuto al riempimento della coda di backlog a causa di una raffica di pacchetti tcp con il flag SYN attivato.L'opzione per evitare questo tipo di attacco è quella di selezionare nella sezione networking options:

IP: TCP syncookie support

Un'altro attacco è quello basato sullo spoofing dell'indirizzo. Con questa tecnica il problema principale diventa riuscire a recuperare i pacchetti di risposta della macchina visto che quest'ultima cercherà di inviarli all' indirizzo spoofato, l'hacker se trova macchine che supportano il source routing potrà indicare (attraverso il flag SSR) quali macchine attraversare nel percorso di ritorno mettendo la sua macchina fra queste e riuscendo cosi a ottenere le risposte.Per disabilitare l'opzione di source routing sulla propia macchina è in modo che non venga utilizzata per gli attacchi, è quella di selezionare nella sezione networking options:

IP: DROP sources routed frames

Nei kernel più nuovi quali per esempio il 2.2.10 l'opzione del source routing di default è abilitata nel caso la macchina si tratta di un router mentre è disabilitata nel caso che la macchina si tratti di un host, comunque la variabile che abilita o disabilita questa scelta è /proc/sys/net/ipv4/conf/all/accept_source_route, a differenza degli altri kernel che compariva come scelta di configurazione.Tutte le opzioni della rete possono essere lette nel file /usr/src/linux/Documentation/networking/ip-sysctl.txt.

Un'altra opzione molto importante per evitare che la propia macchina venga utilizzata come amplificatore per lo smurf-attack è quella di disabilitare gli ICMP ECHO reply alle ICMP ECHO request con indirizzi di broadcast o multicast la variabile che abilita o disabilita questa funzioni è:

 /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 

P.S. le variabile che vengono cambiate dal loro valore di default che si trovano nel filesystem /proc/ devono essere abilitate ad ogni ravvio della macchina con un comando inserito negli script di avvio, esempio: echo 1 > /proc/sys/net/ipv4/conf/all/accept_source_route.

Tricks sulla pressione dei tasti CTRLALTDEL

Anche se il reboot della macchina con i tasti crtlaltdel è molto comodo, in alcune occasioni in cui il server di rete è alla portata di tutti e chiunque potrebbe accederci la disabilitazione di questa funzione diventa fondamentale infatti una volta che la macchina a fatto il reboot si può dare l'opzione 1 (single mode) a lilo che permette l'accesso al sistema senza richiesta di password e con i permessi di root. L'abilitazione di questa funzione la troviamo nel file /etc/inittab nella rig

ca::ctrlaltdel:/sbin/shutdown

Quindi basta semplicemente disabilitare questa riga dal file /etc/inittab, se si vuole che venga chiesta una password di boot si deve inserire l'opzione nel file /etc/lilo.conf password=****** ,naturalmente il file /etc/lilo.conf deve essere protetto con i seguenti permessi 700 in modo che gli utenti non possano leggerlo, se si vuole un'opzione più restrittiva in modo che la password venga chiesta solo nel momento che vengano forniti i parametri a lilo, si deve usare l'opzione restricted.

Tricks sull' accesso remoto al sistema

Il file /etc/securetty è molto importante per le connessioni di rete sul sistema.In pratica abilitando il controllo securetty con la seguente istruzione: CONSOLE /etc/securetty nel file /etc/login.defs ,l'accesso remoto come root su uno specifico terminale viene stabilito dall'elenco dei device della console presente nel file /etc/securetty. Un'altro file importante per l'accesso remoto al sistema è /etc/login.access che permette di disabilitare l'accesso al sistema alle macchine elencate in esso per maggiori chiarimenti leggere la documentazione. Abbiamo visto come e` possibile restringere l'accesso all'utente root e a particolari macchine; va pero` ricordato che e` possibile restringere l'accesso ai servizi di rete mediante l'utilizzo di tcpwrappers o altri accorgimenti. Si veda la sezione sicurezza tools per la gestione della sicurezza menu TCPWRAPPERS.

Tricks sul controllo delle risorse del sistema

Un altro controllo che spesso viene sottovalutato e quello sull'assegnazione delle risorse della shell che deve essere riservato ad ogni utente.Infatti per questo scopo la shell mette a disposizione un comando ulimit che ha seconda delle opzione selezionata controlla la risorsa a disposizione dell'utente. Questo comando diventa un buon antidoto per gli attacchi che mirano a congelare il sistema occupando le risorse per esempio: while(1) fork() (esempio in C che blocca il sistema creando il numero di processi a disposizione), e che senza una giusta limitazione può anche far crashare la macchina, le impostazioni di questi limiti possono anche essere specificati tramite il file login.defs Vediamo le più importanti opzioni del comando ulimit:

Tricks sul controllo dell'utente remoto

Quando un utente remoto si collega al vostro server, potete verificare se la macchina remota tiene aperta la porta Auth(113) che da indicazione sull'utente che sta effettuando la connessione; la procedura è questa :telnet indirizzo-ip-della-macchina 113, inserire successivamente la porta di collegamento remota e la porta del servizio a cui l'utente si è collegato in questo modo:

1108 , 23[Invio]

A questo punto apparirà la seguente informazione:


1108 , 23 : USERID : OTHER :tizio
Connection closed by foreign host.

Si può anche scrivere uno script per monitorizzare tutte le connessioni.

Tricks Anti-relay per il server di posta Qmail

Quando si ha configurato il server Qmail sulla propia macchina bisogna anche difenderci dall' utilizzo che altre persone potrebbero fare del nostro server. Infatti se Qmail non è configurato bene, altre persone potrebbero utilizzarlo come ponte indicando al propio client di posta di inserire come server SMTP il server vittima; nella macchina che riceve la posta, risulterà L'IP della macchina vittima. Per evitare che il nostro server inoltri mail per altre persone, bisogna indicargli di depositare soltanto mail che hanno come indirizzo destinatario la nostra macchina oppure un dominio di nostra appartenenza.L'indicazione viene messa nel file /var/qmail/control/rcpthosts indicando la macchine o i domini per cui si vuole che il server inoltri le mail. Se io voglio che il mio server venga utilizzato anche per inoltrare mail agli utenti di iol.it, basta che metta nel file rcpthosts il dominio iol.it, attenzione non è vero che se non metto il dominio in questo file io non possa spedire mail agli utenti iol.it, ma vuol dire semplicemente che il mio server non possa essere usato per spedire mail da altri agli utenti .iol.it.; nel caso di una macchina collegata a internet con un IP dinamico per indicare al server di depositare mail solo con indirizzo finale quello della macchina, bisognerà inserire nel file /var/qmail/control/rcpthosts il nome della macchina seguito dal dominio; per esempio se la macchina si chiama zeus e il dominio è mi.it va inserito zeus.mi.it


Next Previous Contents