Analyses de code et recherche de vulnérabilités

Magazine
Marque
MISC
HS n°
Numéro
9
Mois de parution
juin 2014
Domaines


Résumé

La recherche de vulnérabilités est généralement menée en plusieurs étapes : identifier des parties du code potentiellement dangereuses puis étudier la possibilité de les exploiter, par exemple pour corrompre la mémoire. Dans cet article, nous montrons comment des techniques d'analyse statique de code apportent une aide significative à ces étapes.


1. Détection de vulnérabilités

Détecter des vulnérabilités est un processus complexe, d'autant plus que les applications grossissent et que les vulnérabilités exploitées deviennent de plus en plus sophistiquées. Pour illustrer cette montée en complexité, il suffit de prendre pour exemple l'édition 2014 du concours Pwn2Own. Durant cette édition, tous les navigateurs web ont pu être mis en défaut. Cependant, la difficulté à trouver les vulnérabilités et la complexité des exploits obtenus sont révélatrices du niveau d'expertise nécessaire. Par exemple, la société Vupen a expliqué qu'elle a dû effectuer 60 millions de tests sur Firefox pour trouver un 0-day [1]. Il devient donc nécessaire de disposer d'outils assistant au mieux le processus de recherche de vulnérabilités. Dans cet article, nous montrons comment des techniques reposant sur l'analyse de code (source ou assembleur) peuvent être utilisées dans ce processus.

Précisons tout d'abord la...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Sûreté mémoire : le temps des cerises

Magazine
Marque
MISC
Numéro
113
Mois de parution
janvier 2021
Domaines
Résumé

L’étude et la compréhension des buffer overflow datent de 1972, et leurs premiers usages documentés de 1988 [1]. Près de 50 ans plus tard, où en sommes-nous ? Il nous faut bien admettre que la situation est déprimante : Microsoft et Google reconnaissent chacun ([2], [3]) que près de 2/3 des attaques utilisent à un moment ou un autre une vulnérabilité mémoire. Le ver Morris, qui n’était au départ qu’une preuve de concept, avait quand même coûté la bagatelle de quelques millions de dollars à l’époque… Aujourd’hui, les coûts sont abyssaux : sur le plan financier bien sûr, mais aussi pour nos vies privées, voire nos vies tout court. Face à ce problème, de nombreuses approches sont possibles : analyse statique du code, instrumentation et vérification à l’exécution, langages « sûrs »… Je vous propose d’explorer dans cet article un vieux concept remis au goût du jour, les capabilities, et tout ce qu’elles pourraient nous permettre de faire.

Réinvention de la roue... des temporisations

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
112
Mois de parution
janvier 2021
Domaines
Résumé

Les temporisations sont essentielles au sein des systèmes d'exploitation et dans certaines applications, pour déclencher des actions à l'échéance d'un délai. Il existe différents algorithmes pour les gérer de manière efficace. Cet article présente la fusion de deux d'entre eux, pour en tirer le meilleur.

Zerologon pour les (mots de passe) nuls

Magazine
Marque
MISC
Numéro
113
Mois de parution
janvier 2021
Domaines
Résumé

ZeroLogon est LA vulnérabilité de septembre 2020 qui expose de nombreux domaines Windows à une compromission totale via un scénario d’exploitation réaliste et fiable. Mais ce qui donne à Zerologon ses lettres de noblesse c’est qu’elle repose essentiellement sur la mauvaise utilisation d’un algorithme cryptographique permettant de réaliser une attaque à clair choisi particulièrement astucieuse. Zoom sur la vulnérabilité la plus passionnante de la rentrée 2020 !

Mesure fine de déplacement par RADAR interférométrique à synthèse d’ouverture (InSAR) par radio logicielle

Magazine
Marque
GNU/Linux Magazine
Numéro
244
Mois de parution
janvier 2021
Domaines
Résumé

Nous avons démontré dans le premier article de la série la capacité à mesurer la distance à une cible (range compression), puis dans un deuxième temps à détecter l’angle d’arrivée du signal (azimuth compression). Fort de cette capacité de cartographier des cibles, nous allons conclure cette série sur la conception de RADAR à base de radio logicielle, et le traitement des signaux associé, par la mesure fine de déplacement des cibles par analyse de la phase (interférométrie) du signal, lors de la répétition des mesures.