32
Cours ité t t hi curité et cryptographie Chapitre 3: Vulnérabilités des logiciels – logiciels malveillants Cours sécurité et cryptographie Hdhili M.H 1

Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Embed Size (px)

Citation preview

Page 1: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Cours Sé ité t t hiSécurité et cryptographie

Chapitre 3: Vulnérabilités des logiciels –g

logiciels malveillants

Cours sécurité et cryptographieHdhili M.H 1

Page 2: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Plan

Partie 1: Vulnérabilités des logiciels

Contexte

OWASP Top 10 Application Security Risks

CWE/SANS Top 25 Most Dangerous Software Errors

Exemples de vulnérabilitésExemples de vulnérabilités

Partie 2: logiciels malveillants

Défi i i i i l é i iDéfinitions et principales caractéristiques

Exemples

Cours sécurité et cryptographieHdhili M. H 2

Page 3: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Vulnérabilités des Logiciels Vulnérabilités des Logiciels

Cours sécurité et cryptographieHdhili M.H 3

Page 4: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Contexte

Vulnérabilités logicielles:Communes à plusieurs langages oup g gSpécifiques à un langage particulier

L’exploitation d’une vulnérabilité nécessite:La compréhension du logiciel vulnérable, La détermination

de la plateforme, du système d’exploitationdu système d exploitation, des standards adoptés, des protocolse de communication, …

Atteinte de la partie vulnérable Par exemple: depuis les données acceptées en entrée.

Cours sécurité et cryptographieHdhili M. H 4

Page 5: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

OWASP Top 10 (2010)

Source : https://www.owasp.org/index.php/Top_10_2010-Main1) Injection ) j

2) Cross Site Scripting (XSS)

3) Broken Authentication and Session Management3) Broken Authentication and Session Management

4) Insecure Direct Object References

5) Cross Site Request Forgery (CSRF)5) Cross Site Request Forgery (CSRF)

6) Security Misconfiguration

7) Insecure Cryptographic Storage7) Insecure Cryptographic Storage

8) Failure to Restrict URL Access

9) Insufficient Transport Layer Protection9) Insufficient Transport Layer Protection

10) Unvalidated Redirects and Forwards

Cours sécurité et cryptographieHdhili M. H 5

Page 6: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

2011 CWE/ SANS Top 25 (1/3)

Source: http://cwe.mitre.org/top25/#CWE-89

Rank Score ID Name

[1] 93 8 CWE 89 Improper Neutralization of Special Elements used in [1] 93.8 CWE-89 an SQL Command ('SQL Injection')

[2] 83.3 CWE-78 Improper Neutralization of Special Elements used in OS C d ('OS C d I j ti ')[ ] an OS Command ('OS Command Injection')

[3] 79.0 CWE-120 Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')( )

[4] 77.7 CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

[5] 76 9 CWE 306 Mi i A th ti ti f C iti l F ti[5] 76.9 CWE-306 Missing Authentication for Critical Function[6] 76.8 CWE-862 Missing Authorization[7] 75.0 CWE-798 Use of Hard-coded Credentials

Cours sécurité et cryptographieHdhili M. H 6

[ ][8] 75.0 CWE-311 Missing Encryption of Sensitive Data

Page 7: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

2011 CWE/ SANS Top 25 (2/3)

Source: http://cwe.mitre.org/top25/#CWE-89

Rank Score ID Name

[9] 74 0 CWE 434 U t i t d U l d f Fil ith D T[9] 74.0 CWE-434 Unrestricted Upload of File with Dangerous Type

[10] 73.8 CWE-807 Reliance on Untrusted Inputs in a Security Decision

[11] 73.1 CWE-250 Execution with Unnecessary Privileges

[12] 70.1 CWE-352 Cross-Site Request Forgery (CSRF)

[13] 69.3 CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

[14] 68 5 CWE-494 Download of Code Without Integrity Check[14] 68.5 CWE 494 Download of Code Without Integrity Check[15] 67.8 CWE-863 Incorrect Authorization

[16] 66 0 CWE 829 I l i f F ti lit f U t t d C t l S h

