Vous êtes sur la page 1sur 231

ISSXXX – Introduction à la sécurité informatique

et à la gestion de risque

Chapitre « complet »

Université de Yaoundé 1
Faculté des Sciences
Département d’informatique Serge Mani, ing. PhD, CISA, CISM
1
Sommaire
• Révision réseaux TCP/IP
• Pratique de la sécurité informatique
• Gestion des systèmes d'information
• Attaques et défenses
• Gestion d'incidents

2
Révision réseaux TCP/IP

3
Révision réseaux TCP/IP
● Buts :
● S'assurer que tous les étudiants ont une bonne
compréhension des protocoles de la famille TCP/IP :
– pour sécuriser un réseau, il faut comprendre ce qui y circule
– pour configurer un firewall
– pour être capable de diagnostiquer des problèmes réseau
● IP v4 seulement
● Feuille de référence SANS (sans.org)

4
Modèle OSI – IP

5
Adresse IP et masque

● 32 bits (4 octets)
● Ex. : 192.168.1.45
● Plusieurs classes incluant A, B et C
● Masque de réseau (network mask)
● 32 bits, les bits à gauche = 1; les bits à droite = 0
● Ex. : 255.255.240.0
(11111111.11111111.11110000.00000000 ou 0xFF-FF-
F0-00)
● CIDR (Classless Inter-Domain Routing)
6
Encapsulation

http://en.wikipedia.org/wiki/File:UDP_encapsulation.svg
7
IP
● Datagramme
● Pas de contrôle de flux
● Pas de garanties (équivalent à des cartes postales)
● Regarder les différents champs de l'en-tête

8
UDP

● Pas de connexion
● Stateless
● Pas de garanties
● Regarder les différents champs de l'en-tête
● DNS, NTP

9
TCP

● Connexion
● Three way handshake :
– SYN→
– ← SYN ACK
– ACK →
● Stateful
● connecté, garanties
● Regarder les différents champs de l'en-tête
10
ICMP

● Protocole de service de IP
● Utilisé pour le fameux « ping »
● Mais aussi pour signaler
● un port UDP fermé
● un réseau inaccessible
● des problèmes de fragmentation
● Peut aussi servir à changer la passerelle par défaut
d'un autre ordinateur (ICMP redirect)
11
ICMP

● On doit faire très attention au trafic ICMP que l'on


autorise.
● Interdire tout le trafic ICMP sur le réseau ou au
point d'entrée n'est pas une solution viable.

12
Ports

● Certains protocoles comme TCP ou UDP ont des


ports
● Permettent de diriger le contenu du paquet vers une
application (plusieurs applications peuvent être
actives sur une même adresse IP)
● Numéros de port réservés
● Attention : l'utilisation d'un port donné n'est pas
une garantie du protocole ou de l'application utilisé
13
Routage
● Niveau 3 (IP)
● Les tables de routage permettent à chaque nœud d'un
réseau de savoir à quel hôte (sur le même réseau)
envoyer un paquet IP.
● L'adresse MAC (niveau 2) ne traverse pas les routeurs
● Routage statique
● Protocoles de routage : OSPF, BGP...
● netstat -rn

14
Routage

http://en.wikipedia.org/wiki/File:IP_stack_connections.svg
15
Routage

● Passerelle par défaut (default gateway)


● Définit l'adresse du routeur à qui l'on envoie les paquets
qui ont une destination autre que le réseau local (c-à-d
qui ne sont pas directement accessibles).
● Fait généralement partie des paramètres reçus par
DHCP
● Importante aussi pour les tunnels VPN

16
Adresses privées
● Définies par RFC 1918
● 10.0.0.0 à 10.255.255.255 (préfixe 10/8)
● 172.16.0.0 à 172.31.255.255 (172.16/12)
● 192.168.0.0 à 192.168.255.255 (192.168/16)
● Ne sont pas routées sur l'Internet
● Peuvent être utilisées sans demander de permission

17
NAT

● Network Address Translation : « traduction »


d'adresses réseau
● Modifie certains paramètres :
● Adresse source
● Port source
● Adresse destination
● Port destination
● Utilisé pour faire communiquer les adresses
privées avec Internet ou pour cacher l'architecture18
du réseau.
NAT

● Doit garder en mémoire une table de


correspondance pour rediriger correctement les
réponses
● Dans le cas de protocoles sans connexion,
utilisation de minuteurs d'inactivité
● Pour certains protocoles, changements aussi dans la
couche applicative (FTP, ICMP)
● Problèmes avec IPSec AH
19
Pratique de la sécurité informatique

20
Rappel de la sécurité informatique
● Rappel de la « sainte trinité »
● Comment la mettre en pratique
● Quelques règles simples

21
Trinité de la sécurité informatique
● Confidentialité
● L'information et les systèmes ne sont accessibles qu'à ceux
qui sont autorisés.
● Disponibilité
● Les systèmes et les informations sont accessibles au
moment voulu (pas forcément 24h/24).
● Intégrité
● L'information est exacte et complète.

22
Mise en pratique : confidentialité
● Authentification obligatoire pour accéder aux systèmes
● Définir des permissions
● Ne donner que les permissions nécessaires et rien de plus
(inconvénient : génère plus de support)
● Protéger les systèmes
● (Plus loin dans ce cours)
● Chiffrement

23
Mise en pratique : disponibilité
● Protection des systèmes
● Matériel redondant
● Systèmes protégés du réseau
● Systèmes à la sécurité renforcée
● Certains systèmes redondants
● Sauvegardes pour assurer la disponibilité des
données

24
Redondance matérielle
● Doubler ou tripler les composantes qui tombent
le plus souvent en panne
● Alimentation électrique
– Doubler les blocs d'alimentation des serveurs
– Brancher chacun des blocs sur une source de courant
indépendante
– UPS
● Disques durs
– RAID 1, 5, 6
– RAID matériel / RAID logiciel
25
Mise en pratique : intégrité
● Systèmes protégés contre les modifications
frauduleuses des données
● Sauvegardes pour récupérer les données
corrompues
● Utiliser des systèmes de fichiers (file systems) fiables
● Attention aux sauvegardes des bases de données !
● C'est aussi le travail des applications

26
Quelques règles (1)
● Ne donner que les droits minimaux
● Pas besoin d’être administrateur de sa machine
pour envoyer des courriels
● Ne donner accès qu’aux serveurs dont l’utilisateur a
besoin
● Ne donner accès physique à la salle des serveurs
qu’aux personnes qui en ont réellement besoin,
idéalement garder une trace (vidéo, registre...)

27
Quelques règles (2)
● Les mots de passe d'administration ne doivent
être connus que des administrateurs (pas
forcément tous)
● On peut les laisser dans des enveloppes scellées
dans le coffre d'un directeur.
● Il est dangereux de donner les accès administrateur
à quelqu'un qui n'a pas les connaissances
techniques nécessaires.
● Rien ne doit reposer sur une seule personne

28
Quelques règles (3)

● Les systèmes doivent être gardés à jour afin


de limiter leurs vulnérabilités
● Il faut s'appuyer sur une politique de sécurité
(plus de détails plus tard)
● Low hanging fruit paradigm
● Ne pas autoriser des ordinateurs non gérés
par le service sur le réseau
● Ordinateurs personnels et de visiteurs
29
Quelques règles (4)

● Défense en profondeur (defense in depth)


● Mettre en place des mécanismes de protection à
plusieurs niveau
● Il ne faut pas s'appuyer sur un seul mécanisme
pour se protéger, il doit y avoir de la redondance
● Exemples :
– FW local et FW réseau
– filtrer le trafic entrant ET sortant
– désactiver un programme ET le désinstaller
– patches ET antivirus
30
Firewall (Coupe-feux)
● Qu’est-ce que c’est ?
● Firewall, garde-barrière, pare-feu
● Protection physique et logique
● Dispositif assurant le filtrage des communications
entre 2 réseaux : bloque tout trafic non autorisé

Zone suspecte Zone de confiance

R1 Coupe-feu R2
31
Coupe-feux

32
Différence Firewall - proxy
● Proxy (ou mandataire)
● Le client envoie sa requête (Web, ftp...) au proxy,
le paquet est destiné au proxy
● Le proxy reçoit la requête et forme une nouvelle
requête vers le serveur (nouvelle connexion).
● Le proxy reçoit la réponse du serveur et la recopie
pour le client.
● Le client et le serveur ne communiquent pas
directement
● Non transparent pour le client 33
Firewall (pare-feu)
● Obéit à une série de règles définies par
l'administrateur du FW
● Politiques par défaut :
● Accepter (Accept)
● Rejeter (Reject)
● Bloquer (Drop)

