Saludos -- Laura Arjona https://wiki.debian.org/LauraArjona
#use wml::debian::template title="Herramientas para auditar la seguridad" #use wml::debian::recent_list #use wml::debian::translation-check translation="1.24" maintainer="Juan M. Garcia" <p>Hay varios paquetes disponibles en el archivo de Debian que están diseñados para dar asistencia a las auditorÃas de código fuente. Entre ellos están:</p> <ul> <li><a href="https://packages.debian.org/flawfinder">Flawfinder</a> <ul> <li><a href="examples/flawfinder">Ejemplo de uso de flawfinder.</a></li> </ul></li> <li><a href="http://archive.debian.net/woody/its4">ITS4</a> <ul> <li>No hay ejemplo para ITS4, porque se ha eliminado de la distribución inestable.</li> </ul></li> <li><a href="https://packages.debian.org/rats">RATS</a> <ul> <li><a href="examples/RATS">Ejemplo de uso de RATS.</a></li> </ul></li> <li><a href="https://packages.debian.org/pscan">pscan</a> <ul> <li><a href="examples/pscan">Ejemplo de uso de pscan.</a></li> </ul></li> </ul> <p>Tenga en cuenta también que hay algunas otras herramientas especÃficas para una serie de vulnerabilidades de seguridad que aún no se han empaquetado para Debian pero que pueden ser útiles para los auditores. Entre ellas están:</p> <ul> <li>Herramientas especÃficas para errores de XSS: <ul> <li><a href="http://freecode.com/projects/xsslint/">Xsslint</a></li> <li><a href="http://www.devitry.com/screamingCSS.html">ScreamingCSS</a></li> </ul></li> <li>Herramientas para probar navegadores web: <ul> <li><a href="http://www.securityfocus.com/archive/1/378632">MangleMe</a></li> </ul></li> </ul> <p>Ninguna de las herramientas es perfecta, y sólo se pueden usar como guÃas para un posterior estudio, pero dado que su uso es muy sencillo, es preferible invertir algo de tiempo en probarlas.</p> <p>Cada una de las herramientas tienen distintos puntos fuertes y débiles, por lo que se recomienda usar más de una.</p> <h2>Flawfinder</h2> <p>flawfinder es una herramienta de Python diseñada para analizar código fuente C y C++ en busca de potenciales debilidades de seguridad.</p> <p>Cuando se hace funcionar sobre un directorio que contiene código fuente, se obtiene un informe de los problemas potenciales que ha detectado, ordenados por riesgo (<i>riesgo</i> es un entero de 1 a 5). Para obviar los riesgos menores, es posible decirle al programa que no informe sobre debilidades menores de un nivel de riesgo particular. De forma predefinida, la salida aparecerá en texto plano, pero también hay disponible un informe en HTML.</p> <p>El programa funciona escaneando el código y buscando el uso de las funciones que tiene en su base de datos de funciones que normalmente se usan mal.</p> <p>Para facilitar la lectura del informe, se puede indicar que contenga la lÃnea en la que se usa la función, lo que puede ser útil apra detectar un problema inmediatamente, ya que de otra forma podrÃa ser imposible.</p> <p>Puede ver un ejemplo de uso de flawfinder y de su salida en la <a href="examples/">sección de ejemplos de auditorÃa</a>.</p> <h2>ITS4</h2> <p>ITS4 es una herramienta que pertenece a la sección non-free (no libre) del archivo de Debian, y sólo está disponible para la distribución <q>woody</q>.</p> <p>ITS4 se puede usar para buscar potenciales agujeros de seguridad en C y C++, al igual que flawfinder.</p> <p>La salida que produce pretende ser inteligente, ya que no tiene en cuenta algunos de los casos en los que las llamadas a las funciones peligrosas se han hecho con cuidado.</p> <h2>RATS</h2> <p>RATS es una herramienta similar a las citadas anteriormente, con la excepción de que admite un mayor abanico de lenguajes. En la actualidad, tiene soporte para C, C++, Perl, PHP y Python.</p> <p>La herramienta usa un archivo XML sencillo para leer sus vulnerabilidades, lo que la convierte en una de las herramientas más sencillas para hacer modificaciones. Fácilmente se pueden añadir funciones nuevas para cada uno de los lenguajes soportados.</p> <p>Puede ver un ejemplo de uso de RATS y de su salida en la <a href="examples/">sección de ejemplos de auditorÃa</a>.</p> <h2>pscan</h2> <p>pscan difiere de las herramientas anteriores en que no es un analizador de propósito general. Se trata de un programa especÃfico para ayudar a detectar errores de cadena de formato.</p> <p>La herramienta intentará encontrar incidencias en el uso de funciones variadic (n.t. que no siempre toman el mismo número de argumentos) en código fuente C y C++, como <tt>printf</tt>, <tt>fprintf</tt> y <tt>syslog</tt>.</p> <p>Los errores de cadena de formato son bastante sencillos de detectar y corregir. A pesar de que sean el tipo más reciente de ataques de software, la mayorÃa de ellos ya se pueden descubrir y reparar.</p> <p>Puede ver un ejemplo de uso de pscan y de su salida en la <a href="examples/">sección de ejemplos de auditorÃa</a>.</p> <h2>Comprender la salida del analizador</h2> <p>Cada una de las herramientas generales de análisis incluye una salida que describe la debilidad detectada y, posiblemente, algunos consejos para reparar el código.</p> <p>Por ejemplo, lo siguiente se ha tomado de la salida de RATS y describe el peligro de <tt>getenv</tt>:</p> <p>"Environment variables are highly untrustable input. They may be of any length, and contain any data. Do not make any assumptions regarding content or length. If at all possible avoid using them, and if it is necessary, sanitize them and truncate them to a reasonable length."</p> <p>Si necesita alguna pista más para corregir un agujero del que ya se ha informado, deberÃa estudiar un libro de programación segura, como <a href="http://www.dwheeler.com/secure-programs/">Secure Programming for Linux and Unix HOWTO</a> (n.t. en inglés), de David A. Wheeler.</p> <p>(Cuando informe de las cuestiones de seguridad, recuerde que se aprecia mucho un parche que cierre el agujero).</p> <p>Las discusiones relativas a cerrar un trozo de código problemático también se pueden llevar a cabo en la <a href="https://lists.debian.org/debian-security/">lista de correo debian- security</a>, simplemente, al ser ésta una lista pública con archivos públicos, tenga cuidado de no ser demasiado explÃcito a la hora de decir qué programa tiene la debilidad.</p>
Attachment:
0x7E4AF4A3.asc
Description: application/pgp-keys
Attachment:
signature.asc
Description: OpenPGP digital signature