Vous êtes sur la page 1sur 18

Chapitre 1: Introduction

La sécurité d'un système est toujours définie en fonction de ce que l'on veut protéger et des
capacités de l'attaquant
Le but de la sécurité est d'assurer la confidentialité, l'intégrité, la disponibilité : CIA. On
ajoute souvent la conformité.

Confidentialité
C'est le fait d'empêcher les accès non autorisés à une information
Pour assurer la confidentialité on utilise:

le chiffrement

les contrôles d'accès (règles et politiques pour limiter l'accès aux informations
confidentielles)

l'authentification qui est généralement fait par la combinaison de:


quelqu'e chose qu'on a (par exemple une carte)
quelque chose qu'on connait (mot de passe par exemple)
quelque chose qu'on est (empreinte digitale par exemple)
on peut également authentifier à partir de code-barres, cartes magnétiques, smart
cards, cartes sim, puces RFID, biométrie

Concernant la biométrie, la zone du corps à scanner doit vérifier:


l'universalité: presque tout le monde doit avoir cette zone
distincitivité
permanence
collectable (on doit pouvoir déterminer cette zone)
Généralement on utilise pour cela les empreintes digitales, la reconnaissance d'iris,
l'ADN, la reconnaissance de voix....

Mais quelque soit la partie utilisée, les informations sont généralement transformées
en vecteur

l'autorisation qui détermine si quelqu'un peut accéder ou non à la ressource à partir


des règles de contrôle d'accès

la sécurité physique (cadenas, cage de Faraday...)

Intégrité
La propriété qu'a l'information non altérée de façon non autorisée.

Pour assurer l'intégrité, on utilise:


les backups
les checksum (somme de contrôle)
les codes de correction de données qui permettent de détecter et corriger les petits
changements sur les données

Disponibilité
La propriété qu'a l'information d'être accessible et modifiable par les personnes autorisées
lorsqu'ils le veulent.

Pour assurer la disponibilité on utilise:


les protections physiques
la redondance

Conformité
Ici on s'assure juste que la donnée est en conformité avec les lois et règlements.

Autres concepts de sécurité


D'autres concepts sont énumérés par A.A.A (Assurance-Authenticité-Anonymat)

Menaces (Threats) et attaques


eavesdropping: il s'agit de l'écoute de l'information destinée à quelqu'un d'autre
altération: il s'agit de la modification non autorisée d'une information
deni-de-service: l'interruption ou la dégradation d'un service de données ou d'un accès à
l'information.
masquerading: fabrication d'une information en faisant croire qu'elle provient d'une
personne qui n'est pas vraiment l'auteur
répudiation

Les 10 principes de sécurité


Mécanisme de l'économie (la méthode employée doit être simple)
Moindres privilèges
Séparation des privilèges
Open design (le mécanisme de sécurité doit être disponible publiquement)
...

Controles d'accès
les contrôles d'accès permettent de définir quels utilisateurs peuvent lire/écrire les fichiers.
Parmi les mécanismes de contrôle d'accès on peut citer:

La matrice de contrôle d'accès


Chaque ligne est associée à un sujet (utilisateur, groupe, système...)
Chaque colonne est associée à un objet (fichier, dossier...)
Chaque cellule donne les droits du sujet par rapport à l'objet
Liste de contrôle d'accès
Ici on définit pour chaque objet (fichier, dossier,...) la liste des sujets suivis des droits de ces
derniers

Capacités
Ici pour chaque sujet on définit la liste des objets qu'il peut manipuler

Liste de contrôle basé sur les rôles


Ici on définit les droits d'accès pour chaque rôle (directeur, gardien, enseignant...) et non sur
les sujets

Cryptosystème
Un cryptosystème est la donnée de:
l'ensemble des textes en clair possibles
l'ensemble des textes chiffrés possibles
l'ensemble des clés de chiffrement
l'ensemble des clés de déchiffrement
les correspondances entre ces clés
les algorithmes de chiffrement
les algorithmes de déchiffrement
Parmi les cryptosystèmes, on peut distinguer:

le chiffrement de Cesar: on fait roter les lettres


