Présenté par : Kalleli Dhouha Sassi Med Ikbel Beji Marwa Lachker Anas Daldoul Amine
Partie III : Défense ¶des Techniques, Moyens & Outils de...
Transcript of Partie III : Défense ¶des Techniques, Moyens & Outils de...
06/12/07 Anas Abou El Kalam - Outils sécurité 1
Partie III :
Défense & parades
Techniques, Moyens & Outils de sécurité�� �� � �� � � � � � ��� � � � �� �� �� � � �� �� � � � � ��� ��
06/12/07 Anas Abou El Kalam - Outils sécurité 2
Plan chapitre 3 : Les techniques de défense
1. Conseils
1.1. Règles de base
1.2. La veille en sécurité ...
1.3. Les outils de sécurité
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4. Architectures de sécurité
06/12/07 Anas Abou El Kalam - Outils sécurité 3
Qlq chiffres
06/12/07 Anas Abou El Kalam - Outils sécurité 4
Qlq chiffres
06/12/07 Anas Abou El Kalam - Outils sécurité 5
Conseils
� Verrouillez les stations� Protéger les accès, sécurité physiques, cadenas, ...
� Désactiver le boot sur le lecteur de disquette et sur le lecteur de CDROM.� Linux : Evitez d'avoir option failsafe au démarrage proposé par Lilo (LInux Loader)
� Cette option peut permettre d'obtenir les accès root (sans mot de passe)
pour la maintenance du système.� Windows : Le système de fichier NTFS permet une sécurisation accrue par
rapport aux systèmes de fichier FAT et FAT 32. � Windows 95, 98 et Me : niveau de sécurité très bas
• Protéger l'accès du BIOS par un mot de passe !
• Limitation programmes s'exécutant avec droits administrateur
• répérer les programmes s'exécutant avec les droits administrateur.
•Ainsi, vous pouvez changer leurs droits pour qu'ils ne deviennent pas un
point critique pour la vulnérabilité du système.
• # find / -perm +6000
• liste prog s'exécutant avec droits administrateur
06/12/07 Anas Abou El Kalam - Outils sécurité 6
Protection des pwd
• L'attaque par dictionnaire• Le programme utilise une liste de mots prédéfinis dans un fichier externe. Cette
liste est appelée un dictionnaire ; ces mots sont la plupart du temps ceux provenant
d'un dictionnaire contenant les mots du langage courant. • Le programme les chiffre un par un et les compare au mot de passe stocké.
•Le brute forcing• générer des mots de passe avec une suite aléatoire de caractères, • les chiffrer et les comparer au mot de passe à découvrir.
•Tester la fiabilité de vos mots de passe !• John te Ripper (www.openwall.com/john/)
•Programme libre Sous UNIX & Windows•Supporte un grand nombre d'algos de chiffrement•présente un important paramétrage des attaques.
• LophtCrack•Dernières versions payantes, sous Windows ou sur Unix
• Cain• Test fiabilité pwd (Sous Windows 9x, les pwd sont dispersés dans le
répertoire racine de windows dans différents fichiers d'exention ".PWL" portant
comme nom celui de l'utilisateur ou sous win.ini, ...)
06/12/07 Anas Abou El Kalam - Outils sécurité 7
La veille : sites d'info dédiés à la sécurité
• Le réseau des Computer Emergency Response Teams
• publie des rapports sur toute nouvelle faille de sécurité.
• Ces équipes peuvent aussi fournir une assistance ne cas de piratage.
• Descriptions précises sur des nouvelles failles de sécurité; outils sécurité ...
• CERT (www.cert.org) de l'université de Carnegie Mellon.
• CERT RENATER (http://www.renater.fr/spip.php?rubrique19/CERT_Renater.htm)
•Centre d'Expertise gouvernemental de Réponse et de Traitement des Attaques
informatiques (http://www.certa.ssi.gouv.fr/)
• Archives Bugtraq (http://www.bugtraq.com/)
• Bugtraq France (http://www.bugtraq-france.com/)
• Packet storm security ( packetstormsecurity.nl)
• SecurityFocus (www.securityfocus.com
• fournit un moteur de recherches thématique pratique pour lister les vulnérabilités
liées à un logiciel
06/12/07 Anas Abou El Kalam - Outils sécurité 8
Outis de sécurité� Evaluation & diagnoistic réseauEvaluation & diagnoistic réseau
� Tcpdump (sniffer) - http://www.tcpdump.org/� Ethereal (sniffer) - http://www.ethereal.com/� DSniff (sniffer) - http://www.monkey.org/~dugsong/dsniff/� Kismet (Wifi) - http://www.kismetwireless.net/� Airsnort (Wifi) - http://airsnort.shmoo.com/� Nessus (scanner) - http://www.nessus.org/� Nmap (scanner de ports) - http://www.insecure.org/nmap/� john (mots de passe) - http://www.openwall.com/john/
�Surveillance & supervision Systèmes & Réseaux Surveillance & supervision Systèmes & Réseaux � Logcheck - http://logcheck.org/� IPTraf - http://iptraf.seul.org/� IPBand - http://ipband.sourceforge.net/� Nagios - http://www.nagios.org/� Netflow - www.netflowanalyzer.com
� Durcissement protocoles réseauDurcissement protocoles réseau� TCP_wrapper - http://www.ja.net/CERT/Hinxman/� xinetd - http://www.xinetd.org/� Tiger - http://www.net.tamu.edu/network/tools/tiger.html� Bastille - http://www.bastille-linux.org/
06/12/07 Anas Abou El Kalam - Outils sécurité 9
Outis de sécurité�Authentification & autorisationAuthentification & autorisation
� Kerberos - http://web.mit.edu/kerberos/www/� LDAP - http://www.openldap.org/� PAM - http://www.kernel.org/pub/linux/libs/pam/� Radius - http://www.freeradius.org/� ACL - http://www.suse.de/~agruen/acl/linux-acls/online/
� ChiffrementChiffrement� GnuPG - http://www.gnupg.org/GnuPG - http://www.gnupg.org/� SSH - http://www.openssh.com/fr/SSH - http://www.openssh.com/fr/� OpenSSLOpenSSL� Kame/Racoon – OpenSwan (IPSec)Kame/Racoon – OpenSwan (IPSec)
�Gestion des droits & FirewallsGestion des droits & Firewalls� IPFilter (FreeBSD) - http://coombs.anu.edu.au/~avalon/� PF (OpenBSD) - http://www.openbsd.org/faq/pf/� Netfilter (Linux) - http://www.netfilter.org/� IPFW - http://www.freebsd.org/doc/en_US.ISO8859-1/� Firewall-1 de CheckPoint� Mwall de Matranet� Pix de CISCO� Netwall d'Evidian
Netasq 06/12/07 Anas Abou El Kalam - Outils sécurité 10
Outis de sécurité�Proxys & contrôle de contenuProxys & contrôle de contenu
� Squid - http://www.squid-cache.org/� Squidguard - http://www.squidguard.org/� DansGuardian - http://dansguardian.org/� Delegate - http://www.delegate.org/delegate/
�AntiVirus & AntiSpamsAntiVirus & AntiSpams� ClamAV (moteur), � Mailscanner -Amavisd (email), � DansGuardian - SquidClam (navig),� mod_clamav (serveur web), � ClamWin (poste client),� SpamAssassin - http://spamassassin.apache.org/� Razor - http://razor.sourceforge.net/
�Sauvegardes & RedondanceSauvegardes & Redondance� BackupExe - www.symantec.com/backupexec/index.jspBackupExe - www.symantec.com/backupexec/index.jsp� BackupPC - http://backuppc.sourceforge.net/� Bacula - http://www.bacula.org/� Amanda - http://www.amanda.org/� Rsync (synchronisation) - http://samba.anu.edu.au/rsync/� HA - http://www.linux-ha.org/� RAID - http://www.freenix.fr/unix/linux/HOWTO/
06/12/07 Anas Abou El Kalam - Outils sécurité 11
Outis de sécurité
IDSIDS� Snort (NIDS) - http://www.snort.org/Snort (NIDS) - http://www.snort.org/� Prelude (NIDS) - http://www.prelude-ids.org/Prelude (NIDS) - http://www.prelude-ids.org/� AIDE - http://www.cs.tut.fi/~rammer/aide.htmlAIDE - http://www.cs.tut.fi/~rammer/aide.html� Tripwire - http://www.tripwire.orgTripwire - http://www.tripwire.org
�Filtrage niveau 7 / IDS proactifsFiltrage niveau 7 / IDS proactifs� l7-filter - http://l7-filter.sourceforge.net/index.php.frl7-filter - http://l7-filter.sourceforge.net/index.php.fr� Hogwash - http://hogwash.sourceforge.net/oldindex.htmlHogwash - http://hogwash.sourceforge.net/oldindex.html� flexresp / guardian - cf. Snortflexresp / guardian - cf. Snort
•Les correctifs anti-débordement mémoire pour le noyauLes correctifs anti-débordement mémoire pour le noyau
• ++ outils complémentaires au noyau Linux permettent de limiter les possibilités
d'exécution d'exploits utilisant les bogues de dépassement de mémoire (pile, tas).
• OpenWall [http://www.openwall.com]
• grsecurity [http://www.grsecurity.org/]
06/12/07 Anas Abou El Kalam - Outils sécurité 12
Plan chapitre 3
Techniques de défense
1. Conseils
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4. Architectures de sécurité
06/12/07 Anas Abou El Kalam - Outils sécurité 13
La collecte d'information
•Mode de fonctionnement du pirate :
•Avant de mener une attaque, il repére les serveurs offrant des services non protégés.
•Pour obtenir ces infos, le pirate va utiliser un scanner.
•Le but de ce section est de
• savoir utiliser un scanner (e.g., NMAP) pour anticiper les futures attaques
• présenter des méthodes de protections contre le scan (en utilisant des règles de
firewalling sous iptables/ipchains par exemple)
06/12/07 Anas Abou El Kalam - Outils sécurité 14
La collecte d'information : les scanners
• Intérêt du scanner
• trouver dans délai très court, tous les ports ouverts sur une machine distante.
• Types de scanner
• certains se contentent juste de donner : la liste des ports ouverts, le type et la
version de l'OS tournant sur le serveur (e.g., Nmap)
• D'autres scanners comme Nessus permettent de tester différentes failles connues
sur ces services.
06/12/07 Anas Abou El Kalam - Outils sécurité 15
Plan chapitre 3
Techniques de défense
1. Conseils
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4.
06/12/07 Anas Abou El Kalam - Outils sécurité 16
La collecte d'information : exemple avec (map
Utilisons Nmap pour connaître les services en écoute sur la machine d'@ IP 192.168.1.1[[email protected] /root]# nmap 192.168.1.1nmap 192.168.1.1nmap 192.168.1.1nmap 192.168.1.1
Starting nmap V. 2.54BETA31 ( www.insecure.org/nmap/ )Interesting ports on (192.168.1.1) :(The 1544 ports scanned but not shown below are in state : closed)Port State Service21/tcp open ftp53/tcp open domain80/tcp open http110/tcp open pop-3111/tcp open sunrpc113/tcp open auth631/tcp open cups845/tcp open unknown901/tcp open samba-swat10000/tcp open snet-sensor-mgmtNmap run completed -- 1 IP address (1 host up) scanned in 2 seconds.
==> Nmap donne un aperçu assez complet des ≠ services s'exécutant sur la machine dans un temps assez bref.==> On peut observer dans l'exemple que des serveurs FTP, DNS, WEB, POP-3 ... sont en attente de connexion
06/12/07 Anas Abou El Kalam - Outils sécurité 17
La collecte d'info : comment marche (map
Nmap envoie de paquets sur tous les ports de cette machine et analyse les réponses.
• Le scan vanilla TCP connectLe scan vanilla TCP connectLe scan vanilla TCP connectLe scan vanilla TCP connect
Nmap procède à l'appel de la fonction connect() sur tous les ports de la machine[[email protected] /root]# nmap [ip de la machine cible] ou[[email protected] /root]# nmap -sT [ip de la machine cible]Ce type de scan est facilement repérable.
• Les scans furtifsLes scans furtifsLes scans furtifsLes scans furtifs
• Le scan en connexion demi-ouverte ou "Syn-scan"• Nmap envoie sur chaque port un paquet TCP avec le flag SYN armé ; • si 1 port est ouvert, il renverra un paquet avec flags SYN & ACK armés [[email protected] /root]# nmap -sS [adresse IP de la machine cible]
• Scan FIN • envoi paquets TCP avec seulement le flag FIN armé.
[[email protected] /root]# nmap -sF [adresse IP de la machine cible]
• Scan NULL • envoi paquets TCP avec seulement le flag NULL armé.
[[email protected] /root]# nmap -sN [adresse IP de la machine cible]
• Xmas scan (traduisez le scan de Noël) • envoi paquets TCP avec les flags FIN/URG/PUSHV armés.
[[email protected] /root]# nmap -sX [adresse IP de la machine cible]
Pour FIN, NULL, Xmas : système répond avec paquet RST si port fermé et ne répond pas si port ouvert06/12/07 Anas Abou El Kalam - Outils sécurité 18
(map : détermination OS
[[email protected] /root]# nmap -O 192.168.0.1Starting nmap 3.48 ( http://www.insecure.org/nmap/ )Interesting ports on (192.168.0.1):(The 1647 ports scanned but not shown below are in state: closed)PORT STATE SERVICE22/tcp open ssh25/tcp open smtp53/tcp open domain80/tcp open http113/tcp open auth139/tcp open netbios-ssn445/tcp open microsoft-ds515/tcp open printer587/tcp open submission901/tcp open samba-swatDevice type: general purpose
Running: Linux 2.4.XRunning: Linux 2.4.XRunning: Linux 2.4.XRunning: Linux 2.4.XOS details: Linux 2.4.20 - 2.4.21 w/grsecurity.org patchOS details: Linux 2.4.20 - 2.4.21 w/grsecurity.org patchOS details: Linux 2.4.20 - 2.4.21 w/grsecurity.org patchOS details: Linux 2.4.20 - 2.4.21 w/grsecurity.org patchUptime 76.872 days (since Tue Sep 2 15:20:23 2003)Uptime 76.872 days (since Tue Sep 2 15:20:23 2003)Uptime 76.872 days (since Tue Sep 2 15:20:23 2003)Uptime 76.872 days (since Tue Sep 2 15:20:23 2003)Nmap run completed -- 1 IP address (1 host up) scanned in 7.030 seconds
==> Nmap indique que la machine cible utilise un noyau Linux 2.4.21-grsec
06/12/07 Anas Abou El Kalam - Outils sécurité 19
(map : résumé options utiles
-h help-sS Scan TCP SYN-sT, pour scanner les ports TCP ouvert-sU, pour scanner les ports UDP ouvert-O permet de connaître le système d’exploitation qui tourne sur la cible-sV Détection version du service- p permet de spécifier un port spécifique.- v qui permet d’avoir plus d’informations.-F Scan rapide : seulement ports dans le fichier de services Nmap-P0 Scan sans ping •La cible peut être
• @ IP, classe d'IP : 192.168.102-125, réseau : nmap 192.168.1.*, masque ...ExemplesPour une utilisation classique :
• nmap 192.168.1.100•Pour vérifier si le port du ftp est ouvert (port 21 ) :
• nmap –p 21 192.168.1.100•Pour connaître le système d’exploitation de la cibl e :
• nmap –O 192.168.1.100
Difficile de retenir toutes ces options ==> utiliser interface graphique nmapfe06/12/07 Anas Abou El Kalam - Outils sécurité 20
(map : résumé options de log
Option de logsOption de logsOption de logsOption de logs-oN affichage écran (normal) -oX log sous forme de fichier XML-oG Log au format “Grepable” -sA Tous formats de logs--resume Résumé des scans à partir de normal (-oN) ou grepable (-oG)
Exemples
• nmap -oG MonLog.gnmap -oX MonLog.xml -oS 192.168.1 .100
• Nmap -sA Monlog2 92.168.1.100
• Options de traces de packets• --packet_trace
• Nmap affiche détails packets (@/port source/destin ation)•--version_trace
• Un sous ensemble du cas 1), seulement détails sur service
06/12/07 Anas Abou El Kalam - Outils sécurité 21
(map : fichiers
Généralement dans /usr/share/nmapGénéralement dans /usr/share/nmapGénéralement dans /usr/share/nmapGénéralement dans /usr/share/nmapnmap.dtd DTD pour les fichiers logs XML de Nmap
nmap.xsl Feuille de stype XML
nmap-protocols Fichier texte avec mappage N° protocole IP <--> nom nmap-services Fichier texte avec mappage N° ports <--> service
nmap-services-probes Liste de detection des versions des services
06/12/07 Anas Abou El Kalam - Outils sécurité 22
(map : intérêt & protection
é êInt r t • épouvoir pr voir les futures attaques, • îpouvoir conna tre quels services tournent sur une machine.
• éUne installation faite un peu trop vite peut laisser des services en coute (donc des ports
é é àouverts sans que cela ne soit n cessaire) et donc vuln rables une attaque.
• é éV rifiez que votre pare-feu (si ce n'est pas iptables) supporte la d tection de scans.
• êConfigurer votre pare-feu pour emp cher les scans
• ée.g., d tecter l'envoi un grand nombre de paquets TCP avec les flags FIN et/ou SYN et/ou
éACK et/ou RST arm (s).
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN, RST RST -m limit --limit 1/s -j ACCEPT
(map : comment s'en protéger ?
06/12/07 Anas Abou El Kalam - Outils sécurité 23
Plan chapitre 3
Techniques de défense
1. Conseils
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4.
06/12/07 Anas Abou El Kalam - Outils sécurité 24
(essus, c'est quoi ?
• èNessus est disponible sous Linux et Windows, et il est enti rement gratuit.
• é éNessus est un “scanner de vuln rabilit ”• à é éde scanner une ou plusieurs machines la recherche des vuln rabilit s : erreurs dans le
code, backdoors ... • é éFait des tests de p n tration (pen test)
• éInjecter plusieurs attaques pour savoir si une ou plusieurs machines sont vuln rables
• é êIl produit un rapport tendu et propose m me des solutions
•Nessus se compose de• partie serveur (nessusdnessusd )
• é écontient BD vuln rabilit s, en charge des attaques • Client
• Sert d'IHM
• Processus
• âL'utilisateur se connecte sur le serveur gr ce au client
• Authentification utilisateur
• éL'utilisateur ordonne au serveur de proc der aux tests d'une ou plusieurs machines.
06/12/07 Anas Abou El Kalam - Outils sécurité 25
(essus, installation
Commencez par décompresser les sources des logicielsCommencez par décompresser les sources des logicielsCommencez par décompresser les sources des logicielsCommencez par décompresser les sources des logiciels
•tar -xzvf /où_est/nessus-libraries-1.2.7.tar.gz •tar -xzvf /où_est/libnasl-1.2.7.tar.gz •tar -xzvf /où_est/nessus-core-1.2.7.tar.gz •tar -xzvf /où_est/nessus-plugins-1.2.7.tar.gz
Compilez et installez nessus-librairies :Compilez et installez nessus-librairies :Compilez et installez nessus-librairies :Compilez et installez nessus-librairies :
•cd nessus-libraries/ . /configure --prefix=/usr make make install
Compilez et installez libnasl :Compilez et installez libnasl :Compilez et installez libnasl :Compilez et installez libnasl :
•cd ../libnasl/ ./configure –prefix=/usr make make install
Compilez et installez nessus-core :Compilez et installez nessus-core :Compilez et installez nessus-core :Compilez et installez nessus-core :
•cd ../nessus-core/ ./configure –prefix=/usr make make install
Compilez et installez nessus-plugins :Compilez et installez nessus-plugins :Compilez et installez nessus-plugins :Compilez et installez nessus-plugins :
•cd ../nessus-plugins/ ./configure --prefix=/usr make make install
06/12/07 Anas Abou El Kalam - Outils sécurité 26
(essus : configuration
Avant de lancer le daemon nessusd, il faut rajouter, au moins, un utilisateur et son pwdvant de lancer le daemon nessusd, il faut rajouter, au moins, un utilisateur et son pwdvant de lancer le daemon nessusd, il faut rajouter, au moins, un utilisateur et son pwdvant de lancer le daemon nessusd, il faut rajouter, au moins, un utilisateur et son pwd
# nessus-adduser
Possibilité de définir ++ users avec Possibilité de définir ++ users avec Possibilité de définir ++ users avec Possibilité de définir ++ users avec OOOO ddddrrrrooooiiiittttssss
•# Accept 192.168.1.0/24 # l'utilisateur a droit de scanner uniquement les classes d'adresses
•# Deny 192.168.1.0/24 # peut scanner tout sauf le réseau : 192.168.1.0/24
•# accept client_ip # n'a le droit de scanner que sa machine
•Ne pas oublier de terminer ses règles avec default accept ou default deny selon le cas
Générer, le certificat SSL et les clés privés pour le serveurGénérer, le certificat SSL et les clés privés pour le serveurGénérer, le certificat SSL et les clés privés pour le serveurGénérer, le certificat SSL et les clés privés pour le serveur
• # nessus-mkcert
Afficher fichier config (/usr/etc/nessus/nessusd.conf)Afficher fichier config (/usr/etc/nessus/nessusd.conf)Afficher fichier config (/usr/etc/nessus/nessusd.conf)Afficher fichier config (/usr/etc/nessus/nessusd.conf)
•nessusd -s
lancer le daemon lancer le daemon lancer le daemon lancer le daemon
•/usr/sbin/nessusd -D
VérifiezVérifiezVérifiezVérifiez
•ps aux | grep nessusd #root 16409 0.0 0.6 5400 3452 ? S 19:04 0:00 /usr/sbin/nessusd -D
06/12/07 Anas Abou El Kalam - Outils sécurité 27
(essus : lancement client
# nessus &
06/12/07 Anas Abou El Kalam - Outils sécurité 28
(essus : lancement du client
8 onglets. • "nessusd host".
• bouton "Log in" -> se connecter sur hôte nessusd• SSL se lance ==> préférence pr 2ème option
• Plugins• sélectionner plugins à utiliser pendant scan. Clic pluging ==> description contenu• Cochez, "Enable dependencies at runtime".
• Credentials• permet de fournir éventuellement logins/pws pour accéder aux machines à tester
• Options de scan et port scanner • assurez-vous d'avoir cocher nmap.
• Target (Cible à scanner)• nom d'1 ou ++ hôtes, séparés par des virgules• 1 ou ++ @IP, séparées par des virgules. • classe d'adresse, e.g., : 192.168.0.1/24
• gérer paramètres U • KB (Knowledge base), base de connaissances. • affichage page Crédits.
06/12/07 Anas Abou El Kalam - Outils sécurité 29
(essus : un scan
•dans la fenêtre de nessus, cliquez sur "start the scan" pour lancer le scan.
06/12/07 Anas Abou El Kalam - Outils sécurité 30
(essus : un scan
Laissez le test se dérouler:
• Quand le scan est finit, il vous affiche une fenêtre récapitulative. • En cliquant sur un hôte vous obtenez les résultats de son scan. • Clic sur "save report" ==> sauvegarder le rapport dans le format de votre choix.
• Si vous choisissez html avec graphe, il vous suffit d'indiquer un répertoire et il
créera lui-même les fichiers html et les images qui vont avec.
06/12/07 Anas Abou El Kalam - Outils sécurité 31
(essus : un scan
vous pouvez consulter résultats par machine, sous-réseau, port, sévérité...
06/12/07 Anas Abou El Kalam - Outils sécurité 32
(essus : un scan
Exemple de rapport d'attaques
06/12/07 Anas Abou El Kalam - Outils sécurité 33
(essus : Post-installation
Lancer nessusd démarrage de l'ordinateur rajouter Dans votre /etc/rc.d/rc.local
/usr/sbin/nessusd -D
Supprimer un utilisateur /usr/sbin/nessus-rmuser
informations sur votre installation/usr/etc/nessus/nessusd.conf
Fichiers logs /usr/var/nessus/logs/nessusd.messages
06/12/07 Anas Abou El Kalam - Outils sécurité 34
Collecte d'info : (ETCAT
Netcat permet d'établir une connexion (TCP ou UDP) sur un port souhaité et d'y envoyer ou d'y recevoir des données.
[[email protected] /root]# nc 192.168.1.1 21
220 ProFTPD 1.2.5rc1 Server (ProFTPD Default Installation) [neuromancer]
• On obtient directement la version du logiciel utilisé.
•Netcat comporte d'autres fonctionnalités (comme l'envoi de scripts ...). • Le pirate n'a plus qu'à trouver faille applicative sur logiciel correspondant
• Comment s'en protéger ?• Retirer les bannières donnant les versions de logiciel et les messages d'aide ou de bienvenue d'un service réseau en écoute qui peuvent donner des informations sur votre système.
ConseilUtilisez netcat contre vos serveurs pour repérer les services trop «bavards».
06/12/07 Anas Abou El Kalam - Outils sécurité 35
Collecte d'info : Finger & ident
• Le service finger permet d'obtenir des informations sur utilisateurs du système# finger @machinecible
Login Name Tty Idle Login Time Office toto Le toto pts/7 3d Mar 26 20 :43
(case)// root root pts/4 5d May 25 16 :20
Le symbole @ produit le même effet que l'astérisque pour un listing de rép
• On voit qui est connecté sur le système (toto et root) et depuis quand.• finger n'est pas dangereux mais le laisser en écoute, sans en avoir réellement besoin,
est une grossière erreur.
• Comment s'en protéger ? • Sous Linux
• Il est conseillé de désactiver le service finger dans /etc/inetd.conf•Inetd est un "super-serveur" Internet. Le super-serveur est un programme qui
écoute les connexions réseau et les redirige vers le programme approprié
• Ajouter # devant la ligne relative au service finger.
# finger stream tcp nowait root /usr/sbin/tcpd in.fingerd
• Sous Windows• désactivez le programme associé au service finger.
• Si vous ne souhaitez pas désactiver le service finger, configurez votre firewall pour
limiter les accès vers ce service. 06/12/07 Anas Abou El Kalam - Outils sécurité 36
Plan chapitre 3
Techniques de défense
1. Conseils
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4. Architectures de sécurité
06/12/07 Anas Abou El Kalam - Outils sécurité 37
Les firewalls : principe
• La prolifération des attaques externes et leurs conséquences parfois catastrophiques
ont poussé les administrateurs réseaux à repenser les architectures réseaux pour aller
vers des architectures de sécurité
• Idée de base
- permettre aux gens au sein de l’entreprise de pouvoir accéder à des ressources
partagées (éventuellement sur Internet) de façon contrôlée
- cacher en partie la structure interne du réseau de l’entreprise
=> notion de pare-feu (firewall)•sépare deux réseaux par une fonction de filtrage.
• un réseau est considéré comme "propre" (le réseau interne) • l’autre non (en principe Internet)
06/12/07 Anas Abou El Kalam - Outils sécurité 38
Les firewalls : principe
• faire en sorte que seul le trafic (sortant ou entrant soit autorisé);
• le Firewall doit être un passage obligé en entrée et en sortie du réseau interne
• 2 catégories principales : le filtrage de paquets (packet filters) et le relayage de paquets
• FiltrageFiltrage de paquets : routeurs permettant le filtrage des paquets en fonction
au moins des adresses IP et des numéros de port, source et destination
• RelayageRelayage de paquets
• Application-Level Gateway : passerelle relayant trafic au niveau des
applications
• Circuit-level Gateway : passerelle relayant trafic au niveau connexions
TCP, UDP (au niveau transport)
06/12/07 Anas Abou El Kalam - Outils sécurité 39
Les firewalls : Principe
• nouveau paquet arrive,
Source & destination ?
FW confronte ces infos avec ses règles
et détermine s’il s’agit d’un
• paquet « en transit », (ne fait que
passer d’1 interfaces à 1 autre)
=> Passe dans FORWARD
• paquet adressé au FW
==> confronté au filtre INPUT
Si le paquet sort du firewall c’est la
chaîne OUTPUT qui est concernée.
06/12/07 Anas Abou El Kalam - Outils sécurité 40
Les firewalls : Principe de I(PUT / OUTPUT/FORWARD
• INPUT / OUTPUTINPUT / OUTPUT connexions à destination et depuis le firewall à lui-même.
• Ces connexions peuvent arriver et sortir par différentes cartes réseau, mais c’est
le firewall lui-même qui est concerné par ces filtres.
Iptables –I INPUT –p tcp --dport 80 –j ACCEPT
• autorise les connexions sur le port 80 de la machine concernée. (Serveur Web)
Iptables –I OUTPUT –p tcp --dport 80 –j ACCEPT
• autorise les connexions vers des serveurs sur le port 80 en tcp (le Websurf).
• FORWARDFORWARD : pour filtrer trafic transitant entre deux interfaces réseau.
• Ex: si paquet est reçu par carte connexion Internet et qu’il doit aller vers serveur
de mail par la carte « DMZ », alors ce paquet transit dans la chaîne FORWARD.
iptables –I FORWARD –i eth0 –o eth1 –j ACCEPT
iptables –I FORWARD –s 14.15.16.21 –d 192.168.0.2 –j ACCEPT
iptables –FORWARD –i eth0 –s 14.15.16.21 –o eth1 –d 192.168.0.2 –p tcp --dport 80 –j ACCEPT
06/12/07 Anas Abou El Kalam - Outils sécurité 41
Les firewalls : filtrage de paquets
•permet de contrôler le flot de paquets suivant un ensemble de critères entre 2 réseaux
- effectué par un routeur (délivré par constructeur ou machine banalisée) possédant :
• DEUX cartes réseau et
• logiciel lui permettant d’effectuer le filtrage
- FW applique les règles de filtrage des paquets sur la base des champs :
• en-têtes de couche IP (adresse IP source et destination) et
• transport (N° de port UCP ou TCP)
06/12/07 Anas Abou El Kalam - Outils sécurité 42
Les firewalls : ex de filtrage de paquets
Règle implicite :
Tout ce qui n’est pas autorisé doit être interdit par défaut
06/12/07 Anas Abou El Kalam - Outils sécurité 43
Les firewalls : ex de filtrage de paquets
Les paquets relatifs à la requête du client portent comme @ source 1 @ appartenant au 157.159.226.0/25 et ont pour adresse destination l’adresse du serveur HTTP 157.159.226.132.
Ces paquets sont reçus en entrée (E) par l’interface externe du filtre B.
Cette opération autorisée par règle 1
Chaque paquet est routé par B vers l’interface Int en sortie (règle 4)
Lors de la réponse du serveur HTTP, les paquets relatifs à la réponse portent comme @source l’@ du serveur et sont destinés à éqpment ayant émis requête
Chaque paquet est reçu en entrée (E) par l’interface Int de B (règle 3)
B route le paquet vers l’interface Ext en sortie ce qui est autorisé par règle 2
Question : Supposons 157.159.229.132 fournisse également telnet, que se passe t’il si req client ?
06/12/07 Anas Abou El Kalam - Outils sécurité 44
Les firewalls : ex de règles sur routeur CISCO
• chaque règle est appelée une ACLACL (Access Control List)
• pour chaque paquet donné, l’ACL rend deux valeurs
• deny (paquet rejeté)
• permit (paquet peut transiter par le routeur)
• on associe à chaque interface du routeur une ACL qui peut être du type
• in (trafic entrant par cette interface) ou
• out (trafic sortant par cette interface)
Routeur(config)# access-list 1 permit 172.16.0.0 0. 0.255.255
Routeur(config)# interface ethernet 0Routeur(config-if)# ip access-group 1 out
@SOURCE NETMASK
la règle 1 est appliquée aux
paquets sortants de l’interface 0
# access-list 101 deny tcp 172.16.4.0 0.0.255.255 172.16.3.0 0.0.0.255 eq 21
PAQUET TCP @SOURCE @DEST PORT DEST
06/12/07 Anas Abou El Kalam - Outils sécurité 45
Les firewalls : exemple d'iptable - syntaxe
Iptables –[PIADR] [INPUT|FORWARD|OUTPUT] . . . –j [LOG|DROP|ACCEPT| MASQUERADE]
-I-I = insert rule, on ajoute une règle en tête du filtre.
-A -A = append rule, on ajoute une règle à la fin du filtre.
-D-D = delete, on efface une règle.
-R-R = replace, on remplace un règle.
-L = list, on liste une chaîne.
-F -F = flush, on efface les règle d’une chaîne.
-P-P = Policy, réaction par défaut.
syntaxe servant à préciser les règles
* -s-s ip source // -d-d ip cible
* -sport-sport port source // -dport-dport port destination
* -p-p type de protocol (tcp/udp/^)
* -m-m type de match (par exemple state)
* --state--state (NEW, ESTABLISHED, RELATED) 06/12/07 Anas Abou El Kalam - Outils sécurité 46
Les firewalls : ex de règles avec iptables
Iptables -t filter -A FORWARD -i eth1 -s a.b.c.0/24 ...
Paquet supposé traverser FW
Paquet entrant par eth1
Paquet dont @ srce fait partie du réseau ...
... -d e.f.g.0/24 -p tcp --destination-port 23 -j DROP
Paquet dont @ dest fait partie du réseau ....
Paquet à dest de telnet
Paquet rejeté
06/12/07 Anas Abou El Kalam - Outils sécurité 47
Les firewalls : exemples d'iptable
iptables –I INPUT –s 12.13.14.15 –j DROP
Dégage tous les paquets provenant de 12.13.14.15 à destination du firewall
iptables –I OUTPUT –p tcp --dport 80 –d 12.13.14.15 –j ACCEPTiptables –I OUTPUT –p tcp --dport 80 –d 12.13.14.15 –j ACCEPTiptables –I OUTPUT –p tcp --dport 80 –d 12.13.14.15 –j ACCEPTiptables –I OUTPUT –p tcp --dport 80 –d 12.13.14.15 –j ACCEPT
Autorise le firewall à se connecter en port 80 sur 12.13.14.15 uniquement.
iptables –F INPUTiptables –F INPUTiptables –F INPUTiptables –F INPUT
Vide les règles du filtre INPUT
iptables –P INPUT DROPiptables –P INPUT DROPiptables –P INPUT DROPiptables –P INPUT DROP
Règle la politique par défaut à drop sur le filtre INPUT
Dans tous les cas, il faut régler la politique par défaut à DROP sur tous les filtres et ensuite
accepter seulement les flux « licites » :
iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROPiptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROPiptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROPiptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP
De cette façon, si vous avez oublié une règle, dans le pire cas le paquet sera dropé, mais il
n’atteindra pas sa destination. En gros tout ce qui n’est pas explicitement autorisé est interdit.06/12/07 Anas Abou El Kalam - Outils sécurité 48
Les firewalls : exemples d'Iptable
Je souhaite pouvoir héberger un dns/mail/http/ftp sur ma machine qui fait aussi firewall :
Mail :Mail :Mail :Mail : iptable –i INPUT –p tcp --dport 25 –j ACCEPT iptable –i INPUT –p tcp --dport 25 –j ACCEPT iptable –i INPUT –p tcp --dport 25 –j ACCEPT iptable –i INPUT –p tcp --dport 25 –j ACCEPT
DNS :DNS :DNS :DNS : iptable –i INPUT –p udp --dport 53 –j ACCEPTiptable –i INPUT –p udp --dport 53 –j ACCEPTiptable –i INPUT –p udp --dport 53 –j ACCEPTiptable –i INPUT –p udp --dport 53 –j ACCEPT
http :http :http :http : iptable –i INPUT –p TCP --dport 80 –j ACCEPT iptable –i INPUT –p TCP --dport 80 –j ACCEPT iptable –i INPUT –p TCP --dport 80 –j ACCEPT iptable –i INPUT –p TCP --dport 80 –j ACCEPT
ftp :ftp :ftp :ftp : iptable –i INPUT –p TCP --dport 21 –m state --state NEW –j ACCEPT iptable –i INPUT –p TCP --dport 21 –m state --state NEW –j ACCEPT iptable –i INPUT –p TCP --dport 21 –m state --state NEW –j ACCEPT iptable –i INPUT –p TCP --dport 21 –m state --state NEW –j ACCEPT
iptable –i INPUT –p TCP --dport 20 –m state --state RELATED –j ACCEPTiptable –i INPUT –p TCP --dport 20 –m state --state RELATED –j ACCEPTiptable –i INPUT –p TCP --dport 20 –m state --state RELATED –j ACCEPTiptable –i INPUT –p TCP --dport 20 –m state --state RELATED –j ACCEPT
Pouvoir héberger un dns/mail/http/ftp sur une machine dédié autre que le FW
iptables –t nat –I PREROUTING –d [ip FW] –p tcp --dport 25 –j DNAT –to [ip privé serv mail] iptables –t nat –I PREROUTING –d [ip FW] –p tcp --dport 25 –j DNAT –to [ip privé serv mail] iptables –t nat –I PREROUTING –d [ip FW] –p tcp --dport 25 –j DNAT –to [ip privé serv mail] iptables –t nat –I PREROUTING –d [ip FW] –p tcp --dport 25 –j DNAT –to [ip privé serv mail]
iptables –t nat –I POSTROUTING –s [ip privé serv mail] –p tcp --sport 25 –j SNAT –to [ip FW]iptables –t nat –I POSTROUTING –s [ip privé serv mail] –p tcp --sport 25 –j SNAT –to [ip FW]iptables –t nat –I POSTROUTING –s [ip privé serv mail] –p tcp --sport 25 –j SNAT –to [ip FW]iptables –t nat –I POSTROUTING –s [ip privé serv mail] –p tcp --sport 25 –j SNAT –to [ip FW]
06/12/07 Anas Abou El Kalam - Outils sécurité 49
•Le filtrage simple de paquets ne s'attache qu'à examiner les paquets IP
indépendamment les uns des autres, ce qui correspond au niveau 3 du modèle OSI. Or,
• la plupart des connexions reposent sur le protocole TCP, qui gère la notion de
session, afin d'assurer le bon déroulement des échanges.
• de nombreux services (le FTP par exemple) initient une connexion sur un port
statique, mais ouvrent dynamiquement (de manière aléatoire) un port afin d'établir
une session entre la machine faisant office de serveur et la machine cliente.
==> Impossible avec filtrage simple de paquets de prévoir les ports à laisser passer ou à
interdire
• Pour y remédier, le système de filtrage dynamique de paquets est basé sur
l'inspection des couches 3 et 4 du modèle OSI, permettant d'effectuer un suivi des
transactions entre le client et le serveur
Les firewalls : La technique de La technique de stateful inspection stateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 50
• le filtrage de type statefulstateful inspectioninspection, (existe dans tous FW marché) consiste à filtrer
des paquets dont on mémorise le contexte
==> le datagramme IP ne doit pas être analysé de façon isolé mais il faut tenir
compte du contexte dans lequel il est émis
==> assurer un suivi des échanges, i.e., tenir compte de l'état des anciens paquets
pour appliquer les règles de filtrage
==> à partir du moment où une machine autorisée initie une connexion à une
machine située de l'autre côté du pare-feu, l'ensemble des paquets transitant dans
le cadre de cette connexion seront implicitement acceptés par le pare-feu.
- le firewall maintient donc une table des connexions ouvertes et lorsqu’un nouveau
paquet arrive, regarde s’il fait partie d’une connexion avant de lui appliquer les régles
- le firewall est également capable d’analyser les paquets jusqu’au niveau applicatif
Les firewalls : La technique de La technique de stateful inspection stateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 51
•- exemple d’une connexion ftp (mode passif)
- sans stateful inspection, il faut laisser passer tous paquets à destination de port > 1024
sur le serveur (on ne sait pas à priori quel port va choisir le serveur)
- avec stateful inspection, le port choisi par le serveur pour l’échange des données est
mémorisé par le firewall et seul ce port est ouvert
Les firewalls : La technique de La technique de stateful inspection stateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 52
•- exemple de règles avec le packet filter d'OpenBSD
=> la même règle est appliquée aux autres paquets de la connexion : inutile donc
de spécifier des règles pour les paquets retour !!
Les firewalls : La technique de La technique de stateful inspection stateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 53
• un autre exemple avec ConntrackConntrack
# iptables -P INPUT DROP
# iptables -A INPUT -i ! eth1 -j ACCEPT
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Supponsins que l'on veuille faire du ssh vers Supponsins que l'on veuille faire du ssh vers hote.distant.comhote.distant.com
• Après avoir lancé ssh hote.dist.com, notre machine envoie paquet pour établir connexion
• Ce paquet particulier est dans l'état NEW, et notre pare-feu le laisse passer, puisque
nous bloquons seulement paquets qui entrent dans notre FW, pas ceux qui en sortent.
•La réponse de hote.distant.com passe par notre chaîne INPUT
•Il ne correspond pas à 1ère règle (car arrive de eth1) donc passe à 2nd& dernière règle
• FW reconnaît en 1er que ce paquet fait partie d'une connexion existante
• Puisqu'il s'agit d'un paquet entrant, FW vérifie si cette connexion a déjà eu du trafic
sortant et trouve que c'est le cas (le paquet NEW initial que nous avons envoyé).
• paquet entrant est classé ESTABLISHED, comme le seront tous les futurs paquets
reçus ou envoyés qui seront associés avec cette connexion.
• Paquet accepté
Les firewalls : La technique de La technique de stateful inspectionstateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 54
Les firewalls : La technique de La technique de stateful inspectionstateful inspection
• parrer aux attaques d'IP spoofingparrer aux attaques d'IP spoofing
• Eliminer tous les paquets entrant avec comme adresse source une adresse interne
• Solution ?
•Ex lignes à ajouter soit au script de FW, soit dans script qui active vos interfaces
for x in lo eth0 eth1
do
echo 1 > /proc/sys/net/ipv4/conf/${x}/rp_filter
done
• Autre solution (contexte : Passerelle IP entre WAN et LAN à usage domestique)
•# En entrée du WAN :
•iptables -A filter_from_wan -s 192.168.0.0/16 -j DROP
•iptables -A filter_from_wan -s 172.16.0.0/12 -j DROP
•# En sortie vers le WAN :
•iptables -A filter_to_wan -d 192.168.0.0/16 -j dest_unreachable
•iptables -A filter_to_wan -d 172.16.0.0/12 -j dest_unreachable
06/12/07 Anas Abou El Kalam - Outils sécurité 55
• parrer aux attaquesparrer aux attaques
• fragmentation (fragmentation (Tiny Tiny ou ou OverlappingOverlapping) )
• Eliminer paquets possédant le champ fragmentation offset à 1
• l’attaque du type "Ping of Death"l’attaque du type "Ping of Death"
• Interdire trafic ICMP
• les attaques DNS les attaques DNS
• interdire tout accès direct au serveur DNS
• (nécessite une mise en oeuvre d’autres mécanismes, e.g., authentification)
Les firewalls : La technique de La technique de stateful inspectionstateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 56
• Avantages
- concept simple
- complètement transparent pour l’utilisateur interne ou externe
(aucune modification de sa machine ou de ses logiciels)
- rapide
• Inconvénients
- difficultés à paramétrer la configuration de façon cohérente
(certains logiciels ne gèrent pas la cohérence des règles !!)
- pas de mécanisme d’authentification
Les firewalls : La technique de La technique de stateful inspectionstateful inspection
06/12/07 Anas Abou El Kalam - Outils sécurité 57
• Principe
- permet d’établir un relai entre le réseau internet et le réseau externe en se basant
sur le contenu des messages au niveau applicatifniveau applicatif
- basé sur le principe de l'authentificationl'authentification : un U externe demande une connexion
TCP/IP à la passerelle, qui l’authentifie et qui, en cas de succès, contacte
l’application que l’utilisateur demande
- nécessite la collaboration de la part des systèmes finaux
=> exemple : utilisation d’un serveur proxy cache http pour sortir sur internet
depuis un réseau interne ; il est nécessaire sur le poste client de modifier la
configuration du browser pour qu’il utilise bien le serveur http interne
Firewalls : Relayage de paquets (application-level gateway)
06/12/07 Anas Abou El Kalam - Outils sécurité 58
• Exemple de connexion
• Dans un premier temps, l'utilisateur externe envoie une demande de connexion à la
passerelle par l'intermédiaire d'un outil TCP/IP comme « telnet » ou « FTP ».
• Suite à cette requête, la passerelle va requérir une identification, e.g., par le
renseignement d'un mot de passe ou d'un autre système d'authentification.
• Après vérification,
• Si l'utilisateur est reconnu, la connexion est établie avec l'application par
l'intermédiaire d'un numéro de port prédéfini.
• Sinon, la requête est rejetée.
Firewalls : Relayage de paquets (application-level gateway)
06/12/07 Anas Abou El Kalam - Outils sécurité 59
• Avantages
- plus haut niveau de sécurité que le simple filtrage de paquets
=> mécanisme d’authentification et de logging spécifique sur le relai
• l'authentification ne s'effectue pas uniquement par rapport à des @ IP ou à N°
port, mais sur l'identité même d'1 individu (quelque soit la machine qu'il utilise).
• Plus légère que la précédente, car seuls les flux concernant les applications autorisées
(souvent peu nombreuses) à filtrer sont contrôlés.
• Très simple à mettre en place, car elle ne nécessite que de renseigner quelles
applications peuvent être utilisées ou non à travers le firewall.
• Inconvénients
- overhead introduit peut être important (pas vrai dans le cas d’un proxy http qui, au
contraire, en se comportant en cache, peut améliorer les performances)
- pas toujours possible d’effectuer des contrôles car le contenu de la transaction n’est
pas toujours visible (par exemple, s’il est chiffré avec SSL)
Firewalls : Relayage de paquets (application-level gateway)
06/12/07 Anas Abou El Kalam - Outils sécurité 60
• Principe
- permet d’établir un relai au niveau transportrelai au niveau transport
- empêche l’établissement d’une connexion TCP (ou UDP) point à point
• => établissement de deux connexions différentesdeux connexions différentes :
• la première dans le réseau protégé avec la machine interne et
• la seconde avec la machine externe
Firewalls : Relayage de paquets (circuit-level gateway)
• Intérêt
• Masquer ce qui se passe derrière le firewall
• le réseau interne est totalement invisible pour le domaine externe
06/12/07 Anas Abou El Kalam - Outils sécurité 61
• caractéristiques
• Les Circuit-Level Gateways sont moins connus que les deux premiers et sont le plus
souvent combinés avec un Application-Level Gateway
• en fait c'est une déclinaison, une fonctionnalité offerte par le second type de FW
• Aucun filtrage, ni contrôle du service n'est réalisé entre les deux connexions TCP, la
passerelle est simplement assimilée à un tuyau de communication.
==> De ce fait l'administrateur doit avoir une totale confiance dans les utilisateurs
du parc de machines dont il a la responsabilité.
• Toutefois, étant plus souple, ils sont souvent utilisés comme protection pour les
communications sortant du réseau local pour aller vers l'extérieur.
• Les connexions entrantes sont alors protégées par une passerelle d'application
très restrictive.
Firewalls : Relayage de paquets (circuit-level gateway)
06/12/07 Anas Abou El Kalam - Outils sécurité 62
Les firewalls : règles de bon usage
• Un firewall doit être imprenable car sinon votre réseau entier est compromis.
• Règle de base :
• tout refuser et ensuite de n’accepter que les flux nécessaires.
• Un FW efficace doit posséder ++ interfaces réseau pour pouvoir faire filtrage fine
entre plusieurs zones.
• L’idéal c’est qu’à chaque zone du SI corresponde une interface. Ex,
• une pour la connexion internet,
• une pour la DMZ (serveurs visible depuis Internet, possédant IP Publique), et
• une pour le LAN.
• Plus la granularité est fine, meilleure la sécurité sera.
06/12/07 Anas Abou El Kalam - Outils sécurité 63
Les firewalls : règles de bon usage
• Filtrage au niveau IP
• limiter l'accès à votre réseau à des U connus utilisant une @ IP statique
• rejeter toutes les autres requêtes venant d'U utilisant @ IP non autorisée.
• Fermez tous les ports en écoute sur les différents serveurs et ouvrez seulement
ceux dont vous avez besoin.
• Filtrez ces ports (rejetez autres requêtes sur autres ports que ceux en écoute)
• Empêchez toutes les connexions sortantes sur des services non autorisés.
• définir nombre limité de services auxquels les serveurs et les clients peuvent
accéder (mail, ftp, web...). Ensuite,
• configurer le firewall pour rejeter les connexions depuis l'intérieur vers l'extérieur
sur des services différant de ceux définis.
06/12/07 Anas Abou El Kalam - Outils sécurité 64
Les firewalls : ATTAQUES CO(TRE ...
• déterminer règles actives sur FW
• savoir quels ports ne sont pas filtrés. Par ex
[[email protected] /root]# nmap 192.168.1.2
Starting nmap V. 2.54BETA31 ( www.insecure.org/nmap/ )Interesting ports on (192.168.1.2) :(The 1549 ports scanned but not shown below are in state : closed)Port State Service21/tcp filteredfilteredfilteredfiltered ftp22/tcp filteredfilteredfilteredfiltered ssh111/tcp open sunrpc515/tcp open printer1024/tcp open kdmNmap run completed -- 1 IP address (1 host up) scanned in 1 second
==> Les ports 21 (ftp) et 22 (ssh) sont filtrés.
06/12/07 Anas Abou El Kalam - Outils sécurité 65
Les firewalls : ATTAQUES & PARADES
• Protégez-vous contre le scanning
•firewalking• Firewalk est un outil de reconnaissance active de la sécurité réseau• essaye de déterminer protocoles (de couche 4) qu'une console d'IP forwarding poura passer.• Il détermine Nbre routeurs entre machines source et cible (située derrière FW).• Ensuite, il envoie des paquets tests (TCP, UDP) avec un TTL égal à ce nombre de routeurs + 1.
• Si le paquet est accepté, il traverse le firewall et on obtient une réponse.• Sinon paquet est bloqué par l'ACL du FW, il sera abandonné et aucune réponse ne sera envoyé
ou bien un paquet de filtre admin ICMP de type 13 sera envoyé.
Syntaxe
firewalk -p [protocol] -d [destination_port] -s [source_port] [internal_IP] [gateway_IP]• Options
• -d 1-65535 sépcifie le port destination initial à utiliser lors de la phase de ramping
• -h help.
• -i Interface_name Specifie interface à utiliser
• -n pas de résolution IP <-> hostnames
• -P 1-2000 faire une pause, afin d'éviter de flooder le réseau
• -p TCP,UDP Type de scan à exécuter
• -r conformance stricte à la RFC 793
• -S 1-65535,… (1-130,139,1025) ports à scanner06/12/07 Anas Abou El Kalam - Outils sécurité 66
Les firewalls : Firewalking
Exemples
• [root: ~]# firewalk -pTCP -S135-140 10.22.3.1 192.155.7.1Ramping up hopcounts to binding host ...
probe: 1 TTL: 1 port 33434: expired from [....]
probe: 2 TTL: 2 port 33434: expired from [....]
probe: 3 TTL: 3 port 33434: Bound scan at 3 hops [....]
port 137: open
port 138: open
port 139: *
port 140: open
Parade• Bloquer les paquets ICMP TTL EXPIRED au niveau de l'interface externe, mais le problème est que ses performances risque d'en prendre un
sérieux coup car des clients se connectant légitimement ne seront jamais ce qui est arrivé à leur connexion
06/12/07 Anas Abou El Kalam - Outils sécurité 67
Les firewalls : C/C
il ne suffit pas d’utiliser un firewall du type filtre de paquets ou passerelle applicative
• il faut ensuite prévoir une topologie de protection qui consiste en une configuration
(parfois complexe) de l’architecture réseau en utilisant souvent plusieurs catégories de
firewall
- on peut citer trois configurations à titre d’exemple :
+ Screened host firewall system (single-homed bastion host)
+ Screened host firewall system (dual-homed bastion host)
+ Screened-subnet firewall system
06/12/07 Anas Abou El Kalam - Outils sécurité 68
Plan chapitre 3
Techniques de défense
1. Conseils
2. Les scanners
2.1. (map
2.2. (essus
3. Les pare feux / Firewalls
4. Architectures de sécurité
06/12/07 Anas Abou El Kalam - Outils sécurité 69
Architectures & sécurité
•Même machine pour servs web, messagerie et partage de connexion
Internet.
• machine connectée directement à Internet.
• ==>aucune forme de sécurité : connexion non-sécurisée !!
06/12/07 Anas Abou El Kalam - Outils sécurité 70
Architectures & sécurité
Screened host firewall system with single-homed bastion hostScreened host firewall system with single-homed bastion host
•Cette architecture se compose de deux systèmes :
• un filtrage de paquets et
• une passerelle d'application, aussi appelée « Bastion host ».
06/12/07 Anas Abou El Kalam - Outils sécurité 71
Architectures & sécurité
Screened host firewall system with Screened host firewall system with singlesingle-homed bastion host-homed bastion host
- une machine bastion (bastion host) est un firewall de niveau application dont le rôle
est critique pour la sécurité globale du système
=> cette machine a en général une version de système d’exploitation
particulièrement sécurisée et spécifiquement protégée contre certaines attaques
- seuls les paquets en provenance et à destination du bastion host sont autorisés
- la bastion host agit comme proxy et effectue une authentification "musclée"
PbmesPbmes :
• la robustesse du premier filtrage, le filtrage de paquets, est primordiale
• en cas de panne, le réseau interne entier sera compromit.
•l'accès direct à Internet est plus complexe, car nécessite le passage par la passerelle.
•Pour l'alléger et dans le cas où un très haut niveau de sécurité n'est pas requit, le
système peut laisser filtrer les paquets en direction du port affecté au serveur Web06/12/07 Anas Abou El Kalam - Outils sécurité 72
Architectures & sécurité
Screened host firewall system with Screened host firewall system with dualdual-homed bastion host-homed bastion host
• Elle est toujours constituée de deux systèmes, correspondant à un filtrage par
• paquets et à une passerelle d'application.
• Toutefois cette solution exploite 22 ports de connexion (interfaces réseau) différents
• L'intérêt d'utiliser deux ports physiques distincts est de protéger le réseau privé
contre une panne du système de Packet-Filtering.
• En effet, le SW est coupé du réseau interne et doit nécessairement passer par la
passerelle pour y accéder : l'isolation est donc totale.
06/12/07 Anas Abou El Kalam - Outils sécurité 73
Architectures & sécurité
Screened Screened subnetsubnet firewall system firewall system
• Elle se décompose en trois systèmes :
• deux filtrages de paquets et une passerelle d'application.
•DMZ = zone tampon où sont installés les éléments pouvant porter préjudice à sécurité
du réseau privé, en cas de panne. e.g., passerelle d'application SW, serv POP ...
•trois niveaux de protection :
• passage par un Packet-Filtering, puis
•une Application Gateway avant de finir par
•un nouveau filtrage de paquets
06/12/07 Anas Abou El Kalam - Outils sécurité 74
Architectures & sécurité
Screened Screened subnetsubnet firewall system firewall system
• Elle se décompose en trois systèmes :
• deux filtrages de paquets et une passerelle d'application (machine bastion).
•DMZ = zone tampon où sont installés les éléments pouvant porter préjudice à sécurité
du réseau privé, et dont la chute ne mettra pas en cause le réseau interne
•trois niveaux de protection :
• passage par un Packet-Filtering, puis
•une Application Gateway avant de finir par
•un nouveau filtrage de paquets
06/12/07 Anas Abou El Kalam - Outils sécurité 75
Architectures & sécurité
Screened Screened subnetsubnet firewall system firewall system • si la machine bastion est attaquée, il est plus difficile d’exploiter ensuite cette
machine (2ième niveau de filtrage)• le routeur externe
• ne permet l’accès qu’à la DMZ; de cette façon, le réseau interne est invisible
depuis l’extérieur• autorise les accès sur les SW/messagerie (depuis RL comme depuis ext), mais empêchera tentatives de connexion sur autres services
• Routeur interne• empêche toute connexion de l'extérieur vers RL, et autorisera seulement connexions depuis RL sur nbre limité de services
• les accès directs de l'intérieur vers l'extérieur sont interdits
06/12/07 Anas Abou El Kalam - Outils sécurité 76
Architectures & sécurité
Limites des firewall Limites des firewall
• 80% des problèmes (intentionels ou pas) de sécurité proviennent de l'intérieur
• Un U interne peut, par ex, ouvrir une connexion dite parallèle vers l'extérieur par
l'utilisation d'un modem (connecté à une machine du réseau privé). Cette nouvelle
connexion permet donc à l'information de filtrer sans passer par le système de
protection mis en place.
• Il peut également introduire ≠ types de supports externes, comme des clés USB,
des CD-ROM ou autres disquettes et ainsi copier des données non filtrées
• Abus de privilèges
• Certains contenus ne sont pas contrôlés par "firewall"
• FW ne peut empêcher le passage de programmes boggés ou corrompus par un
virus En effet, que ce soit au niveau du filtrage de paquets ou au niveau de
l'authentification applicatif, le contenu des données envoyées, une fois la
connexion établie, n'est jamais filtré directement par la barrière.
• Données chiffrées,
06/12/07 Anas Abou El Kalam - Outils sécurité 77
Architectures & sécurité : les IDS
•Sonde NDIS entre FW et RL et dans DMZ.
•Si un pirate venait à envoyer requêtes suspectes/exploits, les NIDS génére alarme
(de l'intérieur ou de l'extérieur).
•Manager NDIS se situera dans le réseau local.
• 1 machine / service
06/12/07 Anas Abou El Kalam - Outils sécurité 78
Architectures & sécurité
• Zone de décontamination entre Internet et le réseau interne. • Zone de décontamination car permet de détecter des signatures d'attaques dans les flux de
données provenant d'Internet et d'éviter la propagation dans le reste du réseau.• Contient analyseurs de contrôle de contenu, antivirus et autres utilitaires surveillant (IDS) • Tous les flux entrants et sortants passeront par cette zone de décontamination. • Ces proxys applicatifs peuvent prendre la décision de couper la connexion en cas d'attaques ou de simplement rejeter la demande.
• Pour le réseau local, nous le subdiviserons en sous-réseaux, chaque sous-réseau possédera un NDIS
(sonde + manager). • Ces sous-réseaux seront reliés entre eux par des switchs.• Utilisation de tunels•...