34
Coupe-feux
● Inspection de paquets
● Examine le contenu des en-têtes IP, TCP, UDP et ICMP.
● Le filtrage statique consiste à inspecter les paquets
indépendamment les uns des autres ; il ne reconnaît pas de
nombreuses formes d’attaques.
● L’inspection dynamique considère le rôle que jouent les
paquets dans le flux auquel ils appartiennent, qu’il s’agisse
d’une connexion en cours ou d’une requête de connexion.
● L’inspection dynamique est actuellement la méthode
d’inspection de paquets la plus répandue.

35
Coupe-feux
● Matériels/Logiciels
● Routeur filtrant
– Installation d’un logiciel pare-feu sur un routeur
– N’assurent généralement qu’un filtrage minimal.
– Coûts de traitement élevés, impliquant généralement la mise à jour
des routeurs
– Élimine le « bruit » causé par les attaques par sondage ou balayage
de ports « simples » pour faciliter la détection d’attaques plus
sérieuses.
– Bon emplacement pour le filtrage en sortie, capable de bloquer les
réponses aux attaques par sondage ou balayage de ports,
éventuellement émises par le routeur
36
Coupe-feux
● Matériels/Logiciels
● Coupe-feu logiciel (sur une machine)
– Installation d’un logiciel pare-feu sur un serveur Windows ou UNIX
– Une version adaptée à chaque volume de trafic
– Utilisation facile, car connaissance du système d’exploitation
– Certains fabricants proposent des kits matériel-logiciel dotés d’un
système d’exploitation sécurisé.
– Les systèmes d’exploitation génériques offrent souvent moins de
performances.

37
Coupe-feux
● Matériels/Logiciels
● Coupe-feu logiciel (sur une machine)
– Problème de sécurité : un pirate risque de s’introduire dans le
système d’exploitation.
● Changement des règles de filtrage pour permettre l’entrée de tous les
paquets
● Changement des règles de filtrage pour bloquer les paquets légitimes

38
Coupe-feux
● Matériels/Logiciels
● Boîtier coupe-feu
– Kit doté d'un système d’exploitation simplifié
– Difficile à compromettre
– Configuration très simple
– Ne peut pas être adapté aux besoins spécifiques des entreprises.
– Doit pouvoir être mis à jour.

39
Coupe-feux
● Matériels/Logiciels
● Coupe-feu individuel
– Installé directement sur les ordinateurs (serveurs et parfois clients)
– Sécurité accrue du fait de la spécificité de la configuration
● Par exemple : blocage de tous les paquets, hormis ceux émanant du
serveur spécialisé dans la défense
– Défense en profondeur
● Normalement associé à d’autres types de pare-feux
● Peut être le seul pare-feu en place sur des PC directement reliés à
l’internet.

40
Coupe-feux
● Matériels/Logiciels
● Coupe-feu individuel
– En l’absence d’une gestion centralisée, la configuration peut s’avérer
cauchemardesque.
● Surtout dans le cas de changements de règles fréquents
– Les utilisateurs se chargent généralement de la configuration de leurs
pare-feux individuels.
● Risque de mauvaise configuration ou d’un refus du pare-feu
● Besoin d’une gestion centralisée des différents ordinateurs du réseau

41
Coupe-feux
● Besoins de ressources

42
Coupe-feux
● Filtrage statique
● Examen de quelque champs des paquets entrants (en-têtes IP,
TCP, UDP et ICMP).
● Pas d’analyse de données.
● un paquet à la fois, indépendamment les uns des autres.
● Dans le cas d’un segment SYN/ACK, incapable de savoir si
un segment SYN s’est présenté auparavant pour l’ouverture
de la connexion.
● Ne peuvent pas traiter les paquets en provenance
d’applications à commutation de ports.

43
Coupe-feux

44
Coupe-feux
● Filtrage statique
● Liste de contrôle pour le filtrage séquentiel en entrée
– Adresses
– IP d’origine
– Fanions TCP
– Numéros de ports TCP
– Trafic UDP
– Messages ICMP
● Liste de contrôle pour le filtrage séquentiel en sortie
– …

45
Coupe-feux

46
Coupe-feux

47
Coupe-feux
● Filtrage dynamique
● Avec TCP et UDP, enregistrement de deux adresses IP et
numéros de port dans une table d’état pour l’ouverture d’une
connexion
● Acceptation de tous les paquets entre les deux ordinateurs et
ports considérés sans (ou presque sans) inspection
● UDP peut traiter les applications à commutation de ports

48
Coupe-feux

49
Coupe-feux

50
Coupe-feux

51
Coupe-feux
● Filtrage dynamique
● Liste de contrôle (inspection dynamique)
– Comme dans le cas statique, mais paquets applicatifs
● Accepter ou bloquer les paquets en provenance d’applications
spécifiques.
● Pas besoin de règles spécifiques pour bloquer les paquets de
sondage et de balayage de ports ne faisant partie d’aucune
conversation.

52
Coupe-feux
● Translation d’adresses réseau
● NAT : Network Address Translation
● N.B.: Logiciels d’écoute (Sniffer)
– sonder les réseaux, relever adresse IP, numéro de port de tout paquet
sortant
– Placer à l’extérieur du routeur
● Fonctionnement de NAT
– Création de paquet (client)
– Translation, Table de translation, réponse, restauration (NAT)
– Transparence totale
– Limite : IPSec

53
Coupe-feux

54
Coupe-feux
● Coupe-feux applicatifs
● Pb avec statique et dynamique : pas de contrôle des paquets
applicatifs
● Proxy ou relais applicatifs (relais clients/serveurs)
● Compatibles avec un grand nombre de protocoles
● Trois fonctions
– Dissimulation d’adresse IP
– Destruction d’en-têtes : contrer les attaques reposant sur les en-têtes
(IP, TCP, UDP)
– Renforcement de protocole : contrer l’usurpation de numéro de port

55
Coupe-feux

56
Coupe-feux

57
Coupe-feux

58
Coupe-feux
● Coupe-feux applicatifs
● Filtrage
– HTTP : commande Post, machines ou URL spécifiques, fichiers
exécutables
– FTP : Get (téléchargement), Put (téléversement)

59
Coupe-feux
● Choix d’un coupe-feu
● Protection de quoi (niveau de sécurité ?) : PC individuel, 1 réseau, des
sous réseaux
● Protection contre qui : attaques externes, internes ?
● Choix de la technologie : filtrage de paquets et/ou relais applicatif et/ ou
scanners de contenu?
● Intégration avec d’autres solutions de sécurité : antivirus, détecteurs
d’intrusions, mécanismes d’authentification, réseaux privés virtuels, etc.
● Solutions les plus utilisées ?
● Qualifications : installation/configuration/maintenance ; sous-traitance ?

60
Coupe-feux
● Choix d’un coupe-feu
● Gestion à distance ?
● Gestion centralisée ?
● Mécanismes d’authentification ?
● Alertes en cas de détection d’attaques ?
● Surveillance 24h/24h ?
● Impact sur le temps de réponse ?
● Extension et/ou ouverture à de nouveaux besoins ?
● Etc.

61
Coupe-feux
● Cas de Linux
● Coupe-feu en natif, à la base IP Chains
● Depuis la version 2.4 :
– Netfilter
● Coupe-feu IP, proxy, NAT
● Surveille tous les transferts réseaux
– Iptables
● Table de règles sur les flux autorisés à transiter
● Sert de fichier de paramètres pour Netfilter
– TCPWrapper
● Système de filtrage au niveau applicatif
● Règles d’accès à des services exécutés sur le système
– Restrictions sur l’utilisateur, le protocole, les horaires de service, etc.
62
VPN – RPV

● Virtual Private Network – Réseau Privé Virtuel


● Historique
● Création d'un réseau sécurisé au dessus d'un
réseau non sécurisé.
● Permet de relier plusieurs réseaux de manière
sécurisée

63
VPN

● Différents types de VPN :