les cryptosystèmes symétriques: ici A et B se partagent une clé secrète au départ. Le
texte en clair est ensuite chiffré et déchiffré à l'aide de la clé.
la cryptographie à clé publique: ici A veut envoyer un message à B, ils disposent tous
les 2 d'une clé publique et B dispose en plus d'une clé privée. A chiffre le message avec
la clé publique et B le déchiffre avec la clé privée
Une somme de contrôle doit être:
one-way: c'est facile de calculer y=h(m) mais difficile de trouver m ayant y
resistant à la collision: il doit être difficile de trouver deux
Exemples: SHA-1, SHA-256
Généralement lorsqu'on travaille avec les clés publiques, il faut qu'on soit sûr d'elles. Les
certificate authority signent donc général des digital certificates.

Autres

Mots de passe
Un mot de passe est généralement stocké sous forme hachée.
Pour s'assurer qu'un mot de passe soit fort, il faut mélanger chiffres, lettres, caractères
spéciaux, en majuscule comme en minuscules, ne pas créer un mot de passe en rapport
avec soi ou une connaissance... Il faut aussi qu'il soit assez long

Ingénierie sociale
C'est une attaque utilisant les connaissances qu'on a d'un utilisateur pour extraire de
l'information. On la distingue sous plusieurs formes:

Pretexting: créer une histoire qui convainc un administrateur de revéler ses informations
secrètes
Baiting: offrir un cadeau à un utilisateur pour qu'il fasse une action non sécurisée
Quid pro quo: offrir une action ou un service et attendre quelque chose en retour.

Attaques directes sur les équipements


informatiques

Attaques
On distingue:

les attaques environnementales: délestage, hausse de température, catastrophe


