Securite Informatique - BlocNote

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 25

Sécurité Informatique - BlocNotes

Dr Ir NDAYIKUNDA Juvent
Chap I. Introduction à la sécurité informatique

Def:
L’information peut être:
- Une donnée si on parvient à lui donner un sens quelconque
et une interprétation
- Un message
- Connaissance

Pourquoi la sécurité des réseaux est importante?


=> Puisqu’il y a la motivation de voler des information c’est pourquoi la sécurité des
réseaux est importante.

Différentes motivations de voler des information pour les hackers


- Vengeance
- Test de ses capacités
- Nuire à une société
- Curiosite
Chap 2. Vulnérabilités des systèmes informatiques et méthodes d’attaque

Les vulnérabilités sont tous les points failles pour lesquelles un hacker peut attaquer un
système informatique.

Qu’est ce qui peut causer les failles d’une vulnérabilité


1. Une mauvaise configuration d’un système
2. Les mots de passe faibles
3. Les failles d’application
4. Les failles du système d’exploitation
5. La non mise à jour des technologie utilisées
6. Etc…

Analyse de vulnérabilité:pourquoi on le fait


L’analyse de la vulnérabilité permet d’identifier des failles de sécurité sur un système ou
une application donnée pour pouvoir, par la suite, résoudre ces failles et d’y apporter
des améliorations.

3 phases d’analyse de vulnerabilite


- Phase de pré-analyse: permet d’identifier les systèmes ou technologies
touchées par la vulnérabilité et de prévenir les experts des systèmes cibles;
- Phase d’analyse: il faut déterminer la criticité et la faisabilité de l’exploitation de
cette vulnérabilité sur les systèmes identifiés dans la phase 1. C’est la où il y a la
preuve de conception (PoC);
- Phase de post-analyse: appliquer les correctifs nécessaires pour contrer la
vulnérabilité et améliorer les règles de sécurité.

La preuve de concept (PoC: Proof of Concept) peut comporter:

Notation des vulnerabilities


CVE (détaille les points faibles du système)
CVSS (on utilise les niveaux de 0 à 10)
NVD

Different outils de scan de vulnerabilities: QUALYS, NMAP, NESSUS, OPENVAS,


NIKTO, NETSCAN, etc.
Rôle des entreprises de sécurité informatique
- Améliorer la sécurité par rapport à ce qu’elle était avant
- Comparer et estimer l'état de sécurité du système
- S’assurer que toutes les précautions raisonnables ont été prises pour optimiser
la protection des données
- Garder la sécurité dynamique dans le temps et évaluer les processus mis en
place pour entretenir la sécurité à long terme
- Trouver le juste équilibre entre l'accès aux ressources que les réseaux actuels
contiennent et la protection contre le vol des données sensibles

L’intervention des entreprises de sécurité se fait en 3 phases:


- Analyse et audit: c’est comme l’analyse de la vulnérabilité (mener une 1ere
opération d’analyse et audit du système)
- Mise en oeuvre du plan et des outils de sécurisation: les normes qu’on doit
respecter
- Action continue en aval: si vous avez déployé les moyens de sécurité, on doit
continuer à examiner et non pas s'arrêter à la 2e phase (donc améliorer votre
système)

Application de la sécurité
- Sécurité des équipements: endroit où provient l’attaque (pour garantir la sécurité,
l'intégralité des données) => sécurité du matériel (proteger le materiel pour éviter
les intrusions)
- Sécurité des applications logicielles: la protection du système en installant par
exemple: des antivirus, les pare-feu, les proxy
- Sécurité des données: on doit chiffrer et rendre les données plus lisibles
- Sécurité des réseaux de télécommunication: il faut se protéger contre les
intrusions malveillantes à travers les réseaux

Les pare-feu ne protègent pas contre les virus car un virus peut y passer sans
problème.
L’architecture de sécurité OSI X800
L’architecture de sécurité OSI X800 se concentre sur les attaques de sécurité, les
mécanismes et les services. Ceux-ci peuvent être définis brièvement comme suit:
- Attaque de sécurité: toute action ayant pour objectif de nuire à un système
informatique
- Mécanisme de sécurité: processus pour détecter, prévenir et récupérer une
attaque de sécurité
- Service de sécurité: un service de traitement ou de communication qui améliore
la sécurité des systèmes

