Je me risque à une traduction pour que tout le monde en profite, car c'est intéressant
Les 25 catégories d'erreurs de programmation les plus dangereuses sont organisées en trois grandes classes :
Communication non sécurisée entre composants
Ces faiblesses regroupent les différentes manières dont les données sont émises/reçues entre composants, modules, programmes, process, threads, ou systèmes.
* CWE-20: Validation insuffisante des entrées
* CWE-116: Filtrage/formatage ou échappement insuffisant des sorties
* CWE-89: Défauts de protection des requêtes SQL (aka 'SQL Injection')
* CWE-79: Défauts de protection de la structure de la page web (aka 'Cross-site Scripting')
* CWE-78: Défauts de protection des commandes système éxécutées (aka 'OS Command Injection')
* CWE-319: Transmission en clair d'informations sensibles
* CWE-352: Cross-Site Request Forgery (CSRF)
* CWE-362: Race Condition
* CWE-209: Fuite d'informations à travers les messages d'erreur
Prise de risque dans la gestion des ressources
Ces faiblesses couvrent les cas où le logiciel ne gère pas convenablement l'allocation, l'utilisation, le déplacement ou la destruction des ressources systèmes.
* CWE-119: Défaut de maîtrise de l'empreinte mémoire du programme.
* CWE-642: Externalisation du contrôle de données critiques
* CWE-73: Externalisation du contrôle de noms de fichiers/chemins
* CWE-426: Autorisation d'accès dans des emplacements hasardeux
* CWE-94: Défaut de perméabilité dans le code généré (aka 'Code Injection')
* CWE-494: Téléchargement de code éxécutable sans contrôle d'intégrité
* CWE-404: Défaut de libération des ressources allouées
* CWE-665: Initialisation incorrecte
* CWE-682: Calcul incorrect
Failles défensives
Ces faiblesses regroupent les cas où un mécanisme défensif essentiel est mal utilisé, détourné ou tout simplement ignoré.
* CWE-285: Défaut de contrôle d'accès (Authorization)
* CWE-327: Usage d'un mécanisme de chiffrement risqué ou compromis (ex : MD5)
* CWE-259: Mot de passe "en dur"
* CWE-732: Octroi de permission non sécurisée sur une partie-clé du programme
* CWE-330: Usage de valeurs aléatoires pas assez aléatoires.
* CWE-250: Usage de permissions supérieures au strict nécessaire.
* CWE-602: Réalisation côté client de mécanismes de sécurité essentiels au serveur