● Gateway to Gateway
● Host to Gateway
● Host to Host
● Différents protocoles :
● IPSec
● SSL
● Logiciel ou matériel
64
IPSec (1)
● Suite de protocoles, plusieurs modes de
fonctionnement.
● Protocoles :
● IKE (Internet Key Exchange) 500/UDP
● AH (Authentication Header), IP protocol 51
● ESP (Encapsulation Security Payload), IP protocol
50

65
IPSec (2)
● Modes de fonctionnement.
● Transport :
– Seul le contenu est chiffré ou authentifié. L'en-tête reste
intact (routage inchangé). Ne supporte pas le NAT. Hôte
à hôte.
● Tunnel :
– le paquet entier est chiffré ou authentifié et est
encapsulé dans un nouveau paquet IP avec un nouvel
en-tête. Peut supporter NAT (si UDP). Utilisé pour les
VPNs.

66
SSL (1)

● Utilisé fréquemment pour le Web sécurisé


(https : 443/TCP)
● Utilisé également pour SSH
● Utilisé aussi pour certains VPN
● OpenVPN par exemple
● VPN sans client : on initie la session avec le
fureteur (browser) et un programme est téléchargé
(applet Java par exemple).

67
SSL (2)

● Plus simple que IPSec


● Pas de problèmes pour le NAT

68
Configuration sécuritaire
● Sécurité par couches
● Risques spécifiques aux réseaux
– CIA : Confidentiality, Integrity, Availability
● Analyse au niveau des couches réseaux
– TCP/IP ne concerne pas les infrastructures de réseaux LAN ou autres
(Ethernet, Wi-Fi, etc.)
– Spécification à partir de l’architecture OSI
– Architecture hybride TCP/IP-OSI
● Protocoles OSI : couches basses
● TCP/IP : couches supérieures
● Toutefois, PPP (couche 2) développé par l’IETF

69
Configuration sécuritaire
● Architecture hybride
TCP/IP Hybride OSI
Applications Applications Applications
Présentation
Session
Transport Transport Transport
Internet Internet Réseau
Protocoles propres au Liaison de données Liaison de données
réseau sous-jacent
Physique Physique

70
Configuration sécuritaire
● Couches 1 et 2
● Possibilité d’interception
● Méthode : physique
● Attaques subséquentes
– Modifications des données (perte d’intégrité)
– Man-in-the-middle

71
Configuration sécuritaire
Eve-in-the-middle

Bob (fictif) Alice (fictive)

Alice croit faire des


échanges avec Bob
Bob croit faire des
échanges avec Alice

Alice (réelle) Bob (réel)

72
Configuration sécuritaire
● Couche 1 : physique
● Moyens de transmission (ordre de facilité d’interception)
– Câble (cuivre)
– Micro-ondes (réseaux sans fil)
– Satellites
– Fibre optique
● Protection : chiffrement
– Ex.: Le protocole WEP (Wired Equivalent Privacy) chiffre les trames
802.11
– Complet ou juste au niveau physique ?

73
Configuration sécuritaire
● Couche 2 : Liaison des données
● Ethernet (LAN)
– Configuration en bus : câble coaxial (10 base 2, 10 base 5), hub actif
(10 base T)
– Configuration en étoile
● Réseaux sans fil
– Ethernet 802.11 (b, g et i)
– Propagation pluridirectionnelle
– War Driving
● Problèmes :
– Composantes pré-adressées
– Identification (qui est qui ?)
74
Configuration sécuritaire
● Couche 3 : réseau (Internet)
● IP
● Couche 4 : Transport
● TCP, UDP, ICMP

75
Configuration sécuritaire
● Bastionnage de réseaux
● Bloquer le trafic non pertinent
– Paquets qui ne vont pas au bon endroit (table de routage)
– Applications et services non offerts (ports ouverts ou fermés)
● Segmentation
– Utilisation de routeurs/passerelles/serveurs proxy pour
● Cacher les adresses internes (NAT)
● Protéger les services et serveurs critiques
● Défense en profondeur
– Principe de l’oignon
– On gère un contexte différent pour chaque niveau

76
Configuration sécuritaire
● Réseaux privés virtuels (VPN)
● Connexion de plusieurs sous-réseaux de façon sécuritaire via un réseau
intermédiaire non sécurisé
● Techniques
– Tunneling :
● permettre aux données passant d'une extrémité du VPN à l'autre d'être
sécurisées (chiffrement, etc.)
● Encapsulation des paquets : l’ancien paquet devient le message ; nouvelle en-
tête en fonction des passerelles.
– Chiffrement :
● le message est chiffré pour éviter l’interception ou la modification sur le réseau
intermédiaire
– Contrôle d’accès :
● Seuls les paquets provenant des clients ou sous-réseaux autorisés sont
réacheminés vers le réseau interne
77
Configuration sécuritaire

78
Configuration sécuritaire
● Zone démilitarisée (DMZ) (1)
● Pouvoir fournir des services de ou vers l’extérieur du réseau
interne, tout en le protégeant
● Comment ?
– Création d’une zone intermédiaire pour les services concernés
– Adresses des serveurs DMZ sont routables et accessibles
● de l’extérieur : en tout temps
● de l’intérieur : si pertinent

– Protection par un coupe-feu (isolation par rapport au réseau interne)

79
Configuration sécuritaire

80
Configuration sécuritaire
● Zone démilitarisée (DMZ) (2)
● Services fournis à l’extérieur
– Serveur DNS externe (adresses DMZ uniquement)
– Serveur SMTP
– Serveur Web
– Passerelle VPN
● Services fournis à l’intérieur
– Serveur proxy Web
– Mise à jour Serveur Web
– Serveur SMTP
– Connexion Serveur Web et Serveur de BD

81
Chiffrement des disques
● Système d'exploitation + données
● Réduit les risques en cas d'accès physique aux
ordinateurs
● Intégrité du système d'exploitation
● Confidentialité des données en cas de vol du
matériel
● Pas de fuite de données lors des remplacements de
disques défectueux
82
Chiffrement des backups
● Les données sont protégées, même lorsqu'elles sont
hors site.
● Nécessite un processus adapté pour sauvegarder les
clés de chiffrement des sauvegardes (en cas de
désastre)

83
Active Directory

● Fournit des services centralisés d'annuaire et


d'authentification à un réseau
● technologie Windows propriétaire
● répertorie :
– les comptes utilisateurs
– les groupes d'utilisateurs
– les machines du domaine
– les imprimantes
– les dossiers partagés
– ... 84
Active Directory

● Utilise les protocoles suivants :


● LDAP Lightweight Directory Access Protocol, le
protocole standard d'annuaire
● Kerberos, pour l'authentification
● DNS, pour la résolution de noms (incluant des champs
spéciaux pour trouver les contrôleurs)
● Il est donc possible d'utiliser certains services AD
pour des systèmes non-Windows
● plusieurs solutions commerciales
85
● Samba
Active Directory

● Supporte les « Group Policies »


– Ensemble de règles qui contrôlent de nombreux paramètres
relatifs aux :
● configuration des stations de travail du domaine
● paramètres système des utilisateurs (ce que les utilisateurs peuvent ou
ne peuvent pas faire)
● gestion centralisée
● ne s'applique qu'aux systèmes Windows

86
Active Directory

● Exemples d'utilisation des « Group Policies »


– assigner des imprimantes aux utilisateurs en fonction de leur
groupe ou de leur site
– forcer l'économiseur d'écran avec mot de passe après une
certaine période d'inactivité
– forcer le firewall local Windows
– configurer le bureau des utilisateurs
– scripts de démarrage/extinction, de login/logoff

87
Active Directory

● Création d'un domaine


● Tout commence sur un serveur Windows
– on le promeut contrôleur de domaine (dcpromo)
– on crée le domaine
● nom du domaine
● mot de passe administrateur du domaine
● On ajoute ensuite des machines sur le domaine

88
Active Directory

● Redondance
● le service AD est critique
● réplication du service entre plusieurs serveurs
● Sauvegarde
● System State avec outil de backup MS
● Bénéfices
● gestion centralisée des postes de travail
● gestion centralisée des comptes utilisateur
89
Politique de sécurité
● Définit les règles à suivre pour accéder au réseau
informatique
● Doit être approuvée par la direction
● Doit être diffusée à l'ensemble des utilisateurs
● Doit être mise à jour régulièrement
● Doit être suivie

90
Politique de sécurité
● Peut définir:
● la façon dont sont données les autorisations
● les critères techniques pour accéder au réseau
● ce que l'on a le droit de faire ou pas