Les services de sécurité


1. Authentification: se fait quant on commence l’initiation de la session
2. Contrôle d'accès: éviter qu’une personne non autorisée n’entre dans le réseau
(dans la norme OSI X800)
3. Confidentialité des données: l’information est connue seulement pour les
concernés
4. L'intégrité des données: il n’y a pas modification des données (il y a la
cryptographie)
5. Non répudiation: éviter le déni des services (hors-service) (éviter qu’un individu
ne nie que celui qui a participé dans la conversation)
6. La disponibilité: maintenir le bon fonctionnement du système d’information

Deux services d'authentification définis dans x800


- Authentification par entité intermédiaire
- Authentification d’origine de donnée

La confidentialité des données comprise quand les données sont accessible facilement

Les mécanismes de sécurité (c’est pour garantir le service)


- Mécanismes de sécurité spécifiques: incorporer dans la couche de protocole
approprié
- Mécanismes de sécurité omniprésents: qui ne sont pas spécifiques à un
service OSI

* Le chiffrement: pour assurer l'intégrité des données


*Signature numérique: mécanisme de sécurité (quand on doit envoyer quelque chose)

Les attaques informatique


C’est une tentative (action) d’avoir accès à quelque chose.

Types d’attaques
- Attaques passives: avoir accès aux ressources sans toutefois modifier
- Attaques actives: il y a modification (tente d’introduire des modifications et
endommagent le système)

Impacts des attaques


- Impact sur l’image de l’entreprise
- Impact sur la vie privée
- Pertes financieres
- Déni de service (attaques couramment utilisées)
- Utilisation non autorisée des systèmes informatique
- Perte, changement et/ou altération des données ou logiciels

Types d’attaques
1. Attaque direct: on attaque directement la machine sans se soucier qu’on
l’attrape ou non
2. Attaque par rebond: on envoie une requête à la machine et le message est
transmis à la machine du victime et celle-ci va répondre à ces messages (C
pense qu’il répond à A alors qu’il envoie une autre requête à B)

3. Attaque indirecte par réponse: (2) et (3) offre la même chose à part que (2)
envoie une requête (permission de faire quelque chose) et (3) l’autre envoie une
réponse
Technique d’attaque
1. Protection par mot de passe
a. Attaque par force brute: on essaie de déverrouiller le mot de passe en tentant
bcp de fois
b. Attaque par dictionnaire: on essaie de déverrouiller et ca envoie un
dictionnaire contenant des mots de passe et puis on regarde le mot de passe
correct
c. Attaque hybride: on doit mélanger avec vos propres mots de passe (mélange
entre force brute et dictionnaire)

2. Man in the middle (il intercepte des paquets et les analyse)


