Master 2 RCS - Module Sec2 TD: Filtrage
Exercices sécurité
Exercice 1
stratégies de défenses ?
1. Parmi les affirmations suivantes, lesquelles correspondent à des (bonnes)
a) Il vaut mieux interdire tout ce qui n'est pas explicitement permis. X
interdit.
b) II vaut mieux permettre tout ce quin'est pas explicitement
c) Dans un système informatique, il ne sert à rien de multiplier les mesures de sécurité. X
d) Plus le système est simple. plus il est facile de le sécuriser. X
?
2. Quelles attaques sont considérées comme des dénis de service
a) Le spoofing
b) Le flooding X
c) Les virus
d) Le phishing
e) Le spamming :
3. Le« social engineering » ou le « phishing » consistent le plus souvent à
a) Inonder une machine cible d'applications inutiles
b) Récupérer les informations confidentielles pour pénétrer dans un réseau X
c) Installer un programme caché dans un autre programme
d) Utiliser un analyseur de réseau pour capturer des trames
4. Le but du DNS spoofing est :
a) De falsifier I'adresse IP d'un utilisateur
b) De rediriger un utilisateur vers un site falsifié
c) De falsifier un serveur DNS X
5. Dans une attaque de type DDOS attaque distribuée sur la
a) Une machine maître contrôle d'autres machines qui pourront réaliser une
cible X
distribuées
b) Une machine maître inonde des machines cible à l'aide d'applications
c) L'objectif est de paralyser la machine cible
6. Le rôle d'un Firewall est:
a) De créer des connexions sécurisées entre les machines internes et externes
b) D'empêcher l'accès àcertaines ressources du réseau interne
c) De détecter les virus accompagnant les messages
d) De filtrer les accès entre l'Internet et le réseau local X
Exercice 2
Il est décidé d'installer un VPN entre deux sites distants dans une entreprise. Quels sont les protocoles qu'il
est possible d'utiliser ?
a) WEP// est un protocole de cryptage pour le wi-fi
b) PGPll est un protocole de chiffrement de mails niveau application
c) IPSec X
d'administration de réseau
d) SNMP I/ ce n'est pas un protocole de cryptage mais un protocole
e) SSH I/ VPN des pauvres X
Fonctionnement de Iptables
Page
S.EUSCHI
Advertisement
FORWARD
Rejeté Post-routage
Pré-routage Routage
Processus
Accepté
NPUT OUTPUT
local
Rejeté Rejeté
À
larrivée d'un paquet (après décision de routage) :
1: Si le paquet est destiné à l'hôte local Alors
2: il traverse la chaîne INPUT.
3: Si il n'est pas rejeté Alors
4: il est transmis au processus impliqué.
5: Sinon
6: Si le paquet est destiné à un hÙte d'un autre réseau Alors
7: il traverse la chaîne FORWARD
8: Si il n'est pas rejeté Alors
9: il poursuit alors sa route
Tous les paquets émis par des processus locaux au routeur traversent la chaîne OUTPUT.
ethl Routeur etho
140.77.13.2\ 192.168.0.2
Réseau privé
Exercicel
1. Accepter tous les paquets en provenance de n'importe ou ct destinés à l'adresse du routeur 192. 168,0.1.
iptables -A INPUT -s 0/0 -i eth0 d 192.168.0. I -p TCP j ACCEPT
2. Accepter de router les paquets entrant sur eth0 tels que :
@source @dest P-source P-dest
O/0 192.168.0.58 J024-65535 80
iptables -A FORWARD -s 0/0 -i eth0-d 192.168.0.58 -o ethl -p TCP -sport 1024:65535 -dport 80 j
ACCEPT
3. Accepter un paquct ICMP "ccho-request" (ping) par seconde
iptables -A INPUT -p icmp -icmp-type echo-request -m limit -limit l/s -i eth0 -j ACCEPT
Remarque : nmap, nessus. Logiciels permettant de diagnostiquer I'tat d'un firewall (rouver les ports ouverts,
détecter les services utilisant les ports,...)
Université Kasdi Merbah Ouargla Page 2
Advertisement
Master 2 RCS- Module Sec2 TD: Filtrage
Exercice
I. Pour commencer la configuration d'un firewall on doit en premier effacertoute les règles existantes et s'assurer qu'aucune
règle n'est appliquée. Donner les règles iptables correspondantes.
Iptables -F INPUT. Iptables -F OUPUT.Iptables -F FORWARD,
2. Généralement, lorsqu'on décide de mettre en place un firewall efficace, on commence toujours par appliquer une politique par
défaut qui refuse tous les paquets. Donner les règles iptables correspondantes à cette politique.
iptables-P INPUT DROP, iptables-P OUTPUT DROP. iptables-P FORWARD DROP
3. On va maintenant permettre tout le tout le trafic rentrant ou sortant du firewall. Donner la règle qui permet de faire cela.
4. Je souhaite pouvoir héberger un dns/mail/htpftp sur ma machine qui fait aussi firewall. Donnez les règles qui
permettent de faire cela:
Mail: iptables INPUT -p tcp-dport25 j ACCEPT
DNS: iptables -- INPUT -p udp--dport53 -j ACCEPT
http: iptables - INPUT -p TCP -dport80-j ACCEPT
ftp: iptables - INPUT-p TCP --dport21-j ACCEPT
Exercice 3
Ci-dessous, la règle Adu firewall permet aux machines du LAN privé d'accéder à DMZ 2 alors que la règle
C devait Il'interdire. Comment remédier à cela ?
Mail
DMZ 1
LAN
Internet
priv
Firewal
DMZ 2
webl
Règle @ src @ dest. Protocole Port source Port dest. Action
A Toutes DMZ 2 TCP Tous 80 Autorisé
B LAN DMZ I TCP Tous 25 Autorisé
LAN Toutes TCP Tous Tous Refusé
E Tous Tous Tous Tous Tous Refusé
Si l'on veut interdire l'accès du LAN à DMZ2 il faut supprimer la ligne A ou mettre la ligne A après la ligne
C. En effet dans les règles de filtrage, les autorisations doivent toujours être interprétées avant la règle de
blocage.
SEUSCHI
Page 3
Advertisement
Exercice 4
Le tableau suivant représente un ensemble de règles de filtrage sur un firewall.
Port Port
dest. Protocole dest. ACK-I Action
Règle Direction @ sOurce source
Entrant Externe Interne TCP >1023 21 Permission
A
Sortant Interne Externe TCP 21 >1023 Permission
C Sortant Interne Externe TCP >I023 21 Permission
D Entrant Externe Interne TCP 21 >1023 Oui Permission
E Toutes Toutes Toutes Tous Tous Tous Refus
1. Rappeler le numéro de port associé à l'application de transfert de fichier FTP.
FTP est accessible via le port 21
2. Compte tenu des règles ci-dessus, est-ce que :
a. Les transferts FTP vers un serveur interne sont toujours autorisés ? OUI (cf ligne A)
b. Les transferts FTP vers un serveur interne sont autorisés seulement si la connexion est initiée
de l'extérieur ? NON (il n'y a pas de restriction dans la colonne ACK de la ligne A)
c. Les transferts FTP vers un serveur exterme sont toujours autorisés ?OUI (cf ligne C)
d. Les transferts FTP vers un serveur externe sont autorisés seulement si la connexion est initiée
de I'intérieur ? (NON , il n'y a pas de restriction dans la colonne ACK de la ligne C)
e. Les transferts de courier SMTP sont autorisés dans les deux sens ? NON, car SMTP utilise
le port 25 et tous les ports autres que 21 ne sont pas autorisés en ligne E.
Exercice5
Essayer la séquence de commandes suivantes et expliquer le comportement.
# ping -iI 127.0.0. I
[...]
# iptables -A INPUTs 127.0.0.l -p icmp -j DROP
[...]
#ping -i l 127.0.0.1
[...]
#
-il (TTL: durée de vie)
Réponses :
Vérifiez que votre interface de bouclage fonctionne correctement (0% des paquets perdus) :
#ping -i I127.0.0.1
Appliquez un filtre sur la chaîne d'entrée INPUT :
# iptables -A INPUT -p icmp -s 127.0.0.1 -j DROP
Vérifiez que votre modification a bien été prise en compte en affichant la chaîne INPUT :
# iptables -L INPUT
/ Lancer une 2 ème fois le ping
#ping -i 127.0.0.1
U'niversité Kasd1 Merhah Ouargla Page -
Advertisement
Master 2 RCS - Module Sec2 TD: Filtrage
Exercice 6
Lecture de nmap
Interprétez les résuitats des scan nmap cidessous. Vous préciserez en particulier si la machine dispose d'un firewall
et si elle est vulnérable à des attaques ou non.
starting Nmap 6.40( http://nmap.org ) at 2014-02-06 2. Starting nmapV. 2.54BETA31 (
14:54 CET www.insecure.org/nmap/ )
Nmap scan report for maachine.unice.fr (134.5.4.3) Interesting ports on (192.168.1.2):
Host is up (0.00028s latency). (The 1549 ports scanned but not shown below are in
Not shown: 988 closed ports state : closed)
PORT STATE SERVICE VERSION Port State Service
22/tcp open ssh OpenSSH 5.Ipl Debian 5 (protocol 21/hcp filtered ftp
2.0) 22/tcp filtered ssh
25/tep open smtp Postfix smtpd 111Acp open sunrpc
53/tcp open domain ISC BIND 9.5.1-P3 515hep open printer
80/tcp open http Apache httpd 2.2.9 ((Debian)) 1024kcp open kdm
110fcp open pop3 Dovecot pop3d Nmap run completed -1IP address (1 host up)
143/tcp open imap Dovecot imapd scanned in Isecond
993/cp open ssl/imap Dovecot imapd
995/tcp open ssl/pop3 Dovecot pop3d
MAC Address: 00:50:56:A7:4E:DO (VMware) Les ports 21 (fip) et 22 (ssh) sont filtrés, la machine
Running: Linux 2.6.X d'@P 192. 168.1.2 dispose d'un Firewall mais
d'autres ports sont encore ouverts
Tous les ports sont ouverts, pas de port filtré donc la
machine d® IP 134.5.4.3 ne dispose pas de Firewall.
Les ports ouverts sont vulnérables aux différents attaques
réseau
SEUSCHI Page
Advertisement
Formation Iptables : Correction TP
Table des matières
1.0pérations sur une seule chaîne et sur la table filter: .2
2.Opérations sur plusieurs chaines et sur la table filter:..
3.0pérations sur plusieurs chaires et sur plusieurs tables
4.SCRIPT..
4.1.partie 1.
4.2.Partie 2.
Copyright Stéphane Salès
Emall :
[email protected] Puge 1/7
Advertisement
Formation Iptables:Correction TP
filter:
1.Opérations sur une seule chaîne et sur la table
feuille chacune des règles demandées, ainsi que le test de la
Créer les règles suivantes : (ous noterez sur cette
sniff( ethereal,ngrep etc)
règle, à savoir un copiélcollé du term, evou du résultat d'un
" interdire tout paquet entrant
" effacer la règle
iptables -A INPUT-j DROP
iptables -D INPUTI
paramètre protocole
" interdire le protocole icmp entrant
" effacer la règle
iptables -A INPUT-p icmp j DROP
v paramètre source
interdire le protocole icmp provenant de localhost
" effacer la règle
iptables -A INPUT -p icmp -s localhost -j DROP
chaîne OUTPUT paramètre destination
" interdire tout paquet à destination de localhost
" effacer la règle
iptables -A OUTPUT -d localhost -j DROP
v paramètre inversion
" interdire un paquet sil ne provient pas de localhost
" effacer la règle
iptables -A INPUT -s ! localhost j DROP
v paramètre interface d'entrée
" interdire tout paquet entrant par elh0
" effacer la règle
iptables -A INPUT -i eth0 -j DROP
interdire un paquet sil provient de lo (à ne surtout jamais faire sur une machine si l'on ne sait
pas EXACTEMENT ce que l'on fait)
Copyrigh1 Stéphane Salès
Email : ssales@alioft
Page 2/7
Advertisement
Formation Iptables : Correction TP
" effacer la règle
iptables -A INPUT -¡ lo j DROP
paramètre interface de sortie
" interdire tout paquet sortant par eth0
" effacer la règle
iptables -A OUTPUT -0 eth0 -j DROP
v paramètre destination port
" interdire tout paquet à destination du port ftp
" effacer la règle
iptables -A INPUT -p tcp -dport 21 -j DROP
v paramètre source port
" interdire tout paquet sortant par eth0 dont le numéro de port source est inférieur à 1025
iptables -A OUTPUT -o eth0 -p tcp --sport :1024 -j DROP
iptables -A OUTPUT -o eth0 -p udp --sport :1024 -j DROP
" tester une connexion ftp
" effacer la règle et retester une connexion ftp
paramètre flag TCP
" interdire toute tentative d'initialisation de connexion TCP provenant de eth0
" effacer la règle
iptables -A INPUT -i eth0 -p tcp -syn -j DROP
v paramètre flag icmp
" interdire tout paquet entrant correspondant à un ping
" effacer la règle
iptables -A INPUT -p icmp --icmp-type ccho-request -j DROP
" interdire toute réponse à un ping
" effacer la règle
iptables -A OUTPUT-p icmp --icmp-type echo-reply j DROP
paramètre extension:
" extension mac
Copyright Stéphane Salès
Email : sales@alio,fc
Page 3/7
Advertisement
Formation Iptables : Correction TP
" interdire tout paquet entrant par eth0 dont l'adresse mac n'est pas celle du voisin
" effacer la règle
iptables -A INPUT -i ethO -m mac --mac-source ! 00:50:FC:23:2D:D7 -j DROP
" extension limit
" positionner la police par défaut à DROP pour la chaîne INPUT
iptables -P INPUT DROP
"crire une règle qui laisse passer 5tentatives de connexion TCP puis qui n'en laisse passer plus
que 2 par minute
iptables -A INPUT-p tep --syn -m limit --limit2/minute --limit-burst 5-jACCEPT
" faire de même avec les pings
iptables -A INPUT -p icmp --icmp-type ping -m limit --limit 2/minute --limit-burst 5j ACCEPT
"combien de temps(sans tentative de connexion ou d'echo-request)faudra t'il pour qu'on puisse à
nouveau avoir 5 des ces paquets qui puissent passer å la suite?
3 minutes
" effacer la règle
v le suivi de connexion(ip_conntrack)
" positionnez les règles par défaut à DROP pour les chaines INPUT, OUTPUT, FORWARD
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
" autoriser tout paquet relatif à une connexion déjà établi ou en rapport avec une connexion déjà
établi en entrée
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
" interdire tout paquet relatif åune connexion de type INVALID
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
" autoriser tout paquet créant une nouvelle connexion en sortie à destination du port 80
iptables -A OUTPUT -p tcp -dport 80 -m state -state NEW -j ACCEPT
" que faut il modifier ici pour que 'on puisse naviguer sur le net ?
iptables -A OUTPUT -p tep --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT
Copyrigh1 Siéphane Salès
Email :ssales @alio.f
Page 4/7
Advertisement
Formation Iptables : Correction TP
iptables -A OUTPUT -M state --state ESTABLISHED,RELATED -j ACCEPT
" effacer la règle
2.0pérations sur plusieurs chaînes et sur la table filter:
v création d'une nouvelle chaîne
" créer une nouvelle chaîne qui log les paquets entrants en ajoutant le préfixe [INPUT DROPl et
qui le drop
iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-prefix «[INPUT DROP}
iptables -A LOG_DROP -j DROP
" renvoyer sur cette nouvelle chaîne tout paquet engendrant une nou velleconnexion en entrée
iptables -A INPUT -m state -state NEW -j LOG_DROP
3.0pérations sur plusieurs chaires et sur plusieurs tables:
[Pour cette partie nous travaillerons sur des machines ayant au minimum 2 interfaces réseau]
v modification de champ 7CP/IP; table nat ; chaînes PREROUTING, POSTROUIING; cibles
SNAT, DNAT, MASQUERADE
" positionnez les règles par défaut à DROP pour les chaînes INPUT;, OUTPUT, FORWARD
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
" créer une règle qui modifie tout paquet qui arrive via linterface ethl à destination du port 2222
afin que ce paquet ai dans son champ /P DSTl'adresse 192.168.0.I et dans son champ TCP
DPORT22
iptables -t nat -A PREROUTING -i ethl -p tcp --dport 2222 -j DNAT --t0-destination 192.168.0.1:22
que se passe t il si on tente une connexion sur ethl sur le port 2222 ?
Rien car les paquets sont dropés dans la chaine FORWARD
" que faut il faire pour que la translation fonctionne effectivement ? (dans un sens comme dans
'autre)
" pour vous aider mettez ces règles dans un script se terminant par une règle qui log et drop tout
et ensuite regarder attentivement les logs
Copyright Stéphane Salès
Email : ssales@aliofr
Page 5/7
Advertisement
Formation Iptables : Correction TP
iptables -A FORWARD -s I92.168.0. -j ACCEPT
iptables -A FORWARD -d 192.168.0.1 -j ACCEPT
effacer ces règles(sauf les polices par défaut)
" créer une règle qui altère le champ /P SRC de tout paquet sortant via l'interface ethl, en
remplaçant la valeur de ce champ par l'adresse IP de cette interface(ethl)
iptables -t nat -A POSTROUTING -0 ethl -j SNAT --t0-source 62.212.36.222
iptables -t nat -A POSTROUTING -0 ethl -j MASQUERADE
" autoriser tout trafic provenant de ethO à être forwardé par notre machine
iptables -A FORWARD -ieth0-j ACCEPT
" autoriser tout trafic de statuts ESTABLISHED,RELATEDàêtre forwardé par notre machine
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
4.SCRIPT
Le but sera ici de se placer dans un cas concret, et de répondre au mieux aux besoins de filtrage, d'accès
aux services et de qualité de service.
Le cas concret :
4.1.partie 1
donc
Nous considérerons qu' iptables est installé sur la machine servant de routeur/firewall et nous allons
nous attacher à écrire le script pour cette machine.
Les machines, le routeur et le serveur placé dans la DMZ, doivent êre protégées au mieux
Le routeur a 3 interfaces réseau
ethO(192.168.0.254) relié à la DMZ
ethl(192.168.1.254) relié au LAN
PPp(62.212.36.222) relié à internet
La machine doit pouvoir être joignable via SSH depuis le LAN, et depuis Internet.
Les machines du LAN doivent pouvoir aller sur Internet(HTTP et FTP).
Les machines du LAN doivent pouvoir pinger une machine sur Intermet. serveur
Sur la DMZ, la machine 192.168.0.1 héberge le site web de l'entreprise, un relay mail et unaussi être
imap-ssl qui doivent être joignable, depuis le LAN, et depuis Internet. Cette machine doit
joignable par SSH depuis le LAN et depuis Internet.
machine devra pour pouvoir aller
La machine est une debian et est maintenu à jour via apt, aussi laftp.fr.debian.org.
télécharger via FTPet HTTP les mises à jours sur par exemple
(voir script)
Copyright Stéphane Salès
Email : ssales@alio,fr Page 6/7
Advertisement
Formation Iptables : Correction TP
4.2.Partie 2
On veut mettre en place un proxy transparent sur un serveur dédié (192. 168.0.2) situé dans la DMZ, que
faudrait il changer dans notre script?
(voir seript)
Copyrigh1 Stéphane Salès
Email : ssales@aliof: Page 7/7
Advertisement