Cours sécurité et cryptographieHdhili M. H 7

[16] 66.0 CWE-829 Inclusion of Functionality from Untrusted Control Sphere

Page 8: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

2011 CWE/ SANS Top 25 (3/3)

Source: http://cwe.mitre.org/top25/#CWE-89

Rank Score ID Name

[17] 65.5 CWE-732 Incorrect Permission Assignment for CriticalResource

[18] 64.6 CWE-676 Use of Potentially Dangerous Function[ ] y g[19] 64.1 CWE-327 Use of a Broken or Risky Cryptographic Algorithm[20] 62.4 CWE-131 Incorrect Calculation of Buffer Size

[21] 61.5 CWE-307 Improper Restriction of Excessive Authentication Attempts

[22] 61.1 CWE-601 URL Redirection to Untrusted Site ('Open Redirect')[22] 61.1 CWE 601 URL Redirection to Untrusted Site ( Open Redirect )[23] 61.0 CWE-134 Uncontrolled Format String[24] 60.3 CWE-190 Integer Overflow or Wraparound

Cours sécurité et cryptographieHdhili M. H 8

[25] 59.9 CWE-759 Use of a One-Way Hash without a Salt

Page 9: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Buffer overflow (overrun)

Un programme permettant d’écrire des données au-delà de la limite d’un tableau:

Les données mises dans un buffer excède sa tailleMettre des données dans un emplacement mémoire extérieur au buffer Copie d’un buffer sans tester la taille de ce dernier (classic buffer overflow)

Risques:ill b l d l li iMeilleur cas: arrêt brutal de l’application.

Pire cas: Exécution d’un code injecté durant le débordement de la zone mémoireExécution d un code injecté durant le débordement de la zone mémoirePrise de contrôle du système

Langages: Principalement: C et C++D’autres langages peuvent aussi être vulnérables: Java, C# et VB

Cours sécurité et cryptographieHdhili M. H 9

Page 10: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Buffer overflow: Exemples (langage C)

Exemple 1: pChar name[20];printf ("Enter your name: ");scanf ("%s", name);

Pb: pas de restriction sur la taille du nom saisie

Exemple 2: void copy (char *input)void copy (char input){ char buf[16];strcpy (buf,input);…}

Pas de contrôle sur la taille de input

Cours sécurité et cryptographieHdhili M. H 10

Page 11: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Buffer overflow (overrun)

Exemple 3: char dest[20], src[20];,char prefix[] = “http://“;strcpy (dest, prefix);strncat (dest, src, sizeof (dest));

au lieu destrncat (dest src sizeof(dest) sizeof(prefix));strncat (dest, src, sizeof(dest)–sizeof(prefix));

Exemple 4:Exemple 4: char buf[20], data[32];strncpy (buf, data, strlen (data));

au lieu destrncpy (buf, data, strlen (buf))

Cours sécurité et cryptographieHdhili M. H 11

Page 12: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Buffer overflow: exploitation

2 classes d’exploitations:Les débordements sur la pile (Stack overflow – Stack smashing).p ( f g)

Tableaux statiquesLes débordements sur le tas (Heap overflow).

bl d iTableaux dynamiques

Cours sécurité et cryptographieHdhili M. H 12

Page 13: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Stack overflow: exploitation

Cours sécurité et cryptographieHdhili M. H 13

Page 14: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Stack overflow: exploitation

Cours sécurité et cryptographieHdhili M. H 14

Page 15: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Buffer overflow: vulnérabilités

CVE-2002-0649 – Utilisé par le ver Slammer.Nombreux débordements de tableau (SQL Server 2000 Resolution Service) ( Q )permettant à un attaquant distant de causer un déni de service ou d’exécuter un code malicieux.

