Carto-C est un outil de cartographie de code C. Il permet:

  • De trouver les erreurs potentielles d'exécution (RTE) par analyse statique de code, grâce à la souche de Frama-C sur laquelle il est basé
  • De trouver les points d'entrée et de sortie du code, y compris ceux auxquels le développeur n'aurait pas pensé. Cela inclut les fichiers, les entrées/sorties standard, les variables d'environnement, le réseau, la régionalisation, l'heure courante, etc
  • De trouver les points critiques du code qui dépendent de ces entrées ou dont ces sorties dépendent. Cela permet par exemple de trouver si un mot de passe s'échappe potentiellement sur la sortie d'erreur
  • De trouver les vulnérabilités liées aux fonctions de formatage et d'exécution (qui correspondent aux CWE 134 et 78)

L'évaluation de Carto-C quant à la détection des vulnérabilités est fondée sur la base de tests Juliet du NIST.