1 / 19

Sicurezza delle reti Intrusione e Monitoraggio

Sicurezza delle reti Intrusione e Monitoraggio. Giuseppe Stanghellini ITESRE - CNR - Bologna. Introduzione. I servizi di rete: La modalita' di abilitazione dei servizi in Unix. L'attacco: Tipi di attacco piu' comuni. La difesa: cosa possiamo fare.

knoton
Download Presentation

Sicurezza delle reti Intrusione e Monitoraggio

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sicurezza delle retiIntrusione eMonitoraggio Giuseppe Stanghellini ITESRE - CNR - Bologna

  2. Introduzione • I servizi di rete: La modalita' di abilitazione dei servizi in Unix. • L'attacco: Tipi di attacco piu' comuni. • La difesa: cosa possiamo fare. • Il monitoraggio: Strumenti open source di monitoraggio reti e filesystem.

  3. I Servizi (ftpd, telnetd, etc.) • I Servizi: File di configurazione dei principali servizi, /etc/inetd.conf /etc/services /etc/exports /etc/ftp* /etc/rc.d • Tramite questi file si abilitano/disabilitano praticamente tutti i servizi unix: una loro scorretta configurazione porta ad un sistema insicuro.

  4. I servizi avviati al "boot" >cd /etc >ls -d rc* rc@ rc.local@ rc0.d/ rc2.d/ rc4.d/ rc6.d/ rc.d/ rc.sysinit@ rc1.d/ rc3.d/ rc5.d/ > > >ls rc3.d K20rstatd@ S05harddrake@ S26apmd@ S60lpd@ S90mysql@ K20rusersd@ S05kudzu@ S35identd@ S60rwalld@ S90xfs@ K35smb@ S06network@ S40atd@ S60rwhod@ S90xfs.rpmorig@ K40ldap@ S08pcmcia@ S40crond@ S75keytable@ S95anacron@ K50inet@ S09sound@ S47irda@ S85gpm@ S95kheader@ K50snmpd@ S10usb@ S56rawdevices@ S85numlock@ S99linuxconf@ K55routed@ S17ypbind@ S56xinetd@ S89drakfont@ S99local@ K92ipchains@ S18autofs@ S60cups@ S90fonttastic@ > > >ls -l rc3.d/S60lpd lrwxrwxrwx 1 root root 13 Nov 10 08:27 rc3.d/S60lpd -> ../init.d/lpd*

  5. I Servizi attivati su richiesta # # inetd.conf This file describes the services that will be available # through the INETD TCP/IP super server. To re-configure # the running INETD process, edit this file, then send the # INETD process a SIGHUP signal. # # # These are standard services. # ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd # # Shell, login, exec, comsat and talk are BSD protocols. # #shell stream tcp nowait root /usr/sbin/tcpd in.rshd #login stream tcp nowait root /usr/sbin/tcpd in.rlogind #exec stream tcp nowait root /usr/sbin/tcpd in.rexecd #comsat dgram udp wait root /usr/sbin/tcpd in.comsat #talk dgram udp wait root /usr/sbin/tcpd in.talkd #ntalk dgram udp wait root /usr/sbin/tcpd in.ntalkd #dtalk stream tcp waut nobody /usr/sbin/tcpd in.dtalkd # # Pop and imap mail services et al # #pop-2 stream tcp nowait root /usr/sbin/tcpd ipop2d #pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d

  6. L'Attacco • Due tipi di attacco, uno con utilizzo dei servizi dall'esterno, l'altro con intrusione vera e propria. • Esempi di attacco di primo tipo: • a) Accesso ad aree pubbliche ftp. • b) Spamming di posta elettronica. • c) "DOS denial of service."

  7. L'Attacco • Esempio di attacco di secondo tipo: • Prima entrata tramite utente qualsiasi, anche con bassi privilegi, o tramite baco di sistema. • Successivo sfruttamento di un baco di sistema per acquisire privilegi di root. Si trovano riferimenti che aiutano ad entrare in tutti i sistemi. • Modifica di alcuni binari peculiari di Unix (/bin/login, /bin/ps, /bin/top, etc..) + (installazione di software dedicato: chat, ftp per scambio file, etc.)

  8. Cosa vuole l'intruso • Sostanzialmente vuole avere accesso a quante piu' reti possibile, a quanta piu' banda possibile, a quante piu' macchine possibili. • Usa sempre le reti nel quale si e' introdotto per guadagnare l'accesso ad altre reti ("sniffaggio" dei pacchetti di telnet,ftp ... da e verso altre reti.) • Scansione di altre reti tramite portscan. • Utilizzo di macchine molto potenti per il "cracking" delle password. • Utilizzo delle macchine di cui si impadronisce per spamming di posta elettronica.

  9. Il monitoraggio • Due tipi di monitoraggio: • a) Monitoraggio della rete a basso livello, per intercettare l'hacker all'atto della intromissione. • b) Monitoraggio del sistema e della rete per intercettare l'hacker dopo che e' gia' entrato nel sistema. • Il monitoraggio della rete si realizza con strumenti del tipo di tcpdump, ntop, arpwatch, ethereal o snort. • Ntop: intercetta e registra tutto il traffico di rete, su tutti i protocolli e su tutte le porte. Dispone di un accesso tipo http ed e' molto facile da consultare. • Arpwatch: Notifica tramite l'invio di un mail, la comparsa nella rete locale di ogni nuovo numero ip. (E' utile solo nel caso gli utilizzatori siano costanti).

  10. Ethereal • E' uno sniffer molto evoluto. • Ha la stessa sintassi del tcpdump, e quindi e' in grado di filtrare il traffico sulla base di indirizzo ip, porta, protocollo, reti e sottoreti. • Ha la capacita' di riassemblare i pacchetti di uno stream tcp e di visualizzarli in modalita' ASCII (utile per sniffare sessioni di telnet o ftp) • Per contro ha bisogno di un hardware molto potente.

  11. Che tipo di filtraggio e' possibile con ethereal Supponiamo di dover controllare tutto il traffico di una macchina verso l'esterno: host 200.200.200.1 and not src and dst net 200.200.200 Oppure di dover controllare delle determinate porte (telnet, ftp, e sendmail) port (25 or 23 or 21) Oppure una porta in uscita: dst port 8888

  12. SNORT Snort: E' un vero e proprio IDS (Intrusion Detection System). E' programmabile tramite regole. E' molto veloce e raramente perde pacchetti. E' estremamente facile da compilare e da installare Esistono regole di monitoraggio gia' pronte per l'uso, tali regole vengono periodicamente aggiornate rendendo il programma abbastanza efficace nel diagnosticare gli attacchi (portscan, buffer overflow, etc).

  13. Esempio di utilizzo di SNORT ================= Sintassi regole ===================== alert TCP any any <> any 8888 (msg:"Napster 8888 Data"; flags: PA; content: ".mp3"; nocase; ) alert TCP any any -> any 21 (msg:"IDS287 - FTP - Wuftp260 linux"; flags: PA; content: "|31C0 31DB 31C9 B046 CD80 31C0 31DB|"; ) ================= OUTPUT ===================== 11/21-16:08:08.437455 [**] Napster 8888 Data [**] 192.167.170.121:1146 -> 64.124.41.200:8888 11/21-16:08:12.534135 [**] MISC-WinGate-8080-Attempt [**] 192.167.170.131:1206 -> 192.58.150.37:8080 11/21-16:08:23.186479 [**] Napster 8888 Data [**] 192.167.170.121:1146 -> 64.124.41.200:8888 11/21-16:08:30.136674 [**] Napster 8888 Data [**] 64.124.41.197:8888 -> 192.167.167.172:1277 11/21-16:08:30.357377 [**] Napster 8888 Data [**] 192.167.167.172:1277 -> 64.124.41.197:8888 11/21-16:08:31.804643 [**] Napster 8888 Data [**] 64.124.41.214:8888 -> 192.167.164.33:1092 11/21-16:08:32.204057 [**] Napster 8888 Data [**] 64.124.41.214:8888 -> 192.167.164.33:1092 11/21-16:08:32.244096 [**] Napster 8888 Data [**] 192.167.164.33:1092 -> 64.124.41.214:8888 11/21-16:08:33.481400 [**] Napster 8888 Data [**] 64.124.41.197:8888 -> 192.167.167.172:1277 11/21-16:46:21.408158 [**] CVE-1999-0021 - WEB-count.cgi [**] 192.167.167.129:4092 -> 212.25.161.238:80 11/21-16:59:58.401322 [**] IDS8 - TELNET - daemon-active [**] 192.167.171.13:23 -> 155.185.6.31:1291 11/21-17:00:04.123002 [**] FrontPage-shtml.exe [**] 151.35.160.61:1078 -> 192.167.160.10:80 11/21-17:32:55.673783 [**] IDS322 - FTP-nopassword [**] 192.167.165.1:3332 -> 137.204.66.12:21

  14. Monitoraggio del sistema L'intruso una volta entrato e' causa di cambiamenti a livello di filesystem, molte sue operazione verranno registrate nei file di log (/var/log). Spesso la sua attivita' perturba anche il sistema a livello di filesystem, installa nuovi servizi, riconfigura i file di sistema (/etc), o addirittura cambia i binari critici (login, ps, top) con versioni proprie. Quindi: Monitorare il file system, soprattutto i binari e i file di configurazione e' un ottimo metodo per capire se un sistema e' stato compromesso. Per ottenere cio' esistono prodotti in commercio; come tripwire. Non e' pero' difficile scrivere in proprio delle routine dedicate che tengono una copia dei binari peculiari o un crc checksum, e li controllano periodicamente.

  15. EXT2: Come difendersi in linux Il filesystem di Linux ci mette a disposizione uno strumento per impedire la modifica dei binari. Ci sono degli attributi estesi dei file che li possono rendere "immutable" o "append only". I comandi per modificare o visualizzare tali attributi sono "chattr" e "lsattr". Questa caratteristica combinata coi comandi: lcap CAP_LINUX_IMMUTABLE lcap CAP_SYS_RAWIO possono rendere determinati files e/o directory immutabili anche per l'utente root; una volta che lcap ha rimosso una capacita' dal kernel, non c'e' modo di riattivarla, a meno di un reboot della macchina. Quindi in sistemi opportunamente configurati si puo' ottenere che determinate strutture di directory non siano modificabili senza avere accesso fisico alla macchina e poterla controllare in modalita' single-user.

  16. Su cosa possiamo utilizzare gli "extended attributes" chattr -R +i /bin /boot /lib /sbin chattr -R +i /usr/bin /usr/lib /usr/sbin chattr +a /var/log/messages /var/log/secure ... Cose da non fare assolutamente: Cambiare gli attributi estesi sui file in /dev, /tmp.

  17. Aumentiamo la sicurezza • Disattivazione di tutti i servizi non necessari. • Filtraggio (a livello di router o di firewall) di tutte le porte inutili (cosi' si diminuisce di molto l'appetibilita' della rete). • Verificare la presenza di patch e installare tutte quelle relative alla sicurezza (security patches). • Utilizzo (per Linux) delle caratteristiche LCAP + attributi estesi di EXT2. • Monitoraggio di rete e dei filesystem.

  18. Considerazioni • L'hackeraggio e' un fenomeno in aumento, oggi e' facile improvvisarsi hacker. • E' relativamente facile reperire in internet le informazioni relative ai bachi di sistema. • Questo consente a chi si occupa di sicurezza di avere una fonte di informazione sicura ed efficace. • Il fenomeno si puo' combattere in piu' modi: patches, controllo, monitoraggio e filtraggio.

  19. Riferimenti di partenza http://www.snort.org http://www.ethereal.org http://www.ntop.org http://www.securityfocus.com http://www.cert.org

More Related