Le jeudi 27 janvier 2005 à 11:14 +0100, CHAROLOIS Raphaël a écrit : > Il reste un "scanner" : comment est-ce traduit d'habitude ?
J'ai remplacé "scannant" par "parcourant" ça passe mieux. En revanche, je n'ai rien à proposer pour le substantif "scanner". Merci à Raphaël CHAROLOIS et Philippe Grenard pour leurs relectures. -- Simon Paillard <[EMAIL PROTECTED]>
#use wml::debian::translation-check translation="1.13" maintainer="DFS Task Force" #use wml::debian::template title="Outils d'audit de sécurité" #use wml::debian::recent_list <p>Plusieurs paquets disponibles dans l'archive Debian sont destinés à faciliter les audits de code source. Sont inclus :</p> <ul> <li><a href="http://packages.debian.org/flawfinder">Flawfinder</a> <ul> <li><a href="examples/flawfinder">Exemple d'utilisation de flawfinder</a></li> </ul></li> <li><a href="http://packages.debian.org/its4">ITS4</a> <ul> <li>Il n'y a pas d'exemple fourni pour ITS4 puisque celui-ci a été enlevé de la distribution instable (<i>Sid</i>).</li> </ul> </li> <li><a href="http://packages.debian.org/rats">RATS</a> <ul> <li><a href="examples/RATS">Exemple d'utilisation de RATS</a></li> </ul></li> <li><a href="http://packages.debian.org/pscan">pscan</a> <ul> <li><a href="examples/pscan">Exemple d'utilisation de pscan</a></li> </ul></li> </ul> <p>Aucun de ces outils n'est parfait. Ils ne peuvent être utilisés que comme point de départ pour des études plus poussées. Mais étant donné leur simplicité d'utilisation, cela vaut le coup de passer du temps à les essayer.</p> <p>Chaque outil a ses avantages et ses inconvénients. C'est pourquoi il est recommandé d'en utiliser plus d'un.</p> <h2>Flawfinder</h2> <p>flawfinder est un outil codé en Python destiné à analyser du code source C et C++ à la recherche de défauts de sécurité potentiels.</p> <p>Lorsqu'il est exécuté dans un répertoire contenant du code source, la liste des problèmes potentiels détectés est générée, triés par risque (où la variable <i>risk</i> est un entier entre 1 et 5). Pour ignorer les risques mineurs, il est possible de configurer le programme pour de ne pas lister les défauts en dessous d'un certain niveau de risque. Par défaut, la sortie sera formatée en texte brut, mais une sortie au format HTML est également disponible.</p> <p>Le programme fonctionne en parcourant le code à la recherche de fonctions connues pour être couramment mal utilisées.</p> <p>Afin de faciliter la lecture du rapport, il est possible de générer un rapport contenant la ligne du code source, contenant la fonction utilisée. Cela peut être utile pour détecter immédiatement un problème, ou également l'éliminer.</p> <p>Vous pouvez voir un exemple de la façon dont est utilisé flawfinder, ainsi que le rapport qu'il génère dans la <a href="examples/">section des exemples d'audit</a>.</p> <h2>ITS4</h2> <p>ITS4 est un outil appartenant à la section <i>non-free</i> de l'archive Debian, qui est disponible uniquement pour l'actuelle distribution stable (<i>Woody</i>).</p> <p>ITS4 peut être utilisé pour chercher dans du code source C et C++ de potentielles failles de sécurité, de même que flawfinder.</p> <p>Le rapport généré essaie d'être pertinent, en exluant une partie des cas où les appels à des fonctions dangereuses ont été faits avec précaution.</p> <h2>RATS</h2> <p>RATS est un outil similaire à ceux listés ci-dessus, excepté qu'il supporte plus de langages. Actuellement sont supportés C, C++, Perl, PHP et Python.</p> <p>Cet outil utilise un simple fichier XML pour obtenir les vulnérabilités, ce qui en fait l'outil le plus simple à modifier. De nouvelles fonctions peuvent être ajoutées facilement pour chaque langage supporté.</p> <p>Vous pouvez voir un exemple d'utilisation de RATS et le rapport généré dans la <a href="examples/">section des exemples d'audit</a>.</p> <h2>pscan</h2> <p>pscan diffère des outils précédemment décrits, car ce n'est pas du tout un scanner généraliste. Au contraire, c'est un programme qui vise spécifiquement la détection de bogues dans le format des chaînes de caractères.</p> <p>L'outil essaiera de trouver des problèmes potentiels dans l'utilisation des fonctions variadiques (pouvant accepter un nombre variable d'arguments) dans du code C et C++, par exemple les fonctions <tt>printf</tt>, <tt>fprintf</tt> et <tt>syslog</tt>.</p> <p>Les bogues de format des chaînes de caractères sont facilement détectables et réparables. Ainsi, bien qu'ils constituent la nouvelle génération d'attaques logicielles, la majorité d'entre eux ont sans doute déjà été trouvés et corrigés.</p> <p>Vous pouvez voir un exemple d'utilisation de pscan et le rapport généré dans la <a href="examples/">section des exemples d'audit</a>.</p> <h2>Comprendre les résultats du scanner</h2> <p>Chaque tous les outils généralistes de recherche fournissent des résultats incluant la description du défaut détecté, et dans certains cas un conseil pour corriger le code.</p> <p>Par exemple, ce qui suit est tiré du rapport généré par RATS et décrit les dangers de <tt>getenv</tt> :</p> <p>"Les variables d'environnement sont des paramètres d'entrée auxquels on ne peut pas faire confiance. Ils peuvent être de toute taille, et contenir n'importe quelles données. Ne faites pas d'hypothèse sur leur contenu ou leur taille. Evitez si possible de les utiliser, et si cela est nécessaire, vérifiez-les et tronquez-les à une taille raisonnable."</p> <p>Si vous avez besoin de conseils avancés sur la manière de corriger une vulnérabilité rapportée, vous devriez étudier un ouvrage sur la manière de programmer sûrement, tel que l'ouvrage <a href="http://www.dwheeler.com/secure-programs/">Secure Programming for Linux and Unix HOWTO</a> par David A. Wheller.</p> <p>(Rappelez-vous qu'une rustine bouchant le trou de sécurité est grandement appréciée lorsque vous rapportez un bogue de sécurité)</p> <p>Des discussions portant sur la correction de portions de code particulièrement problématiques peuvent également se tenir sur la <a href="http://shellcode.org/mailman/listinfo/debian-audit">liste de diffusion debian-audit</a>. Veillez simplement à ne pas rendre évident le nom du programme concerné par le défaut.</p>
signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=