CVE-2003-0533 – Utilisé par le ver Sasser.Déb d t d t bl (A ti Di t d L l S it A th itDébordement de tableau (Active Directory du Local Security Authority Subsystem Service (LSASS)) permettant à un attaquant distant d’exécuter un code malicieux.

CVE-2010-2212Débordement de tableau (Adobe Reader et Acrobat 9.x avant 9.3.3, et 8.x avant 8.2.3 pour Windows et Mac OS X) permettant à un attaquant distant de causer un déni de service ou d’exécuter un code malicieux.

Cours sécurité et cryptographieHdhili M. H

de causer un déni de service ou d exécuter un code malicieux.

15

Page 16: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

SQL injection

DescriptionDe nombreuses applications utilisent des informations provenant d’un pp putilisateur pour construire leurs requêtes SQL. (nom, login, password…)Les données ordinaires fournies par les utilisateurs peuvent être interprété

d ê SQL é d i è l ’ )"#|comme des requêtes SQL: présence de mauvais caractères tels que : ’ ;)"#|Risques:

Contourner les vérifications de sécuritéContourner les vérifications de sécurité Obtenir des informations confidentielles.Modifier la BD, ,Exécuter des commandes systèmes

TypesInjections SQL standards Injections SQL de requêtes d’union

j i l

Cours sécurité et cryptographieHdhili M. H

Injections SQL aveugles

16

Page 17: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Détection de la présence de vulnérabilité

Comprendre quand l’application se connecte à un serveur de BD:

Formulaires d'authentification: Il ya des chances que les informations d'identification sont comparées à une BD q i contient to s les comtes des tilisate rsqui contient tous les comtes des utilisateurs

Moteurs de recherche: les chaînes présentées par l'utilisateur peuvent être utilisées dans une requête SQL qui extrait tous les documents pertinents à partir d'une BD

Sites de Commerce électronique: Les produits et leurs caractéristiques (prix, description, disponibilité, ...) sont très susceptibles d'être stockées dans une BD

Cours sécurité et cryptographieHdhili M. H 17

Page 18: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Détection de la présence de vulnérabilité

Stratégie:Tester chaque champs séparément en utilisant différents chaines et récupérer q p p ples messages d’erreurs générées afin de les analyser.Permet d’identifier avec précision les paramètres qui sont vulnérables

Test de base: l'ajout de mauvais caractères tels que : ’ ;)"#|l'ajout de mauvais caractères tels que : ’ ;)"#|

(') : utilisée dans SQL comme une marque de fin de chaîne de caractères (;): utilisé pour marquer la fin d’une instruction SQL. (/*) et (*/): balises de commentaires

En l’absence de filtres, ces caractères peuvent mener à l’exécution de requêtes incorrectes et/ou générer des erreursrequêtes incorrectes et/ou générer des erreurs

Commencer par les injections standards

Cours sécurité et cryptographieHdhili M. H

p j

18

Page 19: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Injection SQL standard: exemples

Exemple 1: SQL permet l’exécution de commandes shellQ p

SELECT ITEM,PRICE FROM PRODUCT WHERE ITEM CATEGORY '$ ' ORDER BY PRICEITEM_CATEGORY='$USER_INPUT' ORDER BY PRICE

Si l’utilisateur fournie $USER INPUT = '; exec master..xp cmdshell 'dir' - -$ _ ; p_

Le résultat sera:

1. SELECT ITEM,PRICE FROM PRODUCT WHERE ITEM_CATEGORY='';2. exec master..xp cmdshell 'dir' - - ( exécution de la cmde dir)2. exec master..xp_cmdshell dir ( exécution de la cmde dir)3. 'ORDER BY PRICE (considéré comme commentaire)

Cours sécurité et cryptographieHdhili M. H 19

Page 20: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Injection SQL standard: exemples

Exemple 2:Soit le script où $login et $password résultent des champs du formulaire p $ g $p pd’authentification (page html, php, asp, cgi...)

$login = Request.Form("login")$password = Request Form("password")$password = Request.Form("password")SELECT field FROM users WHERE Login=$login AND Password=$password

Le script ne vérifie pas la présence de mauvais caractères tels que : ’ ;)"#|

1) Si l’ ili f i ’ " ’ l d i bl l é l1) Si l’utilisateur fournie ’or"=’ pour les deux variables, le résultat sera: SELECT * FROM users WHERE Login='' OR ''='' AND Password= '' OR ''='‘

