SECURING IIS 5.0 WINDOWS 2000 SERVER WEBB.IT 02 Enrico Branca 15/06/02 Enrico Branca, stu1015 @...
-
Upload
adelina-marrone -
Category
Documents
-
view
219 -
download
0
Transcript of SECURING IIS 5.0 WINDOWS 2000 SERVER WEBB.IT 02 Enrico Branca 15/06/02 Enrico Branca, stu1015 @...
SECURING IIS 5.0WINDOWS 2000 SERVER
WEBB.IT 02
Enrico Branca
15/06/02 Enrico Branca , stu1015 @ libero.it 1
SECURING IIS 5.0 WINDOWS 2000 SERVER
Branca Enrico stu1015 @ libero.it
SECURING IIS 5.0WINDOWS 2000 SERVER
WEBB.IT 02
Enrico Branca
15/06/02 Enrico Branca , stu1015 @ libero.it 1
CopyrightQuesto insieme di trasparenze è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relative alle trasparenze (ivi inclusi, ma non limitatamente a, ogni immagine, fotografia, animazione, video e testo) sono di proprietà degli autori indicati.Le trasparenze possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione per scopi istituzionali, non a fine di lucro.Ogni altro utilizzo o riproduzione (ivi incluse, ma non limitatamente a, le riproduzioni a mezzo stampa, su supporti magnetici o su reti di calcolatori) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte dell’autore.L’informazione contenuta in queste trasparenze è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, ecc.L’informazione contenuta in queste trasparenze è soggetta a cambiamenti senza preavviso. Gli autori non si assumono alcuna responsabilità per il contenuto di queste trasparenze (ivi incluse, ma non limitatamente a, la correttezza, completezza, applicabilità ed aggiornamento dell’informazione).In ogni caso non può essere dichiarata conformità all’informazione contenuta in queste trasparenze.In ogni caso questa nota di copyright non deve mai essere rimossa e deve essere riportata anche in utilizzi parziali.
SECURING IIS 5.0WINDOWS 2000 SERVER
WEBB.IT 02
Enrico Branca
15/06/02 Enrico Branca , stu1015 @ libero.it 3
AGENDA
Introduzione
Installazione del sistema
Installazione di IIS 5.0
Aggiornamento del sistema
Hardening
Verifiche sul sistema
Conclusioni
15/06/02 Enrico Branca , stu1015 @ libero.it 4
Introduzione (1 / 2)
Si vedranno alcune linee guida per installare e configurare una macchina Windows 2000 SERVER che funga da bastion host
Per bastion host si intende una macchina che è esposta su internet e che quindi è soggetta a molteplici tipi di attacchi
L'insieme di procedure necessarie per configurare un bastion host va sotto il nome di hardening
15/06/02 Enrico Branca , stu1015 @ libero.it 5
Introduzione (2 / 2)
Installare un server che sia esposto in internet comporta l'adozione di tecniche ed accorgimenti che rispettino le leggi e proteggano gli utenti
Installare un server vuol dire soprattuttopianificazione
15/06/02 Enrico Branca , stu1015 @ libero.it 6
Avvertenze
● LE CONFIGURAZIONI PROPOSTE IMPEDISCONO A MOLTE APPLICAZIONI DI FUNZIONARE
● NON ADOTTATE NESSUNA DELLE CONFIGURAZIONI CHE VERRANNO PROPOSTE SU MACCHINE IN PRODUZIONE
● PRIMA FATE I TEST IN UN AMBIENTE DI PROVA POI SE TUTTO VA BENE PASSATE IN PRODUZIONE
15/06/02 Enrico Branca , stu1015 @ libero.it 7
Installazione del sistema (1 / 6)
Il principio da seguire è quello del minor privilegio, per cui cercheremo di dare agli oggetti presenti nel sistema i permessi strettamente necessari al loro corretto funzionamento
Purtroppo il server web IIS 5.0 gira con i permessi di local system
Se venisse attaccato con successo l'aggressore avrebbe pieno controllo della macchina
15/06/02 Enrico Branca , stu1015 @ libero.it 8
Installazione del sistema (2 / 6)
Partire da una macchina con i dischi puliti (no upgrade)
Installazione la macchina mantenendola sconnessa dalla rete, la si riconneterà ad internet alla fine
Come file system usare solo NTFS
Evitare dual-boot
Usare la versione inglese del sistema operativo
15/06/02 Enrico Branca , stu1015 @ libero.it 9
Installazione del sistema (3 / 6)
Installare solo applicazioni che siano strettamente necessarie
Installare solo il protocollo TCP/IP
Configurare la macchina come server standalone
Nel caso in cui fosse necessario un dominio:
Creare un nuovo dominio in una nuova forest
Usare un DNS interno considerato sicuro
Impostare trust one-way create appositamente
15/06/02 Enrico Branca , stu1015 @ libero.it 10
Installazione del sistema (4 / 6)
Installare il sistema operativo su un disco, i programmi su un secondo disco, e lasciare un terzo disco per l'installazione di IIS 5.0
Installare le applicazioni all'interno di “Accessories and Utilities” selezionando solo “Accessories”
Per ora non si deve installare nessun altro pacchetto
15/06/02 Enrico Branca , stu1015 @ libero.it 11
Installazione del sistema (5 / 6)
Installare il Service Pack 1 (SP1)
Installare il Service Pack 2 (SP2)
Installare il Security Rollup Package 1 (SRP1)
Per avere un rendimento ottimale è necessario deframmentare il sistema ad ogni installazione
15/06/02 Enrico Branca , stu1015 @ libero.it 12
Installazione del sistema (6 / 6)
Installare solo componenti nella stessa lingua del sistema operativo
Installare il pacchetto “High Encription Pack”
Eseguire l'installazione dell' “High Encription Pack” una seconda volta, usando l'opzione “-x” per estrarre l'utility di aggiornamento della crittografia del “Windows 2000 Protected Store” ed eseguire l'aggiornamento
15/06/02 Enrico Branca , stu1015 @ libero.it 13
Installazione di IIS 5.0 (1 / 2)
Installare IIS 5.0
Selezionare solo i pacchetti:
Common FilesFile Transfer Protocol (FTP) serverInternet Information Services Snap-InWorld Wide Web Server
15/06/02 Enrico Branca , stu1015 @ libero.it 14
Installazione di IIS 5.0 (2 / 2)
Caricando dati dal cd di installazione i file aggiornati da SP1, SP2 ed SRP1 sono stati
sostituiti
Sarà necessario riapplicare SP2 ed SRP1 per aggiornare i file di sistema ad una versione recente
Deframmentare il sistema per ottimizzare l'accesso ai files
15/06/02 Enrico Branca , stu1015 @ libero.it 15
Aggiornamento del sistema (1 / 3)
Aggiornare il browser ad Internet Explorer 6
Installare tutti i programmi di terze parti che ritenete necessari
Installare un antivirus versione server che sia diverso da eventuali antivirus presenti nella rete in cui verrà posizionato
15/06/02 Enrico Branca , stu1015 @ libero.it 16
Aggiornamento del sistema (2 / 3)
Eventuali programmi aggiuntivi possono modificare file gia presenti nel sistema, per cui sono da
installare prima di riapplicare gli aggiornamenti
Installare il Service Pack 2 (SP2)
Installare il Security Rollup Package 1 (SRP1)
15/06/02 Enrico Branca , stu1015 @ libero.it 17
Aggiornamento del sistema (3 / 3)
Scaricare dal sito della Microsoft il “Microsoft Network Security Hotfix Checker” ovvero hfnetchk.exe
Eseguire il programma con l'opzione -v per avere il report dettagliato delle patch mancanti
Installare le patch in ordine di data di rilascio
15/06/02 Enrico Branca , stu1015 @ libero.it 18
Hardening (1 / 15)
L'idea di base è che meno servizi sono attivi sulla macchina meno saranno le possibilità di attacco
Disabilitare tutti i servizi non necessari al corretto funzionamento della macchina
Controllare che i servizi che vengono disabilitati non siano necessari al server web
15/06/02 Enrico Branca , stu1015 @ libero.it 19
Hardening (2 / 15)
Dovrebbero rimanere i seguenti servizi:
Event Log
Network Connections
Protected Storage
Remote Procedure Call
FTP Publishing Service
World Wide Web Publishing Service
Windows Management Instrumentation ( WMI )
WMI Driver Extension15/06/02 Enrico Branca , stu1015 @ libero.it 20
IPSec Policy Agent Plug and Play IIS Admin Service SecurityAccount Manager Logical Disk Manager
Hardening (3 / 15)
Rimuovere i componenti di sistema normalmente nascosti per diminuire ulteriormente i punti di attacco
Usando notepad editare il file sysoc.inf e rimuovere la parola “Hide”
Rimuovere quindi i file non essenziali attraverso Add/Remove Programs
15/06/02 Enrico Branca , stu1015 @ libero.it 21
Hardening (4 / 15)
L'installazione dei pacchetti di SP1, SP2, SRP1 e delle patch di sicurezza potrebbe creare un backup dei file che vengono sostituiti
È necessario rimuovere questi file in quanto rappresentano un pericolo:
%systemroot%\$NtServicePackUninstall$%systemroot%\$NtUninstallQ******$%systemroot%\$NtUninstallSP2SRP1$%systemroot%\ServicePackFiles
15/06/02 Enrico Branca , stu1015 @ libero.it 22
Hardening (5 / 15)
Come eredità da windows NT 3.51 il sistema Windows 2000 ha al suo interno dei sottosistemi necessari per garantire la compatibiltà con altri sistemi operativi
Questi sistemi non sono necessari per il corretto funzionamento del sistema e sono un pericolo
Rimuovere quindi i sottosistemi:
POSIXOS2
15/06/02 Enrico Branca , stu1015 @ libero.it 23
Hardening (6 / 15)
La compatibilita con i sistemi windows precedenti a Windows 2000 non è necessaria quindi si devono eliminare tutti i componenti superflui
Eliminare “File and Printer Sharing for Microsoft Network”
Disabilitare senza rimuovere “Client for Microsoft Networks” dato che serve ad IIS 5.015/06/02 Enrico Branca , stu1015 @ libero.it 24
Hardening (7 / 15) Network Basic Imput-Output System (NetBIOS)
Perchè possa servire a qualcosa ha bisogno di appoggiarsi a un altro protocollo, e cioè:
SMB ( server message block ) Consente la comunicazione fra le applicazioni
sviluppate per sfruttarlo, fornendo tre servizi di base:
name service porta UDP 137datagram service porta UDP 138session service porta TCP 139
15/06/02 Enrico Branca , stu1015 @ libero.it 25
Hardening (8 / 15)
Permette la comunicazione con sistemi operativi precedenti a Windows 2000
Permette di fare browsing
Permette di instaurare “null session”
NetBIOS oltre a NetBEUI può utilizzare anche:
TCP/IP: NetBIOS over TCP/IP (NetBT)IPX/SPX
15/06/02 Enrico Branca , stu1015 @ libero.it 26
Hardening (9 / 15)
Disabilitare l'uso di NetBIOS da ogni interfaccia di rete
Disabilitare il driver “NetBIOS over tcpip” (nbt.sys) tramite il “Computer Management”
Eliminare tutti i file precedentemente usati dai servizi ora disabilitati
Eliminare tutti i file temporanei
15/06/02 Enrico Branca , stu1015 @ libero.it 27
Hardening (10 / 15)
Dato che molti eseguibili non sono necessari, occorre proteggerli da un eventuale uso improprio da parte di un attaccante
Creare quindi un gruppo che dovrà rimanere vuoto, senza utenti
Associare il permesso FULL CONTROL sui files solo a questo gruppo, ed escludere dai permessi anche Administrator
I file saranno quindi inutilizzabili
15/06/02 Enrico Branca , stu1015 @ libero.it 28
Hardening (11 / 15) Per mettere in sicurezza il sistema scaricare dal
sito della Microsoft il security template “hisecweb.inf”
Tramite gli snap-in “Security Configuration and Analisys” e “Security Template” analizzate il sistema ed applicate il template
Applicando il template si fanno più di 50 modifiche alla configurazione del sistema, che servono per avere un livello di sicurezza base
15/06/02 Enrico Branca , stu1015 @ libero.it 29
Hardening (12 / 15)
Per mettere in sicurezza i file di IIS è necessario:
Spostare la cartella Inetpub sul terzo disco fisso
Rinominarla
Creare delle cartelle in cui mettere i diversi tipi di file che verranno utilizzati per il sito web
Impostare permessi molto restrittivi per ogni cartella
15/06/02 Enrico Branca , stu1015 @ libero.it 30
Hardening (13 / 15)
Abilitando il server web si va a mettere in pericolo tutto il sistema, per cui è necessario impostare permessi molto restrittivi su tutti gli elementi
Per mettere in sicurezza IIS la Microsoft fornisce “IIS Lockdown” e “URLScan”, entrambi
scaricabili gratuitamente dal sito
È importante installare entrambi i tools verificando che siano aggiornati
15/06/02 Enrico Branca , stu1015 @ libero.it 31
Hardening (14 / 15)
La sicurezza di un sistema è pari alla resistenza della parte più debole, per cui è
necessario adottare altri accorgimenti
Editare quindi il file “w3svc.dll” per cambiare il banner di IIS
Sostituire la stringa “Microsoft IIS/5.0” con una stringa inventata che abbia la stessa lunghezza
In questo modo sarà possibile evitare il riconoscimento del server web in uso
15/06/02 Enrico Branca , stu1015 @ libero.it 32
Hardening (15 / 15)
Per limitare l'accesso al sistema dall'esterno è necessario filtrare il traffico
Sfruttare quindi i filtri IPSec (Internet Protocol Security) per controllare i flussi di traffico in entrata ed in uscita
Creare i filtri seguendo la regola del “default deny”
Modificare il registro di modo che IPSec filtri la porta 88 TCP/UDP e la porta 500 TCP/UDP
15/06/02 Enrico Branca , stu1015 @ libero.it 33
Verifiche sul sistema (1 / 7) NetBIOS ( no RestrictAnonymous)
15/06/02 Enrico Branca , stu1015 @ libero.it 34
Verifiche sul sistema (2 / 7) NetBIOS (RestrictAnonymous 1)
15/06/02 Enrico Branca , stu1015 @ libero.it 35
Verifiche sul sistema (3 / 7) Password Cracking
15/06/02 Enrico Branca , stu1015 @ libero.it 36
Verifiche sul sistema (4 / 7) Vulnerability Scanner (no Hardening)
15/06/02 Enrico Branca , stu1015 @ libero.it 37
Verifiche sul sistema (5 / 7) Vulnerability Scanner (Hardened)
15/06/02 Enrico Branca , stu1015 @ libero.it 38
Conclusioni
Anche se i server IIS coprono circa il 32 % del mercato, contro il 56 % dei server Apache, rimangono i più bucati. Molto spesso il fatto che ci sia un wizard che fa il lavoro al posto dell'amministratore aiuta, ma non a rendere sicuro un server.
Soprattutto non crediate che i server “sicuri” rimangano tali, perchè se lo fate, avete gia perso la battaglia15/06/02 Enrico Branca , stu1015 @ libero.it 39
Riferimenti (1 / 2)
http://technet.microsoft.com
http://www.eeye.com
http://rr.sans.org
http://www.hammerofgod.com
http://www.microsoft.com/downloads/
http://www.securityfocus.com
http://www.foundstone.com
http://www.netcraft.com
http://nsa1.www.conxion.com/win2k/index.html
15/06/02 Enrico Branca , stu1015 @ libero.it 40
Riferimenti (2 / 2)
http://www.sans.org/top20.htm
http://www.cert.org
http://www.ciac.org/ciac/
http://support.microsoft.com
http://www.shavlik.com/nshc.htm
Mailing List
sikurezza.org: ml @ sikurezza.org
Securityfocus: focus-ms @ securityfocus.com
15/06/02 Enrico Branca , stu1015 @ libero.it 41
Riferimenti
15/06/02 Enrico Branca , stu1015 @ libero.it 40
SECURING IIS 5.0WINDOWS 2000 SERVER
WEBB.IT 02
Enrico Branca
15/06/02 Enrico Branca , stu1015 @ libero.it 1
Italian Security Mailing List
SECURING IIS 5.0WINDOWS 2000 SERVER
07 luglio 2002, WEBB.IT 02
Relatore:
Enrico Branca stu1015 @ libero.it
Riferimenti
15/06/02 Enrico Branca , stu1015 @ libero.it 40
SECURING IIS 5.0WINDOWS 2000 SERVER
WEBB.IT 02
Enrico Branca
15/06/02 Enrico Branca , stu1015 @ libero.it 1
Sikurezza.org
General Infos: staff @ sikurezza.org