91
Politique de sécurité
● exemples:
● interdiction d'utiliser un ordinateur personnel sur le
réseau
● interdiction d'accéder au réseau de l'extérieur
● seules les machines gérées par l'organisation peuvent se
connecter au VPN
● interdiction d'utiliser la messagerie pour des motifs non
reliés au travail
● obligation de garder son mot de passe secret
● durée de validité d'un mot de passe 92
Politique de sécurité
● exemples (suite) :
● obligation d'avoir un antivirus à jour
● interdiction de stocker des fichiers personnels sur les
serveurs
● les systèmes sont surveillés

93
Propriétaire des données
● Doit être formellement identifié
● Autorise les accès (lecture seule, modifications)
● Doit réviser régulièrement les listes d'accès
● Doit signaler les annulations d'accès.

94
Gestion des systèmes d'information

95
Mises à jour (1)

● Importance des mises à jour (patches)


● Corrige des vulnérabilités
● Peut corriger des problèmes
● Peut aussi apporter de nouveaux problèmes
● Sources d'informations:
● Microsoft
● RedHat
● SANS Internet Storm Center
● Vendeurs de logiciels 96
Mises à jour (2)

● Mises à jour Microsoft


● 2e mardi de chaque mois
● Parfois des mises à jour hors cycle pour les patches
urgents
● La page de l'Internet Storm Center donne une
information claire sur la criticité des patches
● Mises à jour RedHat
● Régulièrement, des alertes sont envoyées par courriel
par le RHN RedHat Network.
97
Mises à jour (3)

● Quand appliquer les mises à jour ?


● Le plus tôt possible !
● Idéalement, on commence sur un système de test et on
continue sur les systèmes les moins critiques jusqu'aux
plus critiques
● Bien sûr, si un patche corrige une vulnérabilité d'un
serveur exposé, on la corrige avant les systèmes moins
critiques.

98
Mises à jour (4)
BIOS, Firmware et applications
● En dehors des correctifs de sécurité, il est souvent
recommandé d'installer l'avant-dernière version
(version n-1).
● Sauf si la dernière version corrige des problèmes qui
nous affectent ou active une fonctionnalité dont on a
besoin.
● Permet des laisser les autres trouver les bogues de la
dernière version. On l'installera si aucun bogue majeur
n'a été rapporté.

99
Intervention sur les systèmes (1)
Philosophie
● Toute intervention sur un système en production
devrait suivre la philosophie de la page suivante
● Le but est d'éviter d'avoir un système non
fonctionnel durant une période de temps non prévue

100
Intervention sur les systèmes (2)

● System Administration Philosophy


● Plan it before you do it
● Make it reversible
● Make changes incrementally
● Test Test Test before you do it
● Know how things really work

101
Intervention sur les systèmes (3)
Communications
● Prévenir la communauté d'usagers en avance (au
moins 24 h si possible)
● Généralement par courriel
● Même pour les interventions où une interruption de
service n'est pas forcément prévue
● Il vaut mieux annoncer une interruption de service qui
n'arrive pas plutôt que d'avoir des utilisateurs qui
subissent une interruption non prévue.

102
Intervention sur les systèmes (4)
Communications
● Préciser la date et la durée de l'intervention
● Préciser les applications touchées
● Pour l'utilisateur, le nom de l'application est souvent
plus parlant que le nom du serveur
● Préciser comment l'application est affectée
● Donner des consignes
● Par exemple se déconnecter avant telle heure pour ne
pas perdre le travail en cours.

103
Intervention sur les systèmes (5)

● Préciser aux destinataires qu'ils peuvent contacter


le service s'ils ont un doute ou veulent plus
d'informations

104
Fenêtre de maintenance
● Horaire prévu pour les maintenances sur un système.
● Récurrent
● Idéalement pré-approuvé par le propriétaire du
système.
● Par ex.: tous les mercredis de 18h à 21h
● Il faut négocier une fenêtre de maintenance pour
chaque système.

105
Fenêtre de maintenance
● Sauf urgence (par ex. patches de sécurité), les
interventions sur les systèmes devraient se dérouler
pendant la fenêtre de maintenance.

106
Aspects légaux
● Mise en garde : je ne suis pas avocat, je n'ai pas la
prétention de l'être, je ne connais pas le droit au
Cameroun. En cas de doute, consultez un avocat ou
une personne connaissant les lois.
● L'activité d'administrateur de système peut nous
amener dans des situations délicates sur le plan
juridique et il faut s'y préparer.

107
Aspects légaux
● Que faire si quelqu'un nous demande d'espionner
l'activité informatique d'un utilisateur ?
● S'assurer d'avoir une demande écrite
● Que la demande provienne d'une personne habilitée à
faire ces demandes (généralement le directeur des RH).
● Pourquoi ?

108
Aspects légaux
● Que faire si nous recevons du trafic malveillant
d'une certaine adresse IP ?
● Répliquer ? (non)
● Impliquer les forces de l'ordre ?
– Oui et non
● Comment communiquer, quelles informations diffuser ?
● Pourquoi ?

109
Aspects légaux

● Implication des forces de l'ordre ?


● Oui si cela touche la sécurité nationale
● Oui si elles ont des officiers qui :
– Ont les compétences pour nous aider
– Sont intéressés à nous aider
● Non si l'on ne veut pas prendre le risque que des
ordinateurs soient saisis comme preuve
● Non si l'on ne veut pas publiciser l'attaque
● C'est une question qui doit être soumise au service
juridique. 110
Aspects légaux

● Que faire si l'on découvre du contenu illégal


(terrorisme, pédophilie) sur un système ?
● Ne pas toucher le système et contacter les forces de
l'ordre ou le service juridique de l'entreprise qui
contactera les forces de l'ordre
● Ne pas le faire peut nous rendre complices
● Se préparer à voir le matériel saisi (embêtant si c'est le
serveur de fichiers)
● Poser la question au service juridique avant d'être
face au problème. 111
Aspects légaux :
Politique d'utilisation des systèmes
● Avec le service juridique, établir une politique
d'utilisation des systèmes que les utilisateurs
doivent signer
● Elle devrait contenir les éléments suivants:
● L'accès aux systèmes est restreint aux activités
autorisées de la compagnie
● Toute tentative d'accès non autorisé est interdite
● L'utilisation des systèmes peut être surveillée et
enregistrée
112
Installation d'un système d'exploitation
● Lorsque l'on installe un système à partir des CDs
d'installation, il est vulnérable
● Durée moyenne de survie d'un système Windows non
patché sur Internet : 30 secondes
● Ne jamais, jamais installer un système sur un réseau non
protégé
– moi je le connecte tout seul derrière un petit routeur configuré
en NAT, sans réseau sans-fil
● Installer tous les patches immédiatement

113
Installation d'un système d'exploitation
● Ensuite renforcer sa sécurité
● supprimer tous les programmes inutiles
● fermer les ports
● configurer le firewall
● installer les anti-virus au besoin
● appliquer les benchmarks
– http://cisecurity.org

114
Sauvegardes (backups)
● Certainement la tâche la plus importante lorsque
l'on administre des systèmes
● C'est un peu notre « assurance vie »
● Une bonne sauvegarde est une sauvegarde vérifiée
● Combien d'entreprises pensaient avoir une bonne
sauvegarde jusqu'au jour où elles en ont eu besoin ?

115
Sauvegardes (backups)
● Système de sauvegarde typique :
● un serveur de sauvegarde
● sur lequel est connectée une librairie de cartouches
(tapes – bandes magnétiques)
● un logiciel client tourne sur les systèmes qui ont des
données à sauvegarder
● lorsque le serveur le décide (généralement la nuit), le
client envoie les données par le réseau au serveur de
sauvegarde qui les écrit sur les cartouches.
116
Sauvegardes (backups)
● Choisir ce que l'on sauvegarde
● plus il y a de données à sauvegarder, plus cela nécessite :
– de temps (fenêtre de sauvegarde augmentée)
– de bande passante
– de cartouches
● on ne peut donc pas tout sauvegarder
– surtout pas l'ensemble des stations de travail

117
Sauvegardes (backups)
● Choisir ce que l'on sauvegarde (suite)
● il faut absolument sauvegarder :
– les données de production
● attention aux bases de données
– les données de configuration
● /etc
● sauvegarde système sous Windows
– les logs
– les fichiers utilisateurs