3. Attaque par rejeu: attaque du man in the middle (il intercepte des paquets et analyse
ces paquets et choisi les paquets qui l'intéresse)
4. Attaque par déni de service: joue sur l’image de l’entreprise. Ex: il prend un serveur
et il le saturé par des requêtes et le serveur est hors-service

Attaque réseaux
- Attaque contre la confidentialité: les informations ne sont plus confidentielle
(on joue sur les protocoles)
- Attaque contre l'intégrité: pour récupérer les données essentielles
- Attaque contre l’authentification: pour être authentifié comme la personne
légitime
- Attaque contre la disponibilité

Attaques des programmes malveillants (malware)


Pour se protéger contre les attaques des programmes malveillants, ont utilisés les
antivirus

● Virus
○ Virus parasite: s’attaque aux codes source des fichiers exécutables
○ Virus résidant en mémoire: héberge en mémoire, il affecte tous les
programmes qui s'exécutent
○ Virus sur secteur de boot (Boot Sector Virus)

● Ver (worm): quand on est infecté par un virus, les vers prennent la copie
● Un cheval de Troie (Trojan)
● Un logiciel espion (espiogiciel ou spyware): il va collecter les informations et les
faire sortir
● Les rançongiciels: on chiffre les données et on te demande les rançons pour
les déchiffrer
● Les Crypto Miners: on peut utiliser les ressources des autres machines pour
créer les cryptons. (tu vois ta machine ralentir sans savoir pourquoi?)
Les cryptons demandent la puissance de la machine.
● Les générateurs de clé (keygen):

Les attaques sur les protocoles réseaux


➔ ARP Spoofing: avoir l’adresse MAC (recherche l’adresse MAC): redirige
l’adresse réseau vers la machine du pirate (hacker)

Adresse MAC (c’est l’adresse physique de l’ordi. On peut la changer mais c’est difficile)
Adresse IP ca change
➔ DNS Spoofing: changer le nom du domaine en adresse IP
➔ Vol de session (TCP Session Hijacking): la session est déjà établie mais on
essaie de fragmenter les paquets. Le routeur exécute un paquet et pense que
les autres paquets sont bons.

Le deni de service
TCP demande beaucoup de ressources UDP.
On peut utiliser 2 méthodes pour le déni de service:
- TCP
- UDP

Attaques sur les programmes


a. Buffer overflow: c’est une faille due à une mauvaise programmation
b. Attaque par injection:
2 types d’injection:
i. Injection SQL: injection les requêtes SQL au lieu des login ou mot de
passe
c. Déplacement de site web: venir changer le compte du site web

Attaques par messagerie électronique (Ingénierie sociale)


● Phishing ou Hameconnage
● Le scam ou fraude
● Le spam ou pourriel: les spams sont des publicités qu’on envoie
Les mecanismes de defense
C’est pour se protéger contre les attaques
● Les mots de passe
● Audit de sécurité: essayer de récupérer les informations complètes sur le réseau
● Journalisation: rassembler les information journalièrement
● Antivirus
● Systèmes de détection d’intrusion (IDS-Intrusion Detection Systems): il y a alerte
de l’administrateur en cas de faille ou de violation de règles de sécurité dans un
réseau. Ex des IDS: mise à jour
● Pare-feu: peut être logiciel ou matériel. Son rôle est de filtrer les informations qui
y traversent
● Contrôle d'accès: limiter les accès d’un système.

VPN c’est un réseau logique (réseau virtuel)


TCP pour lire les informations

Bourrage de trafic
Ajouter des buts supplémentaires. Donc pour renforcer la sécurité de l’information

Pare-feu
- Filtrage entrant
- FIltrage sortant

Un pare-feu doit protéger la machine d’un asseyant (hacker)


Un pare-feu protège contre les acces non autorises

Les pare-feu réseau utilise l’adresse IP


=> Les pare-feu applicatifs sont des pare-feu en plus de l'entête, ils analysent aussi le
contenu du paquet.
=> Difference entre pare-feu matériel et logiciel
Un pare-feu matériel c’est comme un commutateur (switch)

Réseaux privés virtuels (recherche)


C’est un réseau privé qui permet de créer un lien logique direct entre 2 ou plusieurs
machines.
Chap 3. Systèmes Cryptographiques

➔ C’est une science qui permet de changer un message clair en message chiffré.
➔ La cryptanalyse c’est de tester un message/un mot de passe en tâtonnant
jusqu'à trouver la bonne réponse
➔ Une signature numérique est une signature électronique qui vient renforcer un
message
➔ La certification numérique (certificat numérique)

Séquences pseudo-aléatoires sont des générateurs


Clé publique contraire avec clé symétrique

Principe de la cryptographie
- Assurer la confidentialité des données (algorithme de chiffrement)
- Garantir l'intégrité des données (algo de hackage)
- Authentifier l'émetteur des données (algo de signature numérique)

3 types d’algo cryptographiques


1. Les algo simples de substitution: algo datant de longtemps
2. Les algo de chiffrement symétrique
3. Les algo de chiffrement asymétrique

Le choix du système cryptographique depend des tâches à accomplir pour sécuriser les
données

Chiffrement de César
n = 3 on fait décalage de 3 alphabet car n = 3
Ex: Abana => DEDQD pour A: A, B, C, D si n = 3, A devient D

Si n = 256, pour voir le décalage entre les lettre de l'alphabet n on fait modulo 26
Ex: 256 mod 26 (mod : modulo - reste de la division)

Cryptographie symétrique
Dans la cryptographie symétrique on doit utiliser les nombres premiers
Longueur des bits = 512bits | 1024 bits
Test de Lehmann pour vérifier de fiabilité d’un nombre premier

!p nombre

1. Choisir un nombre aléatoire a<p


|| On doit prendre a un peu élevé pour avoir plus de fiabilité
2. Calculer z = a(p-1)/2 mod p
3. Si z != 1, donc p n’est pas un nombre premier
4. Si z = 1 ou z = p - 1, donc p peut être un nombre premier avec une probabilité
de 0.5

Si on répète ce test pour un nombre t de fois pour que le resultat z soit égal à 1 ou
p - 1, dans ce cas la probabilité d’erreur est égal à 1/(2t)

Test de Rabin-Miller

Soit p un nombre
On calcule le nombre b, pour que p - 1 = 2b m
1. Choisir un nombre aléatoire a<p
2. Posons j = 0 et calculez z = am mod p
3. Si z = 1 ou z = p - 1, donc p peut être un nombre premier
4. Si j > 0 et z = 1, donc p n’est pas un nombre premier
5. Posons j = j + 1, si j < b et z != p - 1, calculer z = z2 mod p et refaire
l'étape (4)
Si z = p - 1 donc p est un nombre premier

La probabilité d’erreur est de 1/(4t) ou t est le nombre d'itération (le nombre de tours)

Test Rabin-Miller
Supposons p = 173
p - 1 = 2b m
172 = 22 43 => b = 2 ; m = 43
1. a = 2
2. j = 0, z = 243 mod 173 = 80

Si a = 2, t = 1 donc 1 iteration (1er iteration)


a = 3, t = 2 donc 2 iteration

t=a-1

5. j = 0 + 1 = 1, 1 < b (b = 2), 1 < 2


z != 172 ; z != p - 1
z = z2 mod p
z = (80)2 mod 173 = 172

Configuration des pare-feu sous windows

I. Bloquer un navigateur

1. Trouver IP du serveur quelconque (ex. google.com) avec cmd (ping google.com)


2. Bloquer tous les paquets émis par le navigateur

II. Essayer de créer les petits réseaux-locaux d’au moins trois ordi(A, B, C) tout en
interdisant la connexion entre A et B.

=> Firewall (pare-feu)


Pour configurer les pare-feu sous windows on suit:
Icone windows _ Paramètre _ Reseaux _ Pare-feu _ Paramètre avancé _ Outbound
rule _ New _ Custom _ Scope _ Remote (computers) _ IP Address _ Saisir l’IP à
bloquer

Comment générer un nombre premier


1. On genere un nombre aleatoire 𝜑 de n bits
2. On fixe le 1er et le dernier bit à “1”
3. On vérifie que 𝜑 est un nombre premier avec le test de Lehmann ou Rabin-Miller
4. Si 𝜑 n’est pas un nombre premier, générer un autre nombre 𝜑’ proche 𝜑
Ex. 𝜑 = 10110101 = 181
p = 181
p - 1 = 180
p - 1 = 2b m
180 = 22 . 45 => b=2 ; m = 45

1. a = 2
2. z = 245 mod 181 = 162
j = 0;
5. j = 0 + 1 = 1, j < b (1<2)

z = z2 mod p
= (162)2 mod 181
= 180

PGCD
Deux nombres sont relativement semblables s’ils n’ont pas de facteurs communs à part
1. Donc PGCD(a,n) = 1

Ex. 15 et 28 => sont relativement premiers


15 et 27 => ne sont pas relativement premiers

PGCD(15, 27) = 3

On peut utiliser l’algorithme d’Euclide pour calculer le PGCD

PGCD(n1, n2) = PGCD(n2, n1 mod n2)


n1 > n2
PGCD(27, 15) = PGCD(15, 27 mod 15) = PGCD(15, 12) = PGCD(12, 3)
= PGCD(3, 0) = 3

N.B. : si (a a-1) mod n = 1


a-1 est l’inverse pour a modulo n

● D’une manière générale si a et n sont relativement premier, ils ont un même


inverse a-1
=> Si n est un nombre premier donc tout nombre de 1 a n - 1 est relativement premier
avec n et a un seul inverse par modulo n.
si n > a-1 et que n est premier a un nombre, donc tous les nombres inferieur a n
sont premiers sans même calculer
Theoreme de Fermat
a-1 mod n = an-2 mod n
Ex. a = 3 => a’ = 5 par modulo 7
Car (a . a-1) mod n = (3 x 5) mod 7 = 1

Exercices

Données
a = 525
n = 11

Inconnues
a-1 (l’inverse de a modulo n)

Resolutions
Vérifions si a et n sont relativement premier
PGCD(525, 11) = PGCD(11, 8)
= PGCD(8, 3)
= PGCD(3, 2)
= PGCD(2, 1)
= PGCD(1, 0)
C’est a dire a et n sont relativement premier

Theoreme de Fermat
a-1 mod n = an-2 mod n
525-1 mod 11 = 52511 - 2 mod 11
= 5259 mod 11
= (5255 mod 11 x 5254 mod 11) mod 11
(a . b) mod n = (a mod n x b mod n) mod n

= (10 x 4) mod 11 = 7
-1
=> a = 7 car (525 x 7) mod 11 = 1
Les techniques de la cryptographie c’est pour:
- Assurer la confidentialité: algorithme de chiffrement
- Garantir l'intégrité: algorithme de hachage
- Authentification de l'émetteur: signature numérique

Cryptographie a clé publique


La clé qui a chiffré les données n’est pas la même que celle qui va déchiffrer les
données.

Algo. asymétrique est robuste et est lent


Algo. symétrique (pour chiffrer les données)
Algo. asymetrique (pour déchiffrer la clé mais pas les données)

=> Les algos. Cryptographique dépend de 2 facteurs:


- La force de chiffrement
- Secret de la cle

Clé publique qui sert à chiffrer les données


Clé privée qui sert à déchiffrer les données

Ex. Les cryptosystèmes à clé publique:


- Elgamal (du nom de son inventeur Taher Elgamal)
- RSA (Ron Rivet, Adi Shamir et Leonard Aldeman)
- DSA (Digital Signature Algorithm)

DSA utilisé pour les signatures numériques


Elgamal et RSA pour le chiffrement et signature
Signature numérique c’est authentifier l'émetteur

=> L'algorithme c’est une succession des étapes

Algorithme RSA
Il est le plus répandu pour les applications a chiffrement asymétriques.

1. Choisir p et q, deux nombres premiers distincts


2. Calculer leur produit n = p . q, appelé module de chiffrement
3. Calculer 𝜑(n)=(p - 1)(q - 1)
4. Choisir un entier naturel E premier avec 𝜑(n) et strictement inférieur a 𝜑(n)
appelé exposant de chiffrement.
5. Calculer l’entier naturel D inverse de E modulo 𝜑(n) et strictement inférieur à
𝜑(n) appelee clé de déchiffrement
6. Le couple (E,n) est la clé publique et D est la clé privée

La clé privée est souvent donnée par le triplet (p, q, D) et la clé publique par (E, n)

7. Si M est un entier naturel < à n et représentant le message, alors le message


chiffré sera C = ME mod n
8. Le message déchiffré M’ = CD mod n

Ex.
1. p = 7 et q = 17, M = 19 (on va chiffrer 19 c’est le message)
2. n = p . q = 7 x 17 = 119
3. 𝜑(n) = (p - 1)(q - 1) = (7 - 1) (17 - 1) = 6 x 16 = 96
4. E = 13 < 𝜑(n)

Vérifions si 96 et 13 sont relativement premiers


PGCD(96, 13) = PGCD(13, 5) = PGCD(5, 3) = PGCD(3, 2) = PGCD(2, 1)
= PGCD(1, 0) = 1
Donc les 2 nombres sont premiers

5. E-1 mod 𝜑(n) = 13-1 mod 96 = 1394 mod 96


Trouvons D inverse de 13 modulo 96, D < 𝜑(n)
(13 * D) mod 96 = 1
13D - 96x = 1

D = (96x + 1) / 13 (si on pose que x = 1 , 2 , 3, 4; on obtient des décimal alors qu’on


veut entier finit… mais avec x = 5 on obtient un entier naturel)

Donc D = 37

6. Cle publique (13, 119) – (E, n)


Clé privée est donnée par le triplet (p, q, d) qui est (7, 17, 37)

7. C = ME mod n = 1913 mod 119 = 117


8. M’ = CD mod n
M’ = 11737 mod 119 = 19
N.B. En pratique le message M est subdivise le plus souvent en morceaux de n bits
Ex. n = 512bits ou 1024bits
Signature numerique
Longueur de la cle est de 512bits a 4096bits
Les signatures numériques permettent l’authentification ; le contrôle de l'intégrité
des données ; Procure également la non-repudiation

Vous aimerez peut-être aussi