Alertes de sécurité en cours Discussion Discussion
Faire un lien Lien
Assiste.com - Sécurité informatique - Décontamination - Antivirus - Protection - Protection de la Vie Privée Assiste.com - Sécurité informatique - Décontamination - Antivirus - Protection - Protection de la Vie Privée


Heuristique (antivirus à analyses heuristiques)

Dernière mise à jour : 2016-12-03T00:00 - 03.12.2016 - 00h00
29.09.2014 - 00h00 - Paris - (Assiste - Pierre Pinard) - Mise à jour

Heuristique (antivirus à analyses heuristiques)

Heuristique (antivirus à analyses heuristiques)Heuristique (antivirus à analyses heuristiques)Heuristique (antivirus à analyses heuristiques)

Les antivirus utilisent diverses méthodes pour déterminer si un objet (un fichier) est dangereux ou malveillant. Essentiellement :
  • Les méthodes à base de signatures (analyses par signatures)
  • Les méthodes heuristiques (analyses heuristiques)
  • Les méthodes comportementales en environnement réel (analyses comportementales)
  • Les méthodes comportementales en machines virtuelles (analyses comportementales en sandboxing)
  • Les méthodes de contrôle d'intégrité basées sur l'inventaire des condensats des objets (fichiers) réputés sains (base de données de condensats en liste blanche). Ces méthodes relèvent des contrôleurs d'intégrité, mais les antivirus peuvent les utiliser pour mettre hors de cause les objets dont le comportement (analyse comportementale) normal, en machine virtuelle, pourrait causer de fausses alertes (faux positifs).

Les méthodes d'analyses heuristiques permettent de régler certains problèmes :
Les analyses heuristiques reposent sur un ensemble de règles, propres à chaque éditeur de solution antivirale, permettant de déterminer statistiquement si le fichier analysé ressemble à un virus. Les analyses heuristiques sont donc basées sur des calculs de probabilité et, dans tous les antivirus, il y a un curseur permettant de choisir entre une analyse heuristique rapide, intermédiaire ou sévère (agressive). En fonction de ce choix, l'antivirus produira plus ou moins de faux positifs ou de faux négatifs.

Les analyses heuristiques permettent de régler certains problèmes :

  • Problèmes de temps
    Les méthodes d'analyses heuristiques permettent de résoudre un problème de manière plus rapide que de la manière classique. En matière de virus et autres malveillances, la méthode classique d'analyse est celle d'humains qui déterminent la malveillance de l'objet, puis en extraient des traces signifiantes, appelées " signatures ", introduisent ces signatures dans les bases de signatures et attendent que l'antivirus viennent chercher ces mises à jour (ou "poussent" ces mises à jour). Il y a assez peu de virus dont l'analyse relève nécessairement de l'humain. La méthode classique est beaucoup trop lente.
  • Problèmes d'inexactitudes
    Les méthodes d'analyses heuristiques permettent de résoudre un problème par approximation lorsque la méthode classique ne peut produire une solution exacte.
  • Problèmes de volume
    Les méthodes d'analyses heuristiques permettent de résoudre le problème, sinon insoluble, de l'explosion du nombre de signatures, rendant toute tentative de créer une base de données exhaustive des signatures impossible car sa taille serait gigantesque et totalement inexploitable. Avec les générateurs de variantes virales (le même virus est modifié à chaque implantation pour ne jamais avoir deux fois la même signature), ce sont plusieurs centaines de milliers de nouveaux virus qui sont détectés chaque jour, dont il est impossible de mettre toutes les signatures en base de données locales (les consultations en ligne d'une base de données illimitée, sur les serveurs de l'éditeur, peuvent apporter une réponse à ce problème de volume mais les utilisateurs sont frileux, voire totalement hostiles, devant les opérations de tracking et surveillances que permettent ces solutions parfois appelées d'un terme pompeux et à la mode : « cloud ». Lire :
    Polymorphisme
    Clones singuliers

    Statistiques : nouveaux virus ajoutés mensuellement (Avast)
    Statistiques : nouveaux virus ajoutés mensuellement (Avast)
    Si chaque signature pèse 128 octets, une base de données exhaustive augmenterait, chaque mois, sur la seule référence de décembre 2014 selon Avast, de 314 129 * 128 / 1 000 000 000 = 40 mégaoctets soit, sur 1 an, près de 500 mégaoctets.

    • Ces chiffres sont en augmentation constante et rapide
    • D'autres éditeurs annoncent des chiffres encore plus élevés.
    • Une base de données comporte les signatures de plusieurs années de malveillances et, si elle se veut exhaustive, pèse plusieurs gigaoctets.
    Sans les méthodes heuristiques, ces bases de données seraient totalement impossibles à utiliser : elles ne monteraient même pas en mémoire !

Dans l'explosion du nombre de virus, il y a trois cas de figure qui relèvent du même but : empêcher l'exhaustivité des bases de signatures par saturation du nombre de signatures et être le plus furtif possible par crétinisation des calculs de condensats :

  • Un virus, ou une malveillance quelconque informatique, une fois mis au point, est passé à un générateur de variantes qui va produire des millions ou des milliards de copies, toutes légèrement modifiées afin de ne jamais avoir de condensats identiques ni de signatures identiques. Le générateur crée des clones comportant des singularités.
  • Le virus informatique est doté de capacités polymorphiques : il mute en se propageant. C'est une forme brillante d'écriture informatique, mais la propagation virale de la malveillance (la méthode classique et ancienne de propagation, qui fait qu'une malveillance est un virus) est en voie de disparition par rapport aux drive-by download, mécanismes publicitaires, utilisation d'un cheval de Troie, sponsoring, repacking, spam, ingénierie sociale, etc. ...
  • Un virus, ou une malveillance quelconque informatique, une fois mis au point par un attaquant, est amélioré par un autre attaquant. Le nouveau virus est de la même famille mais n'a pas le même code, donc ne contient pas les mêmes segments de code servant de signatures pour identifier le virus originel.

Il reste malgré tout, dans les variantes par clonage ou par polymorphisme, ou dans la réécriture améliorée, des traces plus ou moins révélatrices. Les méthodes heuristiques sont donc des chemins plus courts, plus rapides que les méthodes humaines pour arriver à trouver, dans un objet inconnu, des traces partielles de signatures déjà identifiées, de manières certaines, dans une malveillance servant de matrice initiale et dont toutes les autres variantes sont de la même famille.

Dans les analyses heuristiques, les recherches ne se font donc pas sur la présence exacte d'une signature, mais sur les variantes possibles et inconnues de ces signatures connues. Les recherches sont donc des recherches d'approximations (inexactitudes) en introduisant des jokers (wildcard) aux endroits où peuvent résider des différences dans des chaines de caractères qui ne sont plus des chaines de caractères contigus. Ceci permet de détecter des virus même si du code non significatif variable (dummy) est injecté au milieu du code de la malveillance.

Les méthodes d'analyses heuristiques n'ont rien à voir et ne doivent pas être confondues avec les méthodes d'analyses comportementales.

Les méthodes d'analyses heuristiques, selon le degré de sensibilité demandé, peuvent produire de très nombreux faux positifs.

Scurit informatique - Comment je me fais avoir - Comment ne pas me faire avoirSécurité informatique - Comment je me fais avoir - Comment ne pas me faire avoirScurit informatique - Comment je me fais avoir - Comment ne pas me faire avoir

Contre mesuresContre mesures" Contre mesures "

Derrière le rideauDerrière le rideauDerrière le rideau

RéférencesRéférences" Références "

RessourcesRessources" Ressources "

 Requêtes similairesRequêtes similaires" Requêtes similaires "