118
Sauvegardes (backups)
● Choisir ce que l'on sauvegarde (suite)
● on peut sauvegarder :
– les logiciels installés (surtout si l'on n'a pas les supports
d'installation originaux pour réinstaller)

119
Sauvegardes (backups)
● Vérifier ses sauvegardes
● lire les logs de sauvegarde tous les matins
– permet de détecter également d'autres problèmes
● restaurer régulièrement des fichiers au hasard
– attention de les restaurer à un endroit différent du fichier
original
– comparer avec la version en ligne (taille, droits, propriétaire,
contenu (md5sum))

120
Sauvegardes (backups)
● Vérifier ses sauvegardes (suite)
● restaurer un système au complet
– permet de vérifier que tout est sauvegardé et de s'entraîner pour
le jour où l'on en aura besoin
– 2 philosophies :
● restaurer le système complet à partir de la sauvegarde
● installer d'abord un système de base, puis restaurer la configuration et
les données

121
Sauvegardes (backups)
● Ne pas oublier de sauvegarder le serveur de
sauvegardes !
● clés de chiffrement
● base de donnée des sauvegardes précédentes

122
Sauvegardes (backups)
● Durée de rétention des copies
● on ne peut pas garder les sauvegardes indéfiniment
● elles doivent donc expirer
● exemple de stratégie de rotation grand père, père et fils
– Complète mensuelle (rétention 1 an)
– Complète hebdomadaire (vendredi ou samedi, rétention 4
semaines
– Incrémentale journalière (rétention 4 semaines)

123
Sauvegardes (backups)
● stockage des copies hors-site
● si la salle des serveurs prend feu et que toutes les
sauvegardes y sont, elles ne servent à rien
● il faut donc les stocker hors site régulièrement
– sans toutefois nous empêcher de faire des restauration
rapidement :
● soit stocker une copie de la sauvegarde
● soit la sauvegarde de la semaine passée

124
Sauvegardes (backups)
● fréquence des sauvegardes
● dépend de la fenêtre de temps pour laquelle on accepte de
perdre des données en cas de catastrophe
● dépend aussi de la capacité du système de sauvegarde à
sauvegarder ces données.
● horaire des sauvegardes
● généralement pendant les heures où le système est le
moins utilisé car la sauvegarde peu ralentir le système

125
Sauvegardes (backups)
● autres types de sauvegardes
● copie d'un snapshot (SAN/NAS et systèmes de fichiers
qui le supporte (ZFS))
● dump de base de donnée
● sauvegarde Active Directory

126
Journaux d'événements - logs
● Il est important de lire régulièrement les logs des
systèmes
● détection de problèmes
– système
– sécurité
● synchronisation des serveurs pour corrélation
● aussi comme preuve
● serveur de log pour rassembler tous les logs à un
même endroit
127
Éducation des utilisateurs
● Encourager les utilisateurs à vous contacter s'ils ont
des doutes
● cela évitera peut-être qu'ils cliquent sur OK sans lire le
message
● ou qu'ils envoient leur mot de passe parce qu'ils ont reçu
un courriel qui leur disait que leur compte allait être
fermé

128
Éducation des utilisateurs
● Ne jamais demander le mot de passe d'un utilisateur
● On n'en a pas besoin, on a les droits administrateur!
● Si l'on doit se loguer comme cet utilisateur pour corriger
un problème avec son profil, on modifie son mot de
passe, et par la suite on l'oblige à le rechanger
● Imputabilité
● Leur dire que leur mot de passe est personnel, et qu'ils ne
doivent le révéler à personne, même pas vous!

129
Support lié au courriel
● Gérer un serveur de courriel peut générer beaucoup
d'appels de support
● Il faut savoir que le protocole d'envoi de message n'a
pas de mécanismes de fiabilité (équivalent à envoyer
une carte postale)
● cependant les pertes de courriel en cours d'envoi sont
rares
● la plupart des pertes de courriel sont dues aux filtres
antispam

130
Support lié au courriel
● Archivage
● Apprendre aux utilisateurs à archiver leurs messages
régulièrement
● Quotas
● Afin de limiter les abus, il faut mettre des quotas, c'est-à-
dire des limites sur l'espace disque qu'un utilisateur peut
utiliser sur le serveur de courriel

131
Communications
● Les garder simples et claires
● Utilisation d'un système de ticket
● pour ne rien oublier
● pour prioriser
● pour garder l'historique
● pour les statistiques
● pour facturer ?

132
Attaques sur les systèmes,
Comment se défendre ?

133
Attaques sur les systèmes
informatiques
● Nous allons passer les prochaines heures à analyser
différents types d'attaques et voir ce que l'on peut
faire pour s'en protéger.
● Il est plus facile de se défendre quand on sait
contre quoi on lutte.
● La liste n'est pas exhaustive.

134
Attaques sur les systèmes
informatiques
● Si vous voulez expérimenter certaines techniques
ou outils, ne le faites pas sur un système en
production et obtenez toujours l'accord du
propriétaire.
● Des administrateurs système ont déjà été condamnés
pour avoir utilisé un craqueur de mots de passe sur les
serveurs qu'ils géraient.
● Il y en a d'autres qui ont provoqués des pannes en
« essayant » un outil sur le réseau de leur ancienne
entreprise.
135
Attaques sur les systèmes
informatiques
● L'information donnée ici ne doit pas être utilisée à
des fins malveillantes.
● La mention d'un outil ne veut pas dire que je le
recommande ou qu'il est recommandable.
● L'utilisation de ces outils est peut-être illégale chez
vous, vérifiez-le.

136
Déroulement d'une attaque

● Une attaque comprend généralement les phases


suivantes :
● Reconnaissance
● Scan
● Attaque
– Obtenir un accès, élever ses privilèges, déni de service,
attaque sur une application
● Maintenir son accès
● Couvrir les traces
137
Reconnaissance

● Étape importante pour préparer une attaque ciblée


● Il s'agit de rassembler l'information disponible
concernant la cible
● Outils:
● Whois
● Requêtes DNS
● Google
● Site Web de la cible
● Ingénierie sociale 138
Reconnaissance avec Google (1)
● Directive « site: » ne cherche que sur le domaine
considéré
● Directive « link: » liste tous les sites qui ont un lien
vers le site
● Directives « intitle: » et « inurl: »
● Signe moins « - » pour exclure les pages qui
contiennent le mot donné
● Directive « cache: » pour obtenir la page en cache
(pratique pour lire les pages récemment effacées) 139
Reconnaissance avec Google (2)
● Directive « filetype: »
● Par exemple chercher les fichiers excel sur le site web
de l'organisation ou en rapport avec l'organisation
● GHDB : Google Hacking DataBase

140
Reconnaissance

● Informations utiles :
● Offres d'emploi (type de systèmes utilisés, savoir qu'il
manque des administrateurs système)
● Nom et contact des responsables
● Questions d'employés sur des forums
● Communiqués de presse
● Partenaires
● Réseaux sociaux

141
Reconnaissance

● Défenses :
● Limiter et contrôler les informations publiques
– Responsabilité partagée avec la direction, les relations
publiques, les ressources humaines.
● Faire des recherches sur l'organisation pour voir les
infos qui filtrent
– Analyser les liens entrants sur notre site Web (avoir un site de
hacking qui a un lien sur notre site Web n'est jamais une
bonne nouvelle)

142
Reconnaissance

● Défenses (suite) :
● Contrôler la façon dont Google et les autres moteurs de
recherche indexent notre site Web
– Robots.txt
– Meta tags NOINDEX, NOFOLLOW

143
Scan - Balayage
● Cette étape est un peu plus intrusive, puisque l'on
envoie des stimuli sur le réseau dans le but d'obtenir
une réponse qui nous donnera de l'information
● Donne une liste des points d'entrée potentiels
● Donne une idée de la structure du réseau et de son
niveau de protection

144
Scan - War dialing
● Appeler des numéros de téléphone pour trouver des
MODEMs
● Vieille technique, d'avant Internet
● Toujours d'actualité
● Défense :
● Interdire ou contrôler l'usage de MODEMs
– Les allumer à la demande
– Authentification forte
● Attention aux imprimantes multifonction réseau-fax !
145
Scan – Réseaux sans fil
● War driving
● Consiste à recenser et essayer de joindre les
réseaux sans-fil afin d'entrer dans le réseau et
contourner le firewall
● Beaucoup de réseaux sans fil ne sont pas sécurisés
(non chiffrés) ou utilisent WEP (des outils comme
aircrack-ng peuvent trouver la clé en quelques
minutes)

