L’analyse morphologique© est une technologie de rupture pour l’analyse de codes binaires. Elle est le fruit de plusieurs années de recherche au LORIA, un laboratoire de recherche situé à Nancy. C’est une solution rapide et passant à l’échelle pour trouver les similarités entre différents logiciels.

Quelques uns de nos secrets : Les codes malveillants sont protégés contre leur analyse. L'équipe a développé des solutions originales de désassemblage, de reconstitution de vagues de code, des contre-mesures anti-virtualisation, de construction de graphe de contrôle de flot.
A partir de ces graphes qui nous servent de base de travail, l'analyse morphologique consiste à les renormaliser pour contourner les obfuscations courantes des codes malveillants.
Les graphes une fois renormalisés servent de signature. Les bases de données ont été optimisées pour prendre peu d'espace mémoire et le moteur de reconnaissance est profilé pour des temps de réponses ultra-rapides.
Pour que ces étapes fonctionnent correctement, certains pièges ont dû être évités. Premièrement, le calcul du graphe de flot de contrôles est un problème indécidable. Une analyse dynamique doit être combinée avec un désassemblage statique pour obtenir le bon résultat dans la plupart des cas. Deuxièmement, le partage de code binaire n’est pas toujours spécifique et peut induire des faux positifs. Par exemple, des logiciels très différents peuvent embarquer de manière statique les mêmes librairies standard. L’utilisation d’une liste blanche comme paramètre de la réécriture de graphe est une façon d’obtenir un graphe de flot de contrôles plus abstrait.
Nous travaillons maintenant sur les flots de données pour apporter plus d’informations utiles à nos algorithmes.


Demonstration

Cliquez ici pour voir une démonstration du logiciel d'analyse morphologique©

Cliquez ici