ANALYSE DE CODE
Lors de l’étude d’un produit ou d’une application, les consultants de SECURYMIND peuvent être amené à analyser son code
source. L’addition des compétences liées au développement et celles liés à l’exploitation de vulnérabilités sur ces
composants leur permet de mettre à jour des problèmes sensibles mais également des solutions pertinentes et intégrables.
Objectifs :
L’analyse du code source d’un composant permet d’obtenir un niveau d’exhaustivité inatteignable via une approche
purement intrusif, elle demande cependant en général plus de temps et doit être dans un souci d’optimisation des
dépenses réservée aux éléments les plus sensibles.
Méthodologie :
Plusieurs approches sont envisageables :
- L’analyse purement statique qui consiste à une revue du code à la recherche d’erreurs de développement classiques :
- débordements de tampons (pour les langages laissant les problématiques de gestion de la mémoire aux
développeurs comme le C ou le C++) ;
- l’utilisation de fonctions système incontrôlées ;
- les requêtes SQL non maitrisées utilisant des entrées externes ;
- etc.
- L’analyse dynamique qui consiste à utiliser le code afin de lister les différents états et options d’entrées du
programme afin d’orienter les tests visant à injecter des entrées pouvant impacter l’exécution normale du composant ;
- Des solutions combinant les deux approches ou ciblant des parties spécifiques du code : les fonctions
d’authentification/habilitation par exemple).
L’offre SECURYMIND :
Les auditeurs du cabinet dispose d’une expérience importante dans l’analyse des applications :
- Web :
- PHP (classique ou objet) ;
- Java (J2EE) ;
- DotNET (C#, C++, J#) ;
- FLASH/AMF.
- Mobile :
- Objective C (pour les applications mobiles Iphone) ;
- JAVA.
- Embedded :