146
Scan – Réseaux sans fil
● Fausses bonnes idées pour protéger le réseau sans
fil :
● No SSID broadcast
● Filtrage par adresse MAC

147
Scan – Réseaux sans fil
● Défenses :
● Choisir un SSID neutre
● Au moins WPA avec une clé longue et difficile à
deviner
● VPN
● Se promener régulièrement dans les locaux à la
recherche de points d'accès non autorisés
– Un routeur sans-fil ne coûte que quelques dizaines de dollars.

148
Scan - traceroute
● Envoie des paquets IP (généralement ICMP ping
ou UDP) en jouant sur le champ TTL
● Time To Live
● le routeur ou l'hôte qui reçoit un paquet avec
TTL=1 va jeter le paquet et envoyer un message
ICMP TTL-exceeded à la source
● En incrémentant la valeur de TTL, on peut obtenir
la liste des routeurs qui nous séparent de la cible.

149
Scan - traceroute
● En faisant des traceroutes sur les adresses de
l'organisation, on obtient une bonne image de la
structure du réseau
● Défense
● Bloquer les messages sortants du type ICMP TTL
exceeded in Transit
– Ne pas l'oublier lorsque l'on voudra diagnostiquer des
problèmes réseau !!
● Bloquer les pings entrant ?
● Bloquer les paquets avec un TTL faible ? 150
Scan - Portscan
● Savoir quels ports sont ouverts sur un système
● Consiste généralement à envoyer un paquet en direction
de chaque port (TCP et UDP)
– Il y a 65536 ports possibles (32 bits)
– X 2 : ça fait pas mal de paquets !
● On peut aussi se contenter des ports connus
– 80/TCP = http
– 443/TCP = https
– 53/UDP et 53/TCP = DNS
– 25/TCP = SMTP; 110/TCP = POP3
151
Scan - Portscan
● Pour UDP : absence de réponse =
● Port ouvert
● Ou port bloqué par un firewall
● Le portscan est une étape quasi-obligatoire pour les
attaques système : il permet de savoir quelles sont
les portes ouvertes sur les systèmes

152
Scan - Portscan
● Outil le plus connu : nmap
● Beaucoup d'options
– -P0 pour scanner même si pas de réponse au « ping »
– Connexion TCP complète
– Scan SYN
– Scan ACK (= ping à travers FW)
– FTP proxy
– ...

153
Scan - Portscan
● OS fingerprinting
● Détecter le système d'exploitation d'une machine
distante
● Active OS fingerprinting : on envoie des paquets avec
des champs qui ont des valeurs non prévues par les
normes.
● Les RFCs ne définissent pas le comportement de la pile
TCP/IP pour des situations non standards (par exemple
paquet SYN-FIN), la réponse dépend donc de
l'implémentation (choix des programmeurs)
154
Scan - Portscan
● Connaître le système d'exploitation permet de
choisir les attaques
● Il arrive de voir des exploits spécifiques à un type
système utilisés sur un autre, preuve que cette étape
n'est pas toujours suivie.

155
Scan - Portscan
● Défenses
● Fermer les ports inutiles
● Bloquer les protocoles non utilisés
● Utiliser un firewall stateful