'or"=" retourne toujours VRAI Si aucun autre contrôle n’est effectué accès sous l’identité du premier utilisateur inscrit dans la BD le plus souvent l’administrateur

Cours sécurité et cryptographieHdhili M. H

utilisateur inscrit dans la BD, le plus souvent, l’administrateur.

20

Page 21: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Injection SQL standard: exemples

2) Gagner les droit d’accès d’un utilisateur particulier connaissant son nom de login ou son adresse email (soit user1) : saisir user1 pour $login et ’or"="

$ dpour $passwordLa requête sera:SELECT * FROM users WHERE Login=‘user1’ AND Password= '' OR ''='‘SELECT FROM users WHERE Login user1 AND Password OR

3) Ignorer une partie de la requête en utilisant /* et /* qui sont des balises de commentaire: saisir ’/* pour $login et */ OR "=’ pour $password

La requête sera:La requête sera:SELECT * FROM users WHERE Login = ’’/*’ AND Password = ’*/ OR ’’ = ’’

Qui est equivalente à:SELECT * FROM users WHERE Login = ’’ OR ’’ = ’’

Cours sécurité et cryptographieHdhili M. H 21

Page 22: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Injection SQL standard: exemple

Exemple 3 (PHP):

$ID = $_COOKIE["MID"];MYSQL_QUERY("SELECT MESSAGEID, SUBJECT FROM MESSAGES WHERE M ID '$ '")MESSAGEID = '$ID'");

Si l’utilisateur modifie le COOKIE $id = 1432' or '1' = '1Si l utilisateur modifie le COOKIE $id 1432 or 1 1Le résultat sera:

SELECT MessageID, Subject FROM messages WHERE MessageID = '1432' or '1' = '1’

Ce qui permet de récupérer tout les messages (1432 et tout les autres)Ce qui permet de récupérer tout les messages (1432 et tout les autres)

Solution: $id = intval($_COOKIE["mid"]);

Cours sécurité et cryptographieHdhili M. H

( _ [ ])

22

Page 23: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Injection SQL standard: exemples

Exemple C#Chercher les items (itemname) dont le nom coïncide avec la chaine saisie ( )par l’utilisateur authentifié (userName)

string userName = ctx.getAuthenticatedUserName();t i "SELECT * FROM it WHERE '" +string query = "SELECT * FROM items WHERE owner = '" + userName + "' AND itemname = '" + ItemName.Text + "'";

La requête que ce code cherche à exécuter est SELECT * FROM items WHERE owner = <userName> AND itemname =

<itemName>;<itemName>;

Si l’utilisateur wiley fournie name' OR 'a'='a comme itemName, le requête sera:

SELECT * FROM items WHERE owner = 'wiley' AND itemname = 'name' OR 'a'='a';

Cours sécurité et cryptographieHdhili M. H

Ce qui est équivalent à SELECT * FROM items; car 'a'='a' est toujours vrai23

Page 24: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

OS Command injection

DescriptionUtilisation de données provenant d’un usager pour construire les p g pcommandes soumises au système d’exploitation.Les données utilisateurs peuvent contenir des éléments pouvant dévier la commande de son objectifcommande de son objectif

Exemple (php)Exemple (php)Prendre le nom d’un utilisateur puis lister le contenu de son répertoire home$userName = $_POST["user"];_$command = 'ls -l /home/' . $userName;system($command);

Si l’utilisateur fournie ;rm -rf / la commande sera ls -l /home/;rm -rf /Permet de supprimer tout le système de fichier (la racine /)

Cours sécurité et cryptographieHdhili M. H

Permet de supprimer tout le système de fichier (la racine /)

24

Page 25: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Logiciels malveillantsLogiciels malveillants

Cours sécurité et cryptographieHdhili M.H 25

Page 26: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Logiciels malveillants (malware)

Développés pour des fins malicieuses sous diverses formesVirus, Ver, Chevaux de Troie,Backdoors, Spywares, adware …, , , , py ,

ExploitentpLes vulnérabilités logicielles: l’intervalle de temps entre la découverte d’une vulnérabilité et la disponibilité du remède. La naïveté des usagers.

