Esostrutture - parte I
Corso di sicurezza – A.A. 2006/2007
Elisa Turricchia
VIRUS E MINACCE
CORRELATE
vs
ESOSTRUTTURE
Prevention, Detection, Reaction
Firewall
Intrusion Detection System
Virus Detection
Tassonomia dei programmi dolosi
Virus e minacce correlate
Programmi
Programmi
dolosi
dolosi
Necessitanodi
diun
un
Necessitano
programmahost
host
programma
Trapdoor
Bombe
logiche
Bombe
a tempo
Indipendenti
Indipendenti
Trojan
horse
Virus
Batteri
Autoreplicanti
Worm
Descrizione dei programmi dolosi
Virus e minacce correlate
Trapdoor: punto di accesso segreto all’interno di un
programma. È un codice che riconosce particolari sequenze
di ingresso o si attiva se eseguito da un particolare utente.
Bombe Logiche/A Tempo: è un codice associato ad un
programma legittimo, che si attiva al verificarsi di
determinate condizioni.
- Logiche: presenza o assenza di file, avvio di un
determinato programma;
- A Tempo: giorno della settimana, data, ora;
Descrizione dei programmi dolosi
Virus e minacce correlate
Trojan horse: programmi utili o apparentemente utili al
cui interno si nasconde codice che all’avvio del programma
può causare danni al sistema ospite.
-Usato per accedere ai file di un utente in ambiente
condiviso.
-Possibile
modificato.
realizzazione
tramite
compilatore
Virus:blocchi di codice che infettano programmi e/o file
dati e in grado di auto-replicarsi. Si diffondo da un pc
all’altro scambiando dischi o inviando programmi infetti
sulla rete.
Descrizione dei programmi dolosi
Virus e minacce correlate
Batteri:programmi destinati all’auto-replicazione, con
lo scopo di saturare le risorse del sistema per renderlo
inutilizzabile.
Worm: programmi indipendenti auto-replicanti, che
sfruttano le vulnerabilità di alcune funzionalità di Internet
(posta elettronica, servizi di accesso remoto) per
diffondersi nella rete.
Descrizione dei programmi dolosi
Virus e minacce correlate
Esempio: LoveLetter Worm
Effetti sul sistema ospite (MS Windows):
-sostituzione di file presenti sul sistema locale con copie
del codice ostile;
-invio di messaggi di posta elettronica non sollecitati;
Modalità di attivazione (Social engeneering):
Si persuade l’utente a lanciare in esecuzione l’allegato:
LOVE_LETTER_FOR_YOU.txt.vbs
Modalità di propagazione:
Invio di una copia del messaggio a ogni indirizzo di posta
elettronica trovato sul sistema
I virus: ciclo di vita
Virus e minacce correlate
Fase latente: il virus si è insediato nel pc della
vittima, ma è ancora inattivo. È in attesa di un
evento scatenante.
Fase di propagazione: il virus colloca una
copia identica di se stesso in un altro
programma.
Fase di innesco: il virus viene avviato da un
qualche
evento
scatenante
(una
data,
l’esecuzione di un programma, un numero
prestabilito di repliche…).
Fase di esecuzione: il virus agisce secondo le
modalità per cui è stato creato.
La struttura di un virus
Virus e minacce correlate
Virus allegato in testa ad un programma eseguibile
+
Codice
virale
=
Codice
virale
Programma
originale
Programma
originale
Aumento
dimensioni
La struttura di un virus
Virus e minacce correlate
Virus che circondano un programma
Codice virale
1
Codice
virale
Programma
originale
Programma
originale
Codice virale
2
Utile per evitare che il virus venga elencato insieme agli
altri file presenti su disco.
La struttura di un virus
Virus e minacce correlate
Virus integrati e sostituzioni
+
Programma
originale
Codice
virale
=
Programma
modificato
è difficile riconoscere un virus integrato, ma occorre
conoscere la struttura del programma originale per poter
creare un virus integrato.
è facile per l’utente rilevare un anomalia quando il virus si
sostituisce completamente al codice originale.
La struttura di un virus
Virus e minacce correlate
Compressione dati e duplicazione
2
virus
virus
3
P1’
P2
1. Per ogni file
compressione.
P1’
P2
non
virus
4
1
P1
infettato
P2
viene
P2’
eseguita
2. Inserimento di una copia del virus in P2 compresso.
3. Decompressione di P1’.
4. Esecuzione di P1 originale.
la
Tipologie di virus…
Virus e minacce correlate
Virus parassita: inserisce una copia di se
stesso all’interno di file eseguibili (exe, com, sys).
Si replica quando il file infetto viene eseguito.
Virus residente in memoria: si installa in
memoria principale accorpato ad un programma
residente. Infetta tutti i programmi eseguiti.
Virus del settore di boot: infetta un record di
boot principale o di un disco e si diffonde nel
momento in cui viene eseguito il caricamento del
SO dal disco contenente il virus.
…Tipologie di virus
Virus e minacce correlate
Virus furtivo: creato appositamente per non
essere rilevato (es. virus che circondano
programma).
Virus polimorfo: virus mutante che varia a
ogni processo di infezione, rendendo impossibile
la sua rilevazione mediante signature.
Inserimento di istruzioni superflue
Scambio ordine di istruzioni
Tecniche di cifratura: mutation engine
I virus delle macro-1
Virus e minacce correlate
Che cos’è una macro?
È un programma eseguibile contenuto in un foglio elettronico
o altri tipi di file, usato per automatizzare compiti ripetitivi;
Perché i virus delle macro sono efficaci?
-Indipendenza dalla piattaforma sottostante.
-Infettano documenti e non programmi.
-Diffusione rapida (e-mail).
-Auto-esecuzione.
I virus delle macro-2
Virus e minacce correlate
Le macro auto-eseguibili di MS Word:
Auto-execute:
se
una
macro
denominata
AutoExec viene inserita in un formato predefinito di
Word,
questa
viene
eseguita
ad
ogni
avvio
dell’applicazione.
Automacro: viene eseguita al verificarsi di un
determinato evento (es. apertura, chiusura documento,
creazione di un nuovo documento).
Command macro: una macro che porta il nome
di un particolare comando Word viene eseguita ad ogni
invocazione del comando stesso (es. Salva File).
…ancora su MS-Word
Virus e minacce correlate
I documenti di MS Word sono molto vulnerabili
Possono contenere macrovirus (quindi disabilitare le macro)
Possono rivelare informazioni personali
- Il mio nome
- Il percorso di un file
- La directory del template usato per creare un file
- Mantiene traccia delle modifiche apportate ad un file
(uso del salvataggio veloce)
…ancora su MS-Word
Virus e minacce correlate
…ancora su MS-Word
Virus e minacce correlate
…ancora su MS-Word
Virus e minacce correlate
!Difesa:
-Non utilizzare il salvataggio veloce
-Non trasferire file in formato .doc
-Utilizzare software alternativo
…altre vulnerabilità di Windows
Virus e minacce correlate
Windows normalmente nasconde le estensioni
Alcune estensioni pericolose: bat, chm, cmd, com, cpl, dll, exe,
hlp, hta, inf, lnk, ocx, pif, reg,scr, url, vbs…
Associare le
estensioni pericolose
al Blocco note!
Le estensioni CLSID di Windows: numero di 128 bit,
esadecimale, racchiuso fra parentesi graffe.
Excel: {00020820-0000-0000-C000-000000000046}
Metodo valido
solo nei sistemi
più vecchi
Visibili con Dos
Qualche minaccia innocua
Virus e minacce correlate
Joke: generalmente scherzi progettati per far sorridere gli
utenti o infastidirli. (es. effetti grafici)
Hoax: utilizza tecniche di individuazione di persone
vulnerabili per tentare di far eseguire agli utenti di
computer determinate operazioni (es. e-mail che avvisa di
un nuovo virus).
Adware: annunci, pubblicità indesiderata spesso associata
a programmi utili.
Spyware: programmi ingannevoli che eseguono attività
non legittimate dall’utente (es. raccolta di informazioni
personali e la modifica delle impostazioni di configurazione
del browser Internet).
Spam: messaggi di posta elettronica non
generati per pubblicizzare servizi o prodotti.
sollecitati
e adesso difendiamoci!!!
Esistono svariati metodi per difendere un sistema o una rete da
attacchi, la seguente immagine mostra alcuni di questi approcci
Prevention
Detection
Reaction
Che cos’è un firewall?
Firewall
È un sistema interposto fra due o più reti con lo scopo di
controllare il traffico scambiato fra queste reti.
Rete universitaria
Internet
Rete aziendale
Firewall
Rete bancaria
Hardware
Software
Disposizione di rete
Firewall dei sistemi operativi (es. Ipchains per Linux)
Che cos’è un firewall?
Firewall
I firewall Personali
È un programma applicativo che viene eseguito su una workstation
per bloccare il traffico indesiderato, solitamente proveniente da
Internet.
Nome Prodotto
Produttore/Sito
Prezzo
Norton Personal Firewall
Symantec,
www.symantec.com/it/it/ind a pagamento
ex.jsp
McAfee Personal Firewall
Plus
McAfee,
it.mcafee.com
a pagamento
Zone Alarm
Zone Labs,
www.zonealarm.com/store/
content/home.jsp
Gratuito per uso
personale
Kerio Personal Firewall
Kerio,
www.kerio.com
Gratuito per uso
personale
A cosa serve?
Firewall
Servizi e funzionalità
Definisce un singolo punto di entrata che mantiene gli utenti non
autorizzati al di fuori della rete protetta; proibisce a servizi
potenzialmente vulnerabili di entrare o uscire dalla rete; fornisce
protezione a diversi attacchi della rete (es. IP Spoofing).
Effettua il monitoraggio di eventi legati alla sicurezza (es. audit).
Può costituire la piattaforma per IPSec e può essere impiegato
per la realizzione di VPN.
A cosa serve?
Firewall
Tipologie di controlli effettuate
Controllo servizi:
- indirizzi IP, porte TCP.
- proxy che riceve e interpreta ogni richiesta di servizio
prima di inoltrarli.
Controllo direzione: controllo sulla direzione secondo cui
particolari richieste di servizio possono essere avviate.
Controllo utente: impostazione regole di accesso ai servizi sulla
base dell’utente che ha effettuato la richiesta.
Controllo del comportamento:
d’impiego di particolari servizi.
controllo
sulle
modalità
Firewall: condizioni di efficacia
Firewall
Unico punto di contatto fra le reti.
L’unico traffico che passa attraverso il firewall è quello
autorizzato dalla politica di sicurezza locale.
Immune alle penetrazioni.
Funzionalità ben definite.
Tempestività di aggiornamento.
Limitazioni
Firewall
Non protegge da attacchi che riescono ad aggirare un firewall.
Non fornisce protezione da minacce interne.
Non protegge dal trasferimento di file o applicazioni contenenti
virus.
“Un firewall è necessario ma non sufficiente”
DIFESA IN PROFONDITA’
Packet Filtering Router –
I controlli
Firewall
Le regole di filtraggio si basano sulle informazioni contenute nelle
intestazioni IP e di trasporto (es. TCP, UDP):
indirizzo IP di provenienza/destinazione.
numeri di porta delle applicazioni coinvolte.
protocollo usato (TCP, UDP).
altri campi dell’header IP e TCP.
Packet Filtering Router -
Le Regole
Firewall
Regole di filtraggio/Access Control List (ACL):
STATICHE: vengono inserite dall’amministratore e hanno
validità illimitata.
DINAMICHE: inserite automaticamente
connessione in corso. (es. gestione FTP)
in
base
alla
La filosofia di base:
default=scartare.
“Tutto ciò che non è espressamente permesso è proibito”
default=inoltrare.
“Tutto ciò che non è espressamente proibito è permesso”
Packet Filtering Router -
Esempio 1
Firewall
Esempio1: Impostazione di un set di regole per consentire il
traffico relativo al servizio WWW (80/tcp).
Direzione
Indirizzo
src
Porta
src
Indirizzo
dst
Porta
dst
Protocollo
Azione
A Out
Locale
>1023
Remoto
80
TCP
Permetti
B In
Remoto
80
Locale
>1023
TCP
Permetti
C *
*
*
*
*
TCP
Blocca
Limiti: un malintenzionato può avere i permessi per inoltrare
pacchetti dalla porta 80, spacciandosi per un servizio ritenuto
affidabile per la rete privata e quindi inoltrarsi nella rete
protetta.
Packet Filtering Router -
Esempio 2
Firewall
Esempio2
Comunicazione fra X e Y, ma non fra X e la sottorete Y1.
No comunicazione fra X e Z, ad eccezione del flusso fra X e Z1.
No comunicazione fra X e il resto della rete pubblica.
Packet Filtering Router –
Indirizzo IP
Esempio 2
Indirizzo IP
Protocollo
Firewall
Azione
A
reteX
sottoreteY1
*
Blocca
B
reteX
reteY
*
Permetti
C
reteX
sottoreteZ1
*
Permetti
D
reteX
reteZ
*
Blocca
E
*
*
*
Blocca
Attenzione all’ordine!
Indirizzo IP
Indirizzo IP
Protocollo
Azione
B
reteX
reteY
*
Permetti
A
reteX
sottoreteY1
*
Blocca
D
reteX
reteZ
*
Blocca
C
reteX
sottoreteZ1
*
Permetti
E
*
*
*
Blocca
Packet Filtering Router -
Attacco e Difesa
Firewall
IP Spoofing: un malintenzionato potrebbe spacciarsi per
un host interno alla rete protetta.
Difesa:bloccare i pacchetti provenienti dall’esterno con
indirizzo ip sorgente di un host interno.
Source Routing: la sorgente potrebbe specificare il
percorso che il pacchetto deve fare dentro la rete, per
evitare misure di sicurezza.
Difesa: scartare i pacchetti che contengono source route
nel campo opzioni del datagramma Ip.
Tiny Fragment: uso dell’opzione di frammentazione per
creare piccoli frammenti per separare le informazioni
dell’header TCP, allo scopo di evitare controlli basati proprio
sull’header TCP.
Difesa:bloccare pacchetti frammentati.
Packet Filtering Router -
Conclusioni
Firewall
Pro:
costi contenuti
trasparenza verso gli utenti finali
approccio semplice
Contro:
più regole
più complessità
più errori
aggiornamento frequente
stateless: nessuna informazione sullo stato della
connessione (es. difficoltà a gestire porte dinamiche di FTP)
Circuit level gateway –
I controlli
Firewall
Regole di filtraggio basate su
dell’intestazione a livello di trasporto.
tutti
i
parametri
Esempio TCP: numero di sequenza, acknowledgement, flag
SYN, flag ACK…
SYN, SequenceNum=x
ACK+SYN, SequenceNum=Y
Acknowledgement=x+1
ACK, Acknowledgment=y+1
Handshake a 3 vie
Che controlli ho in
più?
Es. Per evitare che si
inizino
connessioni
dall’esterno,
si
bloccano i pacchetti
con SYN=1 e ACK=0!
Circuit-level gateway -
Conclusioni
Firewall
Stateful: si mantengono informazioni sullo stato della
connessione, in una tabella di stato. I pacchetti non sono
esaminati in maniera indipendente gli uni dagli altri.
Consente una difesa contro gli attacchi DoS: si controlla il
volume del traffico destinato al sistema vittima (es. si
accetta solo un numero limitato di pacchetti provenienti da
ogni host).
Consente una gestione efficiente di FTP tramite apertura
passiva della connessione dati e regole dinamiche.
Non è in grado di svolgere controlli a livello applicativo.
Application-level gateway –
I controlli
Firewall
Ispezione a livello applicativo (es. tipi MIME, espressioni
regolari nelle URL richieste, orari di connessione…)
Paradigma di comunicazione: Client-Proxy-Server
Esempio di Proxy: Squid
Application-level gateway -
Funzionamento
Firewall
Il client (host interno) contatta il proxy server, indicando il
server remoto a cui vuole accedere.
Il proxy richiede le credenziali per l’accesso al servizio.
Il client invia le credenziali.
Il proxy controlla le credenziali e se conformi, apre una
connessione con il server remoto e inizia lo scambio dei dati
fra il client e il server.
Per ogni messaggio di ritorno vengono effettuati tutti i
controlli previsti dalla policy di sicurezza, prima di inviarlo
alla destinazione finale.
Per ogni servizio occorre implementare il corrispondente
proxy code.
Application-level gateway -
Conclusioni
Firewall
Pro:
I controlli sono più accurati: stateful inspection e
content inspection
Servizi aggiuntivi: auditing, logging, cache file.
Nascondere la rete interna: gli host esterni vedono solo
l’indirizzo del proxy.
Contro:
Configurazione complessa.
Overhead del sistema.
Architettura Firewall
Firewall
Dual Homed Host Firewall
Screened Host
Firewall
Screened Host
Firewall
Caratteristiche:
Due dispositivi distinti per funzioni di routing e di proxy.
Dall’esterno è visibile solo il bastion host, quindi il ruoter
deve scartare tutti quei pacchetti con indirizzo dst diverso
dal bastion host.
Sul bastion host non devono essere memorizzati servizi
utilizzati solo dagli host interni (es database con dati
gestionali).
Screened Subnet
Firewall
Screened Subnet
Firewall
Caratteristiche:
una rete perimetrale (DMZ Demilitarized Zone) con
diversi bastion host (servizi pubblici).
Exterior router: posto tra la rete pubblica e DMZ; fa
passare solo pacchetti destinati ai bastion host
Interior router: posto tra la DMZ e rete interna; fa
passare solo pacchetti provenienti dai bastion host.
Possibilità di modifiche all’architettura per migliorare le
prestazioni: più bastion host o diversi router.
Riferimenti
Firewall
Maurizio Cinotti, Internet Security – 2006
William Stallings, Sicurezza delle reti – Edizione Italiana
C. Pfleeger, S. Pleeger, Security in Computing – 2004
Stuart McClure, Joel Scambray, George Kurtz,
Hacking Exposed Fourth Edition. Network Security Secrets e
Solutions – 2003
www.wikipedia.org
www.attivissimo.net