naturelle...
eavesdropping
wiretapping (ecoute téléphonique): qui consiste à ajouter un câble sur lequel toute
information qui circule dans le réseau va aussi passer (ça ne modifie pas l'information)
signal emination: détecter ce qui est émis en fonction de l'émission du signal
acoustic emissions: détecter ce qui est tapé en fonction du son du clavier
hardware keylogger: qui consiste à brancher le clavé sur un keylogger avant de le brancher
à l'unité centrale dans le but,d'enregistrer toutes les phrases tapées au clavier.

Défenses
Pour empêcher la vue des émissions de lumière (signal), on peut fermer les fenêtres de la
salle
Pour empêcher l'écoute du son du clavier on peut mettre des amortisseurs de son dans la
salle
Pour empêcher les émissions électromagnétiques, on peut utiliser les cages de Faraday

Computer forensics
C'est l'exploitation de matériel informatique pour recueillir des informations (de façon
légale)
Mais les hackeurs peuvent également exploiter ça

Chapitre 2: Gestion des risques


Principes fondamentaux
Principe du point le plus faible: une personne qui cherche à pénétrer un site cherchera à
passer par le point le plus faible
Principe de la protection adéquate: le niveau et le coût de protection doivent être
proportionnels à l'importance de ce qu'on protège ainsi que sa valeur

Méthodologie de la sécurité informatique:

Risque

Définitions
Risque: C'est la prise en compte de l'exposition à un dangeur, un préjudice ou tout autre
évènement dommageable
Actif: Objet ayant de la valeur (y compris l'humain)
Menace: Entité physique ou morale qui met un actif à risque
Vulnérabilité: Faille qui donne l'opportunité de porter atteinte à un actif et donc de
concrétiser une menace
Impact: Perte ou dommage causé à un actif
Scénario de risque: exploitation d'une vulnérabilité par une menace pour causer un impact
Contre-mesure: protection d'un actif contre une menace

Généralités
Traitement du risque:

Réduire
Transférer
Accepter
Arrêter l'activité
Il y'a risque lorsqu'un scénario a la chance de se réaliser.
Pour cela il faut que les 2 conditions suivantes soient réunies: présence d'une
vulnérabilité et d'une menace.
Les menaces peuvent être accidentelles (hors de contrôles comme une incendie, acte
humain involontaire comme une erreur de frappe, performance imprévue du système)
comme elles peuvent être délibérées (vols de systèmes, intrusions, espionnage,
contrefaçon...)

La menace peut donc provenir :


des catastrophes naturelles
compagnies de marketings
hackers
états étrangers
ceux à qui on fait confiance

Analyse de risques
La formule du risque est R = P * I avec P: probabilité de survenue d'un incident, I l'impact de
l'incident sur l'actif
En analyse des risques, on détermine les différents scénarios de risque possible et pour
chacun d'eux on détermine la probabilité et l'impact qu'on met sur une échelle de 1 à 4
généralement (faible à très élevée).
Mais étant donné que la probabilité (P) est fonction de la capacité (C) de l'attaquant, de
l'opportunité (O) qu'il a et de sa motivation (M), généralement on considère que la
probabilité est une combinaison des 3 (produit, médiane, min, max, moyenne)
Le tableaux obtenu à la fin est :

Après avoir fait ce tableau, on peut ressortir l'échelle Log qui permet de déterminer les
priorités

Stratégie et politique de sécurité


Stratégie de sécurité
Stratégie de sécurité: la conception d'une conduite générale de protection, d'organisation
de la défense et d'élaboration des plans de réactions.

Elements d'une stratégie:

actifs de la compagnie
niveau de sensibilité et de criticité
personne ou objet dont on se protège
risques
niveau actuel de sécurité, niveau qu'on veut atteindre
moyens....

Politique de sécurité

Elle définit la responsabilité des intervenants dans l'entreprise ainsi que les différentes
règles et moyens d'intervention et d'opération
On y définit aussi la classification des actifs, les contrôles d'accès, les principes de protection
de données et de gestion des incidents...

Chapitre 3: Attaques et contre-mesures


Menaces
Plusieurs menaces visent les ordinateurs:

codes malicieux: virus, chevaux de Troie, vers, bombes logiques...


Hoax (rumeurs, canulars, désinformation)
spams
cyberwoozles (extraction de données d'un ordinateur pendant que l'utilisateur navigue sur
le web)
usurpation d'identité
perde de données
ingénierie sociale
violation de vie privée

Vulnérabilités
Elles sont nombreuses:

absence de politique de sécurité


Mauvaise gestion de mots de passe
Absence de séparation des pouvoirs et des tâches
Utilisation du profil administrateur pour les tâches normales
Installations anarchiques
Présence de cookies
Téléchargement d'applications non authentifiées

Piratage informatique
Le principe est simple:
on découvre les vulnérabilités
on exécute les exploits
le système est compromis
On exploite généralement les faiblesses au niveau des applications et des systèmes
d'exploitation.

Types d'attaque

Les types d'attaque sont:

Passive (soutirer de l'information sans la modifier)


Active (on altère l'information pendant l'attaque)

Etapes d'une attaque:

1. La reconnaissance: on rassemble l'information avec des outils comme whois, les requêtes
dns, google, sniffing du réseau, le site web de la cible, l'ingénierie sociale. La
reconnaissance peut être active ou passive

2. Le scanning: ici on scanne le réseau afin de détecter une liste des points d'entrée potentiels
et avoir une idée de la structure du réseau et de son niveau de protection. On peut pour
celà faire :

le war dialing (qui consiste à appeler les numéros jusqu'à ce qu'on réponde),

war driving (qui consiste à chercher à joindre tous les réseaux sans fils),

le traceroute (qui donne les informations sur les routeurs et consor),


le portscan (avec nmap) pour détecter les ports ouverts.

 
Pour se défendre de ces attaques, on peut décider de n'allumer nos Modems,
téléphones que lorsque c'est nécessaire et de bloquer explicitement les appels
traceroute et fermer les ports inutiles, maintenir le système à jour et utiliser un
IDS/IPS.

Pour évaluer ses vulnérabilités on peut utiliser Nessus ou OpenVAS.Pour protéger un


serveur web, on peut faire tourner les dernières versions du serveur web, faire tourner
le serveur avec les droits minimums, appliquer les patches

3. L'attaque: ici on exploite les vulnérabilités et on exploite. les exemples d'attaques sont:

ip spoofing (usurpation d'adresse ip):Pour se défendre de l'ip spoofing, on peut


supprimer tous les paquets qui ont une taille d'entête > 20 octets

buffer overflows: on augmente la taille des paquets à envoyer sur le buffer. Cela peut
causer un crash, le plantage de système... Pour pallier à ça il faut toujours vérifier la taille de
ce qu'on reçoit en entrée.
détournement de session:

déni de services (DoS) ou DDos: il s'agit ici d'épuiser les ressources d'un système
(mémoire...). Pour se protéger on peut utiliser des patchs et bloquer l'accès au niveau du
firewall.
sniffers(exemple wireshark, windump), : pour se défendre des sniffers, on peut utiliser
des VPN, des IDS, bannir les protocoles qui font circuler les mots de passe en clair.

deviner ou voler un mot de passe(attaque par dictionnaire, brute force, ...) avec des
outils comme John the ripper, Cain. Pour se défendre on peut complexifier les mots de
passe, ne pas utiliser les même mots de passe, protéger les hashs.
Maliciels: les vers, virus, trojans. Pour se défendre on utilise des antivirus, patches, firewall

4. Le maintien de l'accès: ici le pirate s'arrange pour que la voie reste libre lors de ses
prochaines visites. Pour cela, il installe des backdoors (porte dérobée: donne un accès
inconnu à notre système), les chavaux de Troie (trojans). Pour cela il peut insérer:
le backdoor applicatif: il ajoute un programme dans le système avec un nom légitime
et passe par là quand il veut revenir
le rootkit: il permet de garder l'accès à un système et de masquer sa présence et
cacher le fait que le système soit compromis. Pour se protéger il faut protéger les
systèmes pour empêcher les accès administrateur, ne pas oublier les patches, utiliser
des IDS/IPS.
5. L'effacement des traces: Ici le hacker efface les traces en cachant les fichiers, éditants les
logs, camouflant le trafic réseau. Pour se défendre on peut envoyer les logs en ligne, utiliser
des IDS.

Une méthode pour rendre l'attaque par dictionnaire difficile est le password salt. Ici on génère
un nombre aléatoirement et on le stocke en haché avec le mot de passe

Terminologie

code malicieux: tout code qui s'exécute avec un dessein malicieux


virus: terme générique pour code malicieux
cheval de Troie (trojan): virus inséré de façon cachée dans un programme non malicieux
payload: partie du code servant à accomplir les desseins de l'attaquant
vers informatique: virus se propageant rapidement par internet
bombe logique: virus qui exécute sa charge payante
backdoor: virus incorporant un mécanisme d'accès à distance pouvant être utilisé par
l'attaquant
exploit: entrée qui prend avantage d'une vulnérabilité pour attaquer.

Il est toujours nécessaire d'avoir des copies de sécurité de ses données

Chapitre 4: Sécurité des systèmes


d'exploitation
Concepts sur les systèmes d'exploitation
Un ordinateur est fait de périphériques I/O, d'un CPU, d'une RAM et d'un disque dur.
Le système d'exploitation sert d'interface entre l'utilisateur et le hardware.
Le kernel est la couche directement au dessus du hardware.
Les applications communiquent à travers les appels systèmes.
Un processus est une instance de programme en cours d'exécution. Il a un ID appelé PID
Un système de fichiers est une abstraction de comment la mémoire externe, la mémoire
non volatile de l'ordinateur est organisée.

Sécurité des systèmes d'exploitation


la première étape de chargement d'un OS c'est le booting ou bootstrapping. Lorsque
l'ordinateur est allumé, il exécute en premier le code stocké dans le Bios ensuite il charge le
second-stage boot loader.
La mise en veille (hibernation) peut créer une faille car l'attaquant peut copier le fichier
hiberfil.sys et avoir les informations sur le système.

Stockage sécurisé
Pour protéger ses données on peut les chiffrer avec un mot de passe
On peut chiffrer le disque dur (avec Bitlocker par exemple)
Une solution pour le partage des données chiffrées est le système EFS (encrypting File
System) qui permet de définir l'ensemble des utilisateurs qui ont accès à ce dernier.
On peut chiffrer les données sur clé Usb avec TrueCrypt qui permet de créer un espace
caché et de mettre des fichiers à l'intérieur

Sécurité des systèmes de fichier


Pour sécuriser les fichiers on peut utiliser des Access Control Entry (ACE), des Access Control
List (ACL)
Le file handler fournit un id opaque pour un fichier/dossier
Les fichiers sont organisés sous forme de Tree sur Windows et de DAG sur Linux
On peut définir la politique d'accès aux fichiers de deux façons: closed policy et open
policy

Dans la closed policy, on définit explicitement ce à quoi chaque utilisateur a accès, dans l'
open policy on définit ce à quoi chaque utilisateur n'a pas accès (il faut faire attention avec
la négation par exemple non (A&B) permet quand même A ou B mais pas les deux.
Exemple d'ACE pour le fichier test.pdf: Bob; Read; Allow....Esdras;Write; Deny
 

Quand c'est un dossier le premier bit est à d.

On utilise souvent le sticky bit t en 10eme position pour empêcher les suppressions et
renommages illicites des fichiers/dossiers.

Pour changer les droits:


Sur Windows si on déplace un fichier/dossier d'un répertoire à l'autre, ses permissions
seront celles du repertoire source, si on le copie, ses permissions seront celles de la
destination

Chapitre 5: Protection du réseau


Réseaux informatiques
Packet Switching vs Circuit Switching
Les protocoles orientés connexion (TCP...), les protocoles orientés sans connexion (UDP...)
Un packet est constitué du payload, du header et du footer et peut être emcapsulé dans
un autre.
Couches TCP/IP: Accès au réseau, Internet, Transport, Application
Couches OSI.....
Adresses MAC: 48 bits divisés en 2 parties
Le switch relie les équipements à partir de leur adresse MAC. On peut filtrer les adresses
MAC tolérées Il est possible de changer son adresse MAC
Le protocole ARP permet de convertir les adresses IP en adresses MAC. Il se sert d'une table
de mappage.
Il y'a des attaques communes sur ARP
L'ARP spoofing (« usurpation ») ou ARP poisoning (« empoisonnement ») est une technique
utilisée en informatique pour attaquer tout réseau local utilisant le protocole de résolution
d'adresse ARP
On peut empoisonner un cache ARP avec les gratuitous arp replies. et on parvient à faire
croire qu'on a une adresse MAC destinataire et donc recevoir les messages envoyés
Telnet est un protocole qui fournit une communication bidirectionnelle non chiffrée.

Réseaux: IP et TCP

IP
IP est un protocole non connecté, sans feedback qui encapsule les paquets TCP et UDP
ICMP est utilisé pour tester le net et debugger. Le ping et traceroute sont basés sur ICMP

Attaques communes à ICMP:

ping de la mort: en envoyant un paquet dont la taille dépasse celle requise et créé un
crash dû au buffer overflow
smurf: Smurf est une attaque par déni de service distribué dans laquelle un grand
nombre de paquets ICMP avec l' adresse IP source usurpée de la victime sont diffusés
sur un réseau informatique à l' aide d'une adresse de diffusion IP. Or généralement les
destinataires répondent avec un autre message ICMP. ce qui peut saturer l'ordinateur
de la victime
Vulnérabilités sur IP:

transmission de données non chiffrées


pas de somme de contrôle
pas de contraintes sur la bande passante
il est difficile de tracer l'origine de l'attaque

TCP
TCP est un protocole connecté de la couche de transport qui garantit le feedback

L'ordre des paquets après segmentation est maintenu grâce au numéro de séquence.

Ports:

Les ports 0-1023 sont réservés aux protocoles connus


1024-49151 pour les utilisateurs
49152-65535 sont les ports privés pour utilisation dynamique par les bibliothèques de
sockets.
Etablissement d'une connexion TCP
C'est au moment de la connexion que l'attaque peut se faire. Un exemple d'attaque est le
SYN Flood qui consiste à envoyer des requêtes de connexion TCP plus vite que le serveur ne
peut les traiter. Avec ça l'attaquant crée un large nombre de paquets avec l'adresse source
et les SYN flag. Cela fait que le serveur est un peu saturé et arrête de recevoir des requêtes
de connexion.
Fin d'une connexion TCP

Session Hijacking est la tentative d'usurpation d'une session TCP


IP Spoofing est la tentative pour un attaquant d'envoyer les paquets à partir d'une autre
adresse IP que la sienne.
Pour arrêter le packet sniffing il faut chiffrer les paquets, utiliser SSH

NAT (Network Address Translation)


permet de relier des adresses privées à une adresse publique.

Pour ça on met un routeur entre le réseau privé et le réseau public

ça permet de sauvegarder l'espace des adresses publiques

Domain Name System


permet de traduire les noms de domaine en adresse IP
Il existe un arbre DNS qui donne la hiérarchie des noms de domaine
le DNS Hijacking consiste à changer l'adresse IP associée à un serveur malicieusement.
DNS Cache Poisoning consiste à donner des fausses informations au DNS pour qu'il le
stocke dans son cache
Firewalls, tunnels, détection d'intrusion dans le
réseau

Firewall
Firewall: intégration d'une collection de mesures de sécurités pour prévenir les accès non
sécurisés à un réseau

Les paquets qui viennent à un firewall sont soit acceptés, soit supprimés soit rejetés

Pour augmenter la sécurité on peut utiliser l'approche blacklist où on spécifie les règles des
paquets qui ne seront pas tolérés, ou l'approche whitelist

Types de firewall:

packet filters (stateless) qui vérifient juste si un paquet vérifie les règles du filtre
stateful filters qui maintient l'historique des connexions et permet de savoir si un
paquet revient trop souvent...

Tunnels
permet d'empêcher l'eavesdropping en établissant une connexion sécurisée à travers un
tunnel
On peut par exemple avoir le Secure Shell
Le VPN est une technologie qui permet les réseaux privés d'être facilement étendus à de
grandes distances en utilisant le réseau public comme transport.
Il garantit la confidentialité, l'intégrité et l'authentification
Il y'a deux types de VPN: remote access VPN (autorise l'accès distant à un intranet) et site-to-
site VPN (établit un pont entre des réseaux distants)

Intrusion Détection System

Un IDS permet de détecter les menaces et attaques suivantes:


masquerader
clandestine user
scan de port
Dos Attacks
Malware attacks
ARP spoofing
DNS cache poisonning
Les types d'IDS sont:

Rule-based intrusion detection


Statistical intrusion detection

On peut facilement craquer WEP avec des logiciels comme aircrack-ng

Les portails captifs peuvent être utilisés pour rediriger les utilisateurs vers un site tierce et
récupérer leurs données

Pour bien protéger un WIFI il faut utiliser au moins un chiffrement WPA2. On peut également
utiliser des VPN, SSL, SSH...

Chapitre 6: Cryptographie classique et


quantique
une partie a été expliqué plus haut dans le cours

Les méthodes de chiffrement sont:

one time pad: mais la faiblesse c'est qu'on n'utilise qu'une fois les clés
block cipher: on divise le texte et les clés en blocs et on chiffre par blocs.
AES (Advanced Encryption Standard) qui est un block cipher avec des blocs de 128 bits
et des clés de 128, 192,256 octets
chiffrement clé privé/publique (RSA par exemple)
Data Integrity
Pour vérifier l'intégrité des données on utilise des clés de hachage. On peut associer à la donnée
un message authentification code (MAC).

Chapitre 7: Sécurité des données et des


bases de données
On doit sécuriser les données parce que les données sont coûteuses, parce que des données
bien analysées conduisent à de l'information et l'information c'est le pouvoir

Sécurité des bases de données


Il faut éviter les injections de données en formulant bien les requêtes et en les mettant dans
des Prepared Statement
Il faut aussi bien ordonner la Database access control en se basant sur le principe des
moindres privilèges et de la séparation des privilèges
On peut aussi chiffrer les données avant de les stocker

Important pour la SN
Etablissement d'une DMZ (comprendre le principe) pour la communication entre le réseau
local et internet

Détermination de l'impact
AVANTAGE DES DISQUES RAID: Le RAID est un ensemble de techniques de virtualisation du
stockage permettant de répartir des données sur plusieurs disques durs afin d'améliorer
soit les performances, soit la sécurité ou la tolérance aux pannes de l'ensemble du ou des
systèmes. A noter qu'un raid n a besoin de n+1 disques
La problématique que vient résoudre les IPV6: les IPV6 ont été créés pour palier aux limites
du nombre d'adresses possibles en IPV4, ceci à cause de l'IoT qui a augmenté
considérablement les objects connectés
La problématique que viens résoudre le DNS: a fonction majeure du DNS (Domain Name
System) c'est la régionalisation du contenu : pour éviter de passer par des chemins inutiles
et congestionner le réseau
Aussi, DNService # DNSystem

Vous aimerez peut-être aussi