V i lVarient selon Le mode d’exécutionLe mode de propagationLe mode de propagationL’effet malicieux…

Cours sécurité et cryptographieHdhili M. H 26

Page 27: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Virus

Forme: s’attache à un autre logiciel ou document g

Mode d’exécution: exécuté suite à l’exécution du code hôte.

Propagation: transfert du programme / document hôte d’un système à un autre.

Reproduction: se reproduisent au sein du nœud infecté peuvent infecter d’autres logiciels/documents

À l’aide des usagersGrace à des vulnérabilités logiciellesGrace à des vulnérabilités logicielles

Exemples: ILoveyou, Melissa,

Cours sécurité et cryptographieHdhili M. H 27

Page 28: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Ver

Semblable au virus (ver = virus réseau)Forme:Forme:

autonome (stand alone)

Mode d’exécution: Automatique ou par l’intervention de l’usager (ingénierie sociale) Peut modifier l’OS hôte pour être lancé automatiquement

Propagation: par le réseau vers d’autres ordinateurs vulnérables.

Balayage de connexion TCP, courrier, messagerie instantanée (Obtient les informations réseau à partir du poste infecté)

Reproduction:Reproduction:Par lui-même (généralement grâce à une vulnérabilité logicielle)

Exemples:

Cours sécurité et cryptographieHdhili M. H

pMoris Worm, Slammer, Sasser, CodeRed, Blaster, …

28

Page 29: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Cheval de troie

Forme:Forme: souvent attachés manuellement au logiciel hôte (jeu, utilitaire…)

Mode d’exécution: exécutés en faisant partie d'un autre programme

Propagation : p gtéléchargement de logiciels hôtes: inciter les utilisateurs à les télécharger (Ingénierie sociale)

R d iReproduction: Ne peuvent ni se reproduire ni infecter d'autres logiciels

E emples:Exemples: Sub7, Back Orifice, faux antivirus

Cours sécurité et cryptographieHdhili M. H 29

Page 30: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Spyware (logiciel espion)

Forme:Tout logiciel qui contient un programme-espion g q p g pemploie en arrière-plan la connexion Internet de l'utilisateurrecueillir et transmettre des données personnelles (intérêts, habitudes de

i i ) à é i bli i inavigation..) à une régie publicitaire.

Mode d’éxécution:Installé avec un logiciel populaire un outil shareware un faux antiInstallé avec un logiciel populaire, un outil shareware, un faux anti-spyware…etc

Propagation:p gNe se propage pas automatiquement.

Reproduction:Ne se reproduit pas. Ne nécessite pas de programme hôte à infecter.

Cours sécurité et cryptographieHdhili M. H 30

Page 31: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Adware (logiciel publicitaire)

Forme:Logiciel gratuit affichant, lors de son utilisation, des annonces publicitaires g g , , pmenant à des sites commerciaux.

Propagation:Ne se propage pas automatiquement.

Reproduction:Ne se reproduit pas. Ne nécessite pas de programme hôte à infecter.

Fonctions:Fonctions:Affiche des fenêtres publicitaires (pop-up) Vole les informations personnelles (stockées dans l’ordinateur infecté).Vole les informations personnelles (stockées dans l ordinateur infecté). Enregistre les habitudes de navigation web Déroute certaines requêtes HTTP vers des sites commerciaux

Cours sécurité et cryptographieHdhili M. H

… 31

Page 32: Cours Sé ité t t hiSécurité et cryptographiehdhili.weebly.com/uploads/9/8/9/6/9896432/seccrypto_chap2bis... · Cours Sé ité t t hiSécurité et cryptographie Chapitre 3: Vulnérabilités

Conclusions

Nécessité de bien comprendre le fonctionnement des logiciels malveillant:

Comment se reproduisent-ils?Comment se propagent-ils?Comment s’éxécutent-ils?Que font-ils exactement?

Pour:Dét i l ’il é t tDéterminer les menaces qu’ils représentent Evaluer les risques correspondants. Mettre en place les mécanismes de protection adéquatsp p qDéterminer l’efficacité des divers moyens de protection

Cours sécurité et cryptographieHdhili M. H 32