Heuristique en informatique : définition et fonctionnement

Heuristique en informatique : définition et fonctionnement

En informatique, l'heuristique est un algorithme qui permet de rapidement dénouer des difficultés complexes d'optimisation, sans concevoir une modélisation formelle. Cela ne se résout pas forcément par une solution optimale.

Qu'est-ce qu'une méthode heuristique en informatique ?

Un développement heuristique est une méthode de résolution de problèmes qui ne repose pas sur l’examen détaillé du dit problème. Cela consiste à travailler par approches successives. Par exemple, en faisant ressortir des similitudes avec des difficultés déjà rencontrées, afin de supprimer graduellement les alternatives et ne garder qu’un échantillon de solutions.

Le but sera de conserver celle qui est optimale par rapport au problème rencontré. Dans "la modélisation des systèmes complexes" (1991), Jean-Louis Le Moigne (célèbre spécialiste français de l’épistémologie et de la systémique) donne cette explication : "Une heuristique est un raisonnement formalisé de résolution de problèmes (représentable par une computation connue) dont on tient pour plausible mais non pour certain qu’il conduira à la détermination d’une solution satisfaisante du problème".

Bien que cette méthode heuristique consente à repérer de nouveau virus, ainsi que les versions de virus déjà connus, l’efficacité reste relativement faible, au regard de la quantité de faux positifs. De la même manière que les virus biologiques, les virus informatiques se modifient constamment et évoluent.

Comment fonctionne la carte heuristique ?

Les programmes d’antivirus exécutent le script du fichier dans un espace fictif, tout en analysant les procédures du logiciel. Cela permet d’expérimenter l’attitude du programme, tout en dissociant le code du fichier douteux de la machine existante. Si l’antivirus découvre des manipulations suspectes (comme l’éradication de fichiers ou la mise en route de processus multiples), le fichier sera détecté comme un virus et l’utilisateur en sera averti.

Une autre méthode admet la décompilation du programme concerné, pour une analyse de son code source par l’algorithme. Le code est confronté aux codes d’autres virus déjà rencontrés. Le programme sera considéré comme une menace, si la majorité de son code est reprise dans d’autres virus. Une carte heuristique peut être mise en place par l’utilisateur, sans recourir à un antivirus, en simulant l’activité de ce dernier. Cela revient au fait de lancer le fichier dans un outil virtuel. On observe ensuite le comportement du programme et l'état de l'outil virtuel pour trouver une solution.

A quoi sert la méthode heuristique dans la cybersécurité ? 

Le tout premier antivirus à avoir expérimenté une méthode d’analyse basée sur l’heuristique est Kill Them All sur Atari en 1993. De nos jours, dans les dernières mises à jour de Kaspersky, on retrouve ce bureau virtuel. Si l’internaute a un doute, il peut isoler l’application suspecte et l’utiliser en toute sécurité dans son bureau virtuel. Deep Freeze, quant à lui, sécurise la configuration de l’ordinateur et permet à l’internaute de faire ce dont il a besoin.

Matériel