156
Fermer les ports ouverts sous Linux
● Commandes pour lister les ports ouverts
localement :
● netstat -anp
– netstat -an sur les autres Unix
– -a all tous les ports
– -n numeric (n'essaie pas de résoudre les adresses et les ports)
– -p list PID (seulement root)
● lsof -i et lsof -p [pid]

157
Fermer les ports ouverts sous Linux
● Désactiver les services associés aux ports :
● kill (attention aux process que l'on tue, n'empêchera
pas le service de redémarrer au prochain reboot)
● reconfigurer inetd ou xinetd
● désactiver les services dans /etc/rc.d
● Vérifier que les services ont bien été désactivés
● Il faut faire attention de ne pas désactiver des
services essentiels
158
Fermer les ports ouverts sous
Windows
● Commandes pour lister les ports ouverts
localement :
● netstat -an
● netstat -ano (à partir de XP) liste le PID
● netstat -anb (à partir de XP SP2) liste le EXE et les
DLLs

159
Fermer les ports ouverts sous
Windows
● Désactiver les services associés aux ports :
● Tuer les process avec taskmgr
● Désactiver les services avec services.msc
– stop
– puis configurer à « disabled »
● Vérifier que les services ont bien été désactivés
● Il faut faire attention à ne pas désactiver des
services essentiels
160
Scan - Fragmentation
● Fragmentation
● Fragmenter un paquet IP en plusieurs paquets
● Normalement pour permettre à un paquet de passer
dans un réseau dont le MTU (Maximum Transmission
Unit, 1500 octets pour Ethernet) est plus faible. C'est le
routeur qui va fragmenter le paquet
– Sauf si le bit DF (Don't Fragment) est activé
● Dans ce cas : message ICMP
● La fragmentation est très souvent utilisée pour des
motifs non légitimes
161
Scan - Fragmentation
● Petits fragments
● Le paquet qui arrive au firewall n'est pas complet (par
ex. en-tête TCP incomplet).
– il faut ré-assembler les paquet pour prendre la décision de
laisser passer le paquet ou non, rend la détection plus
difficile.
– Que fait un firewall stateless ?

162
Scan - Fragmentation
● Fragments qui se superposent
● La norme dit comment fragmenter les paquets
● Elle ne dit rien sur l'assemblage de fragments qui se
superposent.
– Est-ce qu'on garde le premier ou le dernier segment ?
● Est-ce que le destinataire va ré-assembler les paquets de
la même façon que le firewall ?

163
Scan - Fragmentation
● Défense
● Stateful firewall
● Firewall local
● IDS / IPS

164
Scan - Vulnérabilités
● Consiste à envoyer des paquets spécialement
conçus afin de vérifier
● si l'application qui écoute sur un port est vulnérable à
un exploit connu
● s'il y a un défaut de configuration
● la version des applications
● s'il y a des services à risque (telnet ou rsh par exemple)

165
Scan - Vulnérabilités
● Outils
● Nessus
– Le plus connu
– N'est plus sous licence libre
● OpenVAS
– Fork de Nessus
– GPL

166
Scan - Vulnérabilités
● Précautions à prendre
● Il y a des tests qui peuvent faire crasher des applications
● Les tests qui essaient de deviner les mots de passe
peuvent bloquer des utilisateurs légitimes
● Les outils ne scannent que les vulnérabilités qu'ils
connaissent

167
Scan - Vulnérabilités
● Défenses
● Bloquer les ports inutiles
● Maintenir les systèmes à jour
● Faire soi-même des scans de vulnérabilités et corriger
les vulnérabilités détectées.
● IDS / IPS

168
Scan - Vulnérabilités
● Précautions à prendre avant de scanner son propre
réseau
● Obtenir l'autorisation
● Commencer hors des heures de bureau
● Faire plusieurs scans à différentes heures
● Annoncer aux utilisateurs que des tests vont être
pratiqués et préciser les heures. Demander de rapporter
des anomalies
● Ne pas faire de scan lors des premiers créneaux
annoncés afin de voir les anomalies rapportées qui ne 169

sont pas liées.


Scan - Web
● Consiste à rechercher des vulnérabilités connues
sur un serveur Web, par ex. :
● des scripts qui ont des vulnérabilités connues
● des formulaires qui permettent l'injection SQL
● Outils
● Beaucoup d'outils, incluant
– nikto2
– OWASP

170
Scan - Web
● Défenses
● Faire tourner les dernières versions du serveur Web et
des applications
● Appliquer les patches
● Faire tourner le serveur avec des droits minimaux (pas
root)
● Tester soi-même son site Web et corriger les
vulnérabilités
● Sensibiliser les programmeurs
171
Attaques

172
Attaque – IP spoofing
● Usurpation d'adresse IP (IP address spoofing)
● Pour se faire passer pour une adresse autorisée à accéder
à la ressource
● Pour rester anonyme
● Facile parce que l'adresse source n'est presque
jamais vérifiée
● Le problème est de recevoir les réponses

173
Attaque – IP spoofing
● Techniques d'usurpation d'adresse IP
● le plus simple et de changer l'adresse IP de sa machine
– mais on ne recevra pas les réponses !
● sinon, il faut trouver un moyen d'être sur la route des
paquets de destination
– sniffer réseau local
– IP source routing

174
Attaque – IP spoofing
● Problème du RST
● Si A prend l'adresse de B pour ouvrir une connexion TCP
sur C :
– A envoie : B → C [SYN]
– C envoie : C → B [SYN-ACK]
– B reçoit un SYN-ACK qu'il n'a pas sollicité, il envoie un RST à
C qui ferme la tentative de connexion
● Ne peut fonctionner que si B est « neutralisé »

175
Attaque – IP spoofing
● IP source routing
● Option de l'en-tête IP
● Fait partie des spécifications du protocole IP
● Donne une liste de routeurs qu'un paquet doit traverser, à
l'aller comme au retour
● L'usurpateur n'a qu'à indiquer sa propre adresse dans la
liste des routeurs
– il ne transmet pas le paquet lorsqu'il le reçoit

176
Attaque – IP spoofing
● défense contre IP source routing
● Cette option est désuète
● Elle n'est utilisée que dans les cas malveillants
● On doit refuser les paquets IP qui ont des options. (taille
de l'en-tête > 20 octets)
● cisco : no ip option

177
Attaque – IP spoofing
● Défense contre l'usurpation d'adresse IP
● Il n'est pas toujours évident de détecter les usurpations
d'adresse source sur les paquets reçus de l'extérieur
● Par contre, on peut éviter que nos ordinateurs envoient
des paquets IP à l'extérieur avec des adresses sources
usurpées
– pour chaque paquet qui entre sur une de ses interfaces internes,
le firewall doit vérifier que l'adresse source appartient aux
adresses routées vers cette interface

178
Attaque – IP spoofing
● Défense, suite
● Ne pas utiliser l'adresse IP comme méthode
d'authentification

179
Attaque - Sniffers
● Analyseurs réseaux
● Écoutent et récupèrent le trafic reçu sur la carte réseau,
incluant le trafic qui n'est pas destiné à la machine
– pas de filtrage d'adresse MAC
– PROMISCUOUS mode
● Décodent plus ou moins bien les protocoles
● Il existe beaucoup d'outils, certains sont spécialisés pour
un protocole

180
Attaque - Sniffers
● Analyseurs réseaux
● Sont souvent utilisés sur une machine compromise pour
accéder à d'autres machines.
● Ce sont également d'excellents outils pour
l'administrateur réseau
● Exemples : tcpdump/windump, Wireshark, dsniff
● Nécessitent généralement les droits administrateurs pour
tourner (attention !)

181
Attaque - Sniffers
● Analyseurs réseaux et Ethernet switché
● Différence hub – switche
● Révision protocole ARP (Address Resolution Protocol) ?
● techniques :
– arp cache poisoning
– arp spoof
– arp flooding

182
Attaque - Sniffers
● Utilisation des analyseurs réseaux
● récupérer les mots de passe qui circulent en clair :
– telnet, pop, imap, web http
● accéder à de l'information confidentielle
● espionnage
● avec DNS spoof, peut rediriger un visiteur sur un faux
site Web
– faire attention aux erreurs de certificats !

183
Attaque - Sniffers

● Défenses
● Bannir les protocoles qui font circuler les mots de passe
en clair
● Toujours porter une attention aux erreurs de certificats.
Éduquer les utilisateurs
● Activer « Dynamic ARP Inspection » sur les switches
● ARP statique
● Utilisation de VPN sur le réseau local
● IDS
184
Attaque – buffer overflow

● Débordement de tampon
● Profiter de programmes qui traitent des chaînes de
caractères sans en vérifier la taille (fonctions
strcpy, gets...)
● La variable est copiée sur la pile et peut écraser le
pointeur de retour de fonction.
● Si l'on fait attention à la chaîne de caractères
envoyée, on peut faire exécuter le code que l'on
veut (avec les privilèges du programme
185
vulnérable).
Attaque – buffer overflow

● Cela fait 15 ans que le problème est connu mais on


trouve encore plein d'applications vulnérables.
● Des outils comme metasploit (ou karmetasploit)
contiennent une collection d'exploits que l'on peut
assembler facilement.
● Il n'y a même pas besoin de savoir programmer pour
créer son exploit

186
Attaque – buffer overflow
● Utilisation :
● Ouvrir une porte dérobée (back door)
● Ouvrir un shell
● Faire planter un service

187
Attaque – buffer overflow
● Défense
● Patcher les systèmes
● Sensibiliser les développeurs maison
● Pile non exécutable
● stack smashing protection

188
Attaque – mots de passe
● Deviner, voler ou craquer un mot de passe pour se
connecter à un compte
● Plusieurs techniques:
● essayer les mots de passes les uns après les autres
● craquer le mot de passe si l'on possède le hash
– Attaque par dictionnaire
– force brute
– hybride

189
Attaque – mots de passe
● Plusieurs outils
● John the ripper
● Cain (sniffeur intégré pour hashs windows)
● Défense :
● complexité des mots de passe
● pas de protocoles en clair
● protéger les hashs
● ne pas utiliser le même mot de passe partout

190
Attaque – Malware

● Vers (worms)
● Virus
● Trojans
● Bots
● Défenses :
● antivirus / anti malware
● patches
● firewall
191
● pas de système non contrôlé qui se connecte au réseau
Attaque – Déni de service
● DoS : Denial of Service
● DDoS : Distributed DOS
● attaques faciles à réaliser, il suffit d'épuiser les
ressources d'un système
● bande passante
● mémoire
● processeur
● ou envoyer un paquet qui fait planter
192
Attaque – Déni de service
● Protection
● Patches
● Bloquer au niveau du firewall

193
Maintien de l'accès
● Plusieurs types, du plus simple au plus complexe
● Backdoor applicatif
● rootkit dans le user level
● kernel-mode rootkit
● BIOS modifié

194
Maintien de l'accès
Backdoor applicatif
● Programme ajouté au système pour donner accès
sans passer par les mécanismes d'authentification en
place
● Peut avoir un nom qui semble légitime pour essayer
de se cacher
● exemples
● back orifice
● vnc
● netcat
195
Maintien de l'accès
les rootkits
● Un rootkit permet de :
● garder l'accès à un système
● masquer sa présence et cacher le fait que le système est
compromis
● Il fait cela en modifiant le système d'exploitation
● De plus en plus populaires
● Même Sony en distribuait sur ses CDs de musique
pour éviter la copie.
196
Maintien de l'accès
rootkit dans le user level
● Remplace plusieurs programmes système par des
versions modifiées
● /bin/login /bin/ls par exemple
● /bin/ls modifié permet de cacher des fichiers
– est-ce que « echo * » révèle d'autres fichiers ?
● /bin/ps modifié permet de cacher des processus
● On ne peut plus faire confiance au système

197
Maintien de l'accès
kernel-mode rootkit
● Modifie le noyau
● souvent par ajout d'un module
● Même plus besoin de modifier les programmes système
● On ne peut plus faire confiance au système

198
Maintien de l'accès
● Défense
● D'abord protéger les systèmes pour empêcher un accès
administrateur.
● Ne pas oublier les patches
● Détection :
– tripwire, aide (vérifier les systèmes de fichier hors-ligne
(liveCD)), OSSEC
– chkrootkit
– IDS / IPS

199
Couvrir les traces
● Plusieurs techniques
● Cacher des fichiers
● Éditer les logs
● Camoufler le trafic réseau

200
Couvrir les traces
Cacher des fichiers
● Linux (en l'absence de rootkit)
● noms de fichiers :
– …
– ..[espace]
– [espace]
● répertoires où les cacher :
– /dev
– /etc

201
Couvrir les traces
Cacher des fichiers
● Windows :
● Alternate Data Streams (ADS)
– Seulement sur NTFS
– « type a_cacher.exe > calc.exe:cachette »
– la commande dir ou windows explorer n'affichent pas les
ADS et la taille affichée est celle du fichier, sans les streams
– depuis vista et 2008 : dir /r

202
Couvrir les traces
Éditer les logs
● Linux
● La plupart des fichiers de log sont au format texte, donc
faciles à éditer
● Généralement dans /var/log
● wtmp (historique des logins), utmp (utilisateurs
présentement logués), lastlog (dernier login de chaque
utilisateur) sont stockés sous forme binaire
– mais il existe des utilitaires à télécharger pour les modifier

203
Couvrir les traces
Éditer les logs
● Historique de shell sous Linux
● commande « history »
● fichier ~/.bash_history
● Si on modifie le fichier .bash_history, la commande de
modification va se retrouver dans l'historique lorsque l'on
quittera le shell
● Cela peut éveiller les soupçons de l'administrateur
● solution : kill -9 [pid du shell] pour sortir

204
Couvrir les traces
Éditer les logs
● Windows
● Les fichiers de log sont sous forme binaire
● ils sont également bloqués en écriture sur un système en
fonction
● Avec des droits administrateur, on peut les effacer (avec
l'event viewer par exemple)
– risque de se faire remarquer
● On peut aussi générer beaucoup de logs sans graviter
pour remplir les journaux et effacer les entrées plus
anciennes
205
Couvrir les traces
Éditer les logs
● Windows, suite
● Il existe également des programmes pour éditer les logs
● Nécessitent souvent un redémarrage ou un accès
physique

206
Couvrir les traces
Éditer les logs
● Défenses
● Envoyer les logs vers un serveur séparé
● Envoyer les logs vers une imprimante
– pas très écolo, beaucoup de lecture en perspective...

207
Couvrir les traces
Camoufler le trafic réseau
● L'idée est d'encapsuler le trafic à camoufler dans du
trafic qui paraît légitime et qui n'éveillera pas la
suspicion
● par ex. IP over DNS
● Exemples:
● La machine infectée se connecte sur le port 80 d'un
serveur contrôlé par l'attaquant, les commandes sont
camouflées dans le code HTML.
● Utilisation du champ IP ID ou Sequence number du
paquet SYN 208
Couvrir les traces
Camoufler le trafic réseau
● Défenses
● D'abord empêcher les attaquants d'installer des logiciels
sur nos machines
● IDS

209
Systèmes de détection d’intrusion (IDS)
● Détecteur d’intrusion
● Système permettant de signaler une intrusion
– Tentative d’intrusion
● Possibilité de contrer l’attaque
– Détection d’intrusion
● Constat des dégâts, enquêtes, etc.
● Principe
– Observer : capteurs, fichiers d’audits applicatifs, fichiers de traces système,
paquets réseaux, etc.
– Analyser : identification d’indices d’attaques
● recherche de signes de reconnaissance : signature connue (succession de
paquets spécifiques, etc.)
● recherche d’anomalies : recherche d’un comportement suspect
– Agir : signal d’alarme, actions dynamiques (ex.: demander au coupe-feu de
fermer les « entrées » du réseau, etc.) 210
Systèmes de détection d’intrusion (IDS)
● Méthodes de base
● Le trafic est capturé à un ou plusieurs endroits sur le réseau
● Examen de chacun des paquets capturés
– En-tête IP (ICMP, TCP ou UDP)
– En-tête spécifiques au applications (e.g. HTTP, FTP)
– Message ("payload")
● Un mécanisme de détection est appliqué
● Des alarmes sont générées et enregistrer dans un journal

211
Systèmes de détection d’intrusion (IDS)

● Méthodes de détection par règles


● Traditionnelle "par règle"
– Examen de chacun des paquets capturés
● En-tête IP (ICMP, TCP ou UDP)
– Application de règles pour détection d'attaques
● Signatures d'attaques réseaux (e.g. "Land attack")
● Signatures de code malicieux (e.g. signature spécifique à un outil)
● Paradigme général
– « X évènements de type Y dans un temps T »

212
Systèmes de détection d’intrusion (IDS)

● Implémentation
● Network-based IDS (NIDS)
– Une machine ou dispositif dédié
– Placé où le plus de trafic peut être capturé
● En dehors du pare feu : exposition maximal, détection de menaces
externes
● À l'intérieur de la DMZ et/ou du LAN corporatif : détection de la
menace interne, « dernière ligne de défense »

213
Systèmes de détection d’intrusion (IDS)

● Implémentation
● Host-based IDS (HIDS)
– Logiciel ajouté sur un serveur ou un client
– Souvent intégré avec un antivirus
– Avantages
● Configuration des règles plus précises, étant donné que le contexte est
connu
– Applications qui roulent
– État de la pile TCP/IP

214
Systèmes de détection d’intrusion (IDS)
● Difficultés : rapport signal vs. bruit
● Trouver un compromis entre le taux de faux positif et celui
d’évasion
● Quelle est la nature de la menace ?
– Haut niveau de bruit
● Incapacité d’évaluation de la menace
– « Trouver l’aiguille dans la botte de foin ! »
● Vie privée
– Anonymat des clients ou utilisateurs légitimes
– Interception du trafic d’autrui

215
Systèmes de détection d’intrusion (IDS)

● Difficultés (suite)
● Comment contrôler à distance et distribuer les données
d'alarmes tout en :
– Évitant de surcharger le réseau
– Assurant la confidentialité
– Évitant la détection des IDS
– Ne créant pas de "trous" de sécurité (contournement des pare-feu)
– etc.

216
Systèmes de détection d’intrusion (IDS)
● Nouvelles approches ?
● Intrusion Prevention Systems (IPS)
– Associe des actions de protection aux alarmes
– Actions typiques : bloquer un port, bloquer une machine ou un sous
réseau, rejeter des paquets
● Network Appliances
– Intégration de coupe-feu, IDS, IPS, anti-virus
– Matériel spécialisé pour faire des analyses en hauts débits (ex.:
FPGA)
– Reconstruction de l’état des sessions (TCP)

217
Gestion d'incident

218
Gestion d'incident

● But :
● Initiation à la gestion d'incidents
● Amener à se poser certaines questions

219
Gestion d'incident

● Incident Handling
● Procédures en cas d'incident
● Infection de code malveillant
● Cyber vol
● Déni de service
● …
● Un incident finira par se produire.

220
Gestion d'incident
● Qu'est-ce qu'un incident ?
● Un événement ayant un effet négatif sur un système ou
un réseau
● Exemples :
● Qu'est-ce qu'un événement ?
● Quelque chose d'observable sur un système ou un réseau
● Exemples :

221
Gestion d'incident
● Un événement n'est pas forcément signe d'un
incident

222
Gestion d'incident
● Processus en 6 étapes
● Préparation
● Identification
● Confinement
● Éradication
● Récupération
● Bilan

223
Gestion d'incident

● Étape Préparation
● Se préparer à gérer un incident
● Faire une liste de personnes à appeler
● Faire une liste des systèmes et de leur niveau de
criticité; la maintenir à jour
● Demander des préautorisations
– peut-on couper l'accès Internet sans l'accord du directeur ?
– peut-on ajouter des règles au firewall sans les faire valider par
un comité ?

224
Gestion d'incident
● Étape Préparation (suite)
● Rédiger des politiques de sécurité et les faire appliquer
● S'assurer que la documentation des systèmes est
pertinente
● S'assurer que toutes les données sont sauvegardées
● S'assurer que l'on peut réinstaller les systèmes (matériel,
logiciels, configurations et données)
● Renforcer la sécurité

225
Gestion d'incident

● Étape Identification
● Être capable de savoir « s'il se passe quelque chose »
– logs, plaintes d'utilisateurs, analyse de trafic réseau,
comportement de systèmes.
● Communiquer l'information à certaines personnes (pas
à tout le monde)
● Communication en dehors du réseau
● Feuillets SANS http://www.sans.org/security-
resources/resources.php#cis
226
Gestion d'incident

● Étape Confinement (containment)


● On doit tout à la fois empêcher le problème de
s’aggraver tout en conservant des preuves
● Prendre des mesures comme :
– Déconnecter le câble réseau
– Couper le courant (ne pas éteindre « proprement »)
– Ajouter des règles au firewall
● Prendre une image du disque (dd)

227
Gestion d'incident

● Étape Éradication
● Remettre le système en état et retirer ce que l'intrus a
laissé, par exemple :
– Réinstaller le système
– Le repatcher
– Éventuellement faire les modifications pour ne pas se refaire
attaquer
– Récupérer les données du dernier backup

228
Gestion d'incident

● Étape Récupération (recovery)


● Revenir en production normale
– Le système doit être validé par son propriétaire avant d'être
remis en production
– Surveiller attentivement le système

229
Gestion d'incident
● Étape bilan
● Analyser ce qu'il s'est passé, avec le recul
● Changer des procédures pour éviter que cela ne
recommence
● Modifier la façon de répondre à un incident

230
Conclusions
● Security is a process, not a product

231