Download - Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

Transcript
Page 1: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

1

Corso di Laurea in Informatica

Prof.Mario CannataroIng. Giuseppe Pirrò

Reti e Sicurezza InformaticaEsercitazione 1

Sommario

Introduzione alla sicurezzaI firewall (Windows e Linux)Introduzione ai Web ServicesInstallazione di TomcatLe librerie AXISInstallazione di AXIS su TomcatAmbiente di sviluppo di Web Services

Page 2: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

2

La sicurezza informatica

Problematiche inerenti il controllo degli accessi ai propri dati da parte di utenti “esterni”.Fattori che hanno amplificato il problema:

- Disponibilità di connessioni di tipo xDSL- Abbattimento dei costi- Enorme diffusione di Internet

I firewall

Firewall: E’ un dispositivo Hardware/Software che si occupa di collegare due tronconi di rete

“Modo per controllare lo scambio dati tra Internet e la rete interna”

Firewall

RouterIntranet

Page 3: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

3

Posizione dei firewall

Tra reti LAN e reti esterneAi “gateways” di sottoreti “sensibili” all’internodi una LAN organizzativaSulle macchine utente

“Personal firewall”Microsoft’s Internet Connection Firewall (ICF) diventa standard con Windows XP

Tipi di firewall

Packet-type- Agiscono sui dati dell’header IP - Non sono in grado di individuare virus

Application-type- Agiscono sull’informazione contenuta nei dati

che il pacchetto trasporta- Sono tipicamente implementati via software- Sono poco performanti

Page 4: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

4

Limiti dei firewall

Cosa può fare:– Concentrare le decisioni sulla politica di sicurezza– Controllare e filtrare il traffico Internet/rete– Limitare l’esposizione e separare la rete internaCosa NON può fare

– Proteggere da attacchi dall’interno– Proteggere da attacchi “Social Engineering”– Controllare i files infetti da virus

Come è fatto un firewall

Tipicamente è un componente costituito da: - Due o più schede di rete.- Ambiente operativo che analizza e gestisce il

traffico in base alla configurazione stabilita dall’amministratore.

Page 5: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

5

Operazione che effettua un firewall

ControlloModificaMonitoraggioQuesto grazie alla capacità di “aprire” i pacchetti IP e leggere le informazioni presenti sull’header.

Alcuni Firewall

Il firewall di Microsoft WindowsZone AllarmIl firewall di Linux

Page 6: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

6

Il firewall di Microsoft WindowsSe è in esecuzione Windows XP Service Pack 2 (SP2), Windows Firewall è attivato per impostazione predefinita.

Zone Alarm

E’ firewall windows gratuito e facile da usare per tenere al riparo il sistema da hacker o semplici intrusi che possono rubare informazioni personali.Perché Zone Alarm:

- SEMPLICE- INTUITIVO- GRATUTITO

Page 7: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

7

Zone Alarm

Tutto quello che serve per configurare e utilizzare il programma è incluso nella finestra a cui si può accedere facendo doppio clic sulla piccola icona che si crea sulla TRAYBAR.

Finestra principale

Queste barreVisualizzano in tempo reale il

flusso di dati in entrata e uscita

Icone dei programmi che trasferiscono

dati da e verso la nostra macchina

Questo tasto consente in

maniera istantanea di chiudere le

comunicazioni di rete

Qui viene visualizzato lo stato delle reti LAN o

remota.In questo caso il PC fa

parte di una LAN ritenuta attendibile(dall’utente )

Page 8: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

8

Stato del sistema

LINUX E I FIREWALL

Page 9: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

9

Le porte

Ogni software che abbia necessità di comunicare con la rete apre una porta di accesso al nostro calcolatorePorte 1…65536

–1…1024 privilegi di sistemaAssegnate in modo standard a particolari servizi21 = ftp; 25 = smtp; 80 = www; 110 = pop3; molto pericolose

Altre sono porte “non privileggiate”Possono essere aperte dinamicamente da altri software o da quelli sopra citati

Come vengo sfruttati questi software

Se il software di rete è ben costruito è quasi impossibile fare breccia attraverso essoSoftware fatti da esseri umani…quindi non esenti da errori.Sono gli errori dei software di rete ad essere utilizzati per l’accesso non autorizzatoL’esigenza di un software di rete esente da errori èPRIMARIA!!!Gli errori si correggono solo se si hanno i sorgentiMicrosoft non ce li da !!!Modello Open Source è inequivocabilmente più sicuro

Page 10: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

10

Il modello Open source

Un modello filosofico di sviluppo, di diffusione e di cooperazione nel campo della I.T.

Libertà (0) di eseguire il programma per qualunque scopo senza vincoli sul suo utilizzo.Libertà (1) di studiare il funzionamento del programma e di adattarlo alle proprie esigenzeLibertà (2) di ridistribuire copie del programmaLibertà (3) di migliorare il programma e distribuire i miglioramenti

Linux vs Windows

Linux è OpenSource QUINDI è più sicuro!!!Windows ha usualmente attivi molti meno software di reteLe due regole dell’amministratore di rete

Mai usare Microsoft Internet Information serverSe proprio devi

Preparati a passare ogni giorno per Windows Update…Preparati a pregare che il problema sia già stato risolto

Page 11: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

11

Introduzione a Iptables

Soluzione completa di firewall su LinuxImplementata a livello di kernel dalla versione 2.4.0

- VantaggiGira da un 486 in suFile di configurazione testualeManipolazione dei pacchetti in diversi momenti del processo di trasferimento del pacchetto da una scheda ad un’altraCateneValido contro i DOS (Denial of service)

Iptables

Consente di controllare il traffico di rete in diversi momenti del processo di trasferimento tramite l’applicazione di regole.PreroutingInputForwardOutputPostrouting

Page 12: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

12

Iptables concetti fondamentali

E’ costituito da 3 catene fondamentali:INPUT (pacchetti in entrata)OUTPUT (pacchetti in uscita)FORWARD (pacchetti in transito)Inserendo le regole in queste catene saremo in grado di controllare i dati

Iptables concetti fondamentali

Per ogni regola ci sarà un TARGET:- ACCEPT (lascia passare il pacchetti)- DROP (scarta il pacchetto)- QUEUE (passa il pacchetto all’userspace)- RETURN (blocca la catena e ritorna alla

catena chiamante)

Page 13: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

13

Iptables comandi di base

-L “catena” – lista di regole in quella catena-F “catena” – ripulisce la catena dalle regole-Z “catena” – azzera i contatori di tutte le reg.-A “catena” – appende una nuova regola-I “catena” “num. regola”- ins. la reg. al num.-D “catena” “num. regola” – cancella la regola-v –informazioni sul comando invocato-j “target” – se matcha la regola salta al target indicato

Iptables Le regole

Una regola è una espressione del tipo:“parametri regola” “opzioni”I principali parametri sono i seguenti:-p [tcp,udp,icmp,all] – Protocollo (def. all)-s “source address/mask”-Indirizzo sorgente-d “destination address/mask”-Indirizzo dest.-sport –Porta di origine o intervallo -dport –Porta di destinazione o intervallo

Page 14: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

14

Iptables Salvataggio e ripristino

Iptables –save- iptables-save >/tmp/rules.txt

Iptables- restore- iptables-restore </tmp/rules.txt

Esempio 1

Supponiamo di voler consentire l’accesso alla porta 80 locale:

- Iptables –t filter –I INPUT –p tcp –dport 80 –jACCEPT

- -t filter (indica che ci stiamo riferendo alla tabella filter che è anche quella di default)

- Tabella nat (attività di natting)- Tabella nangle (interviene sulle alterazioni di

pacchetti)

Page 15: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

15

Esempio 2

Supponiamo di voler consentire ad un pacchetto con IP 10.0.0.0.4 di raggiungere il server 192.168.0.1 attraverso il firewall:

- Iptables –I FORWARD –s 10.0.0.4 –d192.168.0.1 –j ACCEPT

Tracking con Iptables

Consente di gestire il traffico in base sulla base dei flussi dati e delle connessioni dei protocolli usati.Ciò viene realizzato attraverso il comando ip_conntrack.La gestione del traffico viene effettuata richiamando il modulo state che permette di dividere il traffico secondo diversi stati.

Page 16: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

16

Stati del traffico

NEW – primo pacchetto relativo ad una nuova connessione.ESTABLISHED –pacchetti relativi a connessioni già stabilite.RELATED – pacchetti correlati a connessioni esistenti established.INVALID – pacchetti che non rientrano in nessuno dei precedenti stati, di solito vengono scartati.

Esempio

Supponiamo di voler permettere ad un host in uscita tutto e in entrata solo ciò che ècorrelato a quanto uscito:

-iptables –I INPUT –m STATE –stateESTABLISHED,RELATED –jACCEPT

-iptables –I OUTPUT –m state –stateNEW,ESTABLISHED,RELATED –j ACCEPT

Page 17: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

17

Guarddog Linux Firewall

Page 18: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

18

Page 19: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

19

I WEB SERVICES

I Web Services

Un Servizio Web (Web Service) èun’applicazione on-line Consente l’interoperabilità di sistemi eterogeneiConsente di sfruttare risorse che non sono localmente disponibili

Page 20: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

20

Web Server

È il processo che tipicamente viene utilizzato da una macchina server per rendere disponibile un insieme di risorse tra le quali si collocano anche i Servizi Web

Apache Tomcat

Tomcat è un Servlet/JSP engine.Esso può essere usato da solo (principalmente utile agli sviluppatori per testing e debugging) o in congiunzione con uno tra i più diffusi web server (per le applicazioni real world), tra i quali: - Apache, versione 1.3 o successiva- Microsoft Internet Information Server

Page 21: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

21

Requisiti

Tomcat richiede per il suo funzionamento un Java Runtime Enviroment JRE 1.1 o successivo.E’ possibile scaricare l'archivio nel formato più adatto al proprio sistema operativo da http://java.sun.com/j2se/1.5.0/download.jsp

Installazione di Tomcat

Prelevare il file di installazione direttamente dal sito web delprogetto (http://tomcat.apache.org/)Tomcat di default resta in ascolto sulla porta 8080. Se sul vostro sistema tale porta è già in uso, aprite il file server.xmlcontenuto nella directory /web/tomcat/conf e cambiatela ad esempio in 10080, come illustrato sotto:<ConnectorclassName="org.apache.tomcat.service.PoolTcpConnector"> <Parameter name="handler" value="org.apache.tomcat.service.http.HttpConnectionHandler"/> <Parameter name="port" value="10080"/> </Connector>Settare in /etc/profile le relative variabili d'ambiente:A questo punto aprite il browser preferito e digitate: http://nomemacchina:10080/. Se il browser visualizza la pagina di default di Tomcat, l'installazione è andata a buon fine.

Page 22: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

22

Avvio e arresto di Tomcat

Per avviare Tomcat usare lo script o il file batch che si trovano nella directory TOMCAT_HOME/bin.- Su UNIX utilizzare % startup.sh

- Su Windows utilizzare C:\TOMCAT_HOME\bin>startup

Per arrestare Tomcat, ci sono due comandi che si trovano nella stessa directory dei comandi di avvio.- Su UNIX utilizzare % shutdown.sh

- Su Windows utilizzare C:\TOMCAT_HOME\bin>shutdown

Da Windows è possibile l’arresto e l’avvio dall’elenco dei servizi

Struttura delle directory di Tomcat

Page 23: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

23

Le classi contenute nelle sue sotto-directory sono disponibili sia a Tomcat che a tutte le web-application in esecuzione sotto Tomcatcommon

è la cartella predefinita da Tomcat in cui vengono inserite tutte le web-application (tutto ciò che viene copiato qui è automaticamente deployed)

webappsDirectory utilizzata per i file di loglogs

Contiene diversi file jar usati da Tomcat . Su UNIX ogni file in

questa directory viene appeso al classpath.lib

Contiene vari documenti riguardanti Tomcatdoc

Contiene i file di configurazione tra cui server.xml che è il principale file di configurazione di Tomcat, e web.xml che serve a settare i valori di default per le varie applicazioni gestite da Tomcat

conf

Contiene gli script/batch per lo startup-shutdowndbin

Descrizione Nome della directory

AXIS

Axis è il motore open source più famoso per la creazione di WebServices in Java. E’ un progetto dell'Apache Software Foundation e deriva da SOAP4J della IBMIn combinazione con Tomcat rappresenta uno strumento molto diffuso per la realizzazione di web services.

Page 24: Reti e Sicurezza Informatica Esercitazione 1staff.icar.cnr.it/cannataro/unical/RSI/Esercitazioni-05...7 Zone Alarm Tutto quello che serve per configurare e utilizzare il programma

24

RequisitiServer Web (tomcat)Dopo averlo installato dobbiamo scaricare Axisdal sito di apache, http://ws.apache.org/axis/.Unzippiamo questo zip e copiamo iltutto nella cartella TOMCAT_HOME/webapps(TOMCAT_HOME è dove abbiamo installato Tomcat). Dopo averlo copiato dovete avviare Tomcat e puntare il browser all'indirizzo http://localhost:8080/axis. In questa pagina troverete lo stato dell'installazione di Axis.Se manca qualche libreria vi verrà indicato e voi dovrete copiarle dentro la cartella TOMCAT_HOME/webapps/axis/WEB-INF/lib. Una volta che non viene indicato più nessun errore abbiamo completato la corretta installazione di Axis e possiamo anche vedere i primi esempi di WebServices.