Le samedi 30 avril 2005 à 14:55 +0200, Simon Paillard a écrit : > Bonjour, > > Voici une relecture suite à la mise à jour de la vo (ajout d'un lien) > J'ai également corrigé un problème d'accent sur une majuscule. > > Merci pour vos relectures. Merci à Bernard Gisbert pour sa relecture. -<a href="http://hinterhof.net/~max/audit-perl/">Audit::Source</a>.</p> +<a href="http://hinterhof.net/~max/audit-perl/">Audit:Source</a>.</p> Je n'ai pas intégré cette correction, car un module perl a bien :: dans son nom. -néanmoins être utiles à auditeur, notamment :</p> +néanmoins être utiles à l'auditeur, notamment :</p> C'est intégré. -- Simon Paillard <simon.paillard@resel.enst-bretagne.fr>
#use wml::debian::translation-check translation="1.16" 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>Max Vozeler a écrit un ensemble de modules perl pour quelques uns de ces outils, qui pourrait vous être utile si vous vous intéressez à l'audit automatique des performances. Vous pouvez trouver tous ces modules sur sa page <a href="http://hinterhof.net/~max/audit-perl/">Audit::Source</a>.</p> <p>De plus, il existe d'autres outils spécifiques à un domaine spécifique des vulnérabilités, qui n'ont pas encore été empaquetés pour Debian mais peuvent néanmoins être utiles à l'auditeur, notamment :</p> <ul> <li>Outils relatifs aux bogues XSS : <ul> <li><a href="http://freshmeat.net/projects/xsslint/">Xsslint</A></li> <li><a href="http://www.devitry.com/screamingCSS.html">ScreamingCSS</A></li> </ul></li> <li>Outils de test de navigateur web : <ul> <li><a href="http://www.securityfocus.com/archive/1/378632">MangleMe</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 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 excluant 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>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. Évitez 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 <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>
Attachment:
signature.asc
Description: This is a digitally signed message part