Microsoft annonce VulnScan
Un service cloud d’automatisation du processus d’analyse des causes profondes d’une corruption mémoire

Microsoft a annoncé la mise à disposition d’un nouvel outil pour l’automatisation du processus d’analyse des causes profondes d’une corruption mémoire. Dénommé VulnScan, l’outil intègre une suite offerte via Microsoft Security Risk Detection, une plateforme cloud au travers de laquelle des entreprises obtiennent des rapports de tests de leurs applications.

Un coup d’œil à la page de présentation de la plateforme Microsoft Security Risk Detection et on sait qu’il s’agit d’une suite d’outils de test des applications par une méthode appelée fuzzing. Le fuzzer (ici, le service cloud de Microsoft) injecte à l’application ou au programme sous test des données spécialement générées pour provoquer un bogue. Le comportement du programme sous test est surveillé pour chaque jeu de données en entrée et, comme le souligne Microsoft, ce processus révèle une corruption mémoire dans la majorité des cas.

Pour rappel, une corruption mémoire survient lorsque des espaces mémoire réservés à une application sont modifiés de façon non maîtrisée par cette dernière (en réalité, par le programmeur). Résultat, la réutilisation des données au sein de ces espaces provoque des comportements inattendus. Un tel état de choses résulte des erreurs de programmation qu’il est question de débusquer et c’est là que VulnScan rentre en ligne de course.

L’outil est en effet capable de fournir des détails sur la trace d’exécution des fragments de code incriminés, le code source correspondant et la pile d’appels générés dans le cas d’une confusion de type, un spécimen de vulnérabilité pour lequel l’outil peut générer ce type de rapport. La firme de Redmond fait état de ce que les dépassements et les vulnérabilités de type UAF (se réfère à la tentative d'accéder à la mémoire après qu'elle a été libérée) entre autres sont pris en charge. En bas de page de publication, un premier niveau de détail, la trace d’exécution avec du code assembleur et des indications sur les vulnérabilités découvertes. L’outil génère ensuite un second rapport plus détaillé (exemple à consulter ici).

Dix mois déjà que Microsoft se sert de l’outil en interne pour peaufiner ses produits (Edge, Internet Explorer, la suite Office) et d’après la firme l’outil a donné des résultats satisfaisants dans 85 % des cas évitant au passage 500 heures de travail aux ingénieurs en tests de logiciel de l’équipe Microsoft Security Risk Detection. Il est désormais mis à la disposition des entreprises désireuses d’en tirer profit à leur tour. L’offre est soumise à la souscription au service Microsoft Security Risk Detection qui, faut-il le souligner, est gratuite pour un nombre limité d’entreprises, ce, pour une durée indéterminée. Passé cette période, il y aura un coût à consentir. Microsoft donnera très certainement les détails à ce propos le moment venu.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
[*]     Current instruction: test        byte ptr [rcx+4Ch],1[*]     Current position: 0x6328B80000001[*]     Source memory value: 0x1[*]     Tainting back register: rcx[*]     Register value: 0x0[*]     ----------------------------------------------------------------------[*]     Current instruction: mov         rcx,qword ptr [rcx+20h][*]     Current position: 0x6328B4000014E[*]     Source effective address: 0x1E3A54FDC20[*]     Source memory value: 0x0[*]     Memory is initialized @TTTPos: 1744423515849038.[*]     Memory was initialized![*]     Tainting back memory: 0x1E3A54FDC20[*]     ----------------------------------------------------------------------[*]     Current instruction: mov         qword ptr [rbx+20h],rax[*]     Current position: 0x6327FC00002AE[*]     Source memory value: 0x0[*]     Tainting back register: rax[*]     Register value: 0x0[*]     ----------------------------------------------------------------------[*]     Current instruction: xor         eax,eax[*]     Current position: 0x6327FC00002AD[*]     Tainted register got zeroed![*]     ----------------------------------------------------------------------

Sources : annonce VulnScan, page de présentation Microsoft Security Risk Detection


Et vous ?

Que pensez-vous de ce service ?

Utilisez-vous des outils similaires pour le test de vos applications ? Si oui, lesquels ?