Ir al contenido principal

Vulnerabilidades en Django (Septiembre 2013)

Vulnerabilidades en Django

En tan sólo cinco días se han ha publicado dos boletines de seguridad para el framework Django. Solucionan dos vulnerabilidades que afectan a la confidencialidad y disponibilidad del sistema.
Django es un framework de código abierto basado en Python para el desarrollo de sitios web siguiendo el patrón MVC (Modelo-Vista-Controlador). Fue publicado por primera vez en 2005, y desde entonces su uso ha experimentado un considerable crecimiento entre los desarrolladores, La última versión estable es la 1.5, encontrándose la versión 1.6 en fase de desarrollo.
La primera vulnerabilidad ha sido descubierta por Rainer Koirikivi y ha sido identificada como CVE-2013-4315. Es debida a un error al no restringir el acceso de la etiqueta para plantilla "ssi" únicamente a los directorios especificados en "TEMPLATE_DIRS". Esto podría permitir el acceso a directorios restringidos a través de un ataque de escalada de directorios.
Por ejemplo, si se utiliza la configuración "ALLOWED_INCLUDE_ROOTS" para incluir algún directorio como "/var/www", podría realizarse un ataque con el siguiente código:
{% ssi '/var/www/../../etc/passwd' %}
Su explotación de forma remota requiere que la plantilla haga uso de la etiqueta "ssi" y que el usuario pueda interactuar con ella y proporcionar la ruta como parámetro de dicha etiqueta.
Tan solo unos días después se ha corregido otra vulnerabilidad con identificador CVE-2013-1443. En esta ocasión se trata de una denegación de servicio, solventada de manera urgente ya que fue publicada antes de reportarla a los desarrolladores del framework.
El problema viene dado por el método por defecto para calcular el hash de las contraseñas (PBKDF2) utilizado por el módulo de autenticación 'django.contrib.auth', que es relativamente costoso de calcular, y la falta de limitación en la longitud de dichas contraseñas. Esto provocaría un excesivo consumo de recursos en el servidor. Un atacante remoto podría causar una denegación de servicio enviando sucesivas peticiones de autenticación con contraseñas de gran tamaño.
Django Software Foundation ha publicado las versiones 1.4.8, 1.5.4, y 1.6 beta 4 de Django que solucionan ambas vulnerabilidades. Se encuentran disponibles para su descarga en la página oficial.
Más información:
Security releases issued: directory traversal with ssi template tag
Security releases issued: denial-of-service via large passwords
Download Django
Index of Packages > Django


Fuente:
http://unaaldia.hispasec.com/2013/09/vulnerabilidades-en-django.html

Comentarios

Entradas populares de este blog

Codificación de Datos: Una Guía UTF-8 para PHP y MySQL

Desde toptotal nos cuentan.. "La codificación de Datos" esto creo que es una duda que nos ha surgido en algún punto cuando vamos iniciando en el mundo del desarrollo y es el desconocimiento de los diferentes formatos de codificación tenemos varias opciones pero hoy nos centraremos en el uso de UTF-8 y porque deberías usarlo. Como desarrollador  PHP  o  MySQL , una vez que pasas más allá de los confines de los cómodos conjuntos de caracteres sólo en inglés, te encuentras rápidamente enredado en el maravillosamente y extraño mundo de UTF-8. Una Mirada Rápida UTF-8 Primer Unicode es un estándar de la industria de computación ampliamente utilizado, que define un mapeo completo de valores únicos de códigos numéricos a los caracteres de la mayoría de los conjuntos de caracteres escritos hoy en día, para ayudar con la interoperabilidad de los sistemas y el intercambio de datos.  UTF-8 es una codificación de amplitud variable (variable-width encoding) que puede ...

Por Qué Los Startups Necesitan Una Guía De Estilo

Incluso para un diseñador con experiencia, crear una nueva guía de estilo para un producto es difícil—hay muchas direcciones de diseño posible, y el proceso puede rápidamente convertirse en algo abrumador. La vida del  startup  es bastante agitada, rápida, y llena de clichés como “la perfección es la enemiga de tener algo hecho”, “muévete rápido y rompe cosas”, o “lancemos ahora, arreglemoslo después”. Crear una guía de estilo bajo dichos eslóganes y prioridades fluctuantes es desafiante, pero es necesario si queremos que el diseño de un producto tenga éxito a largo plazo. La  Experiencia Global de Lenguaje (GEL) de la BBC explica el propósito de cada componente y cómo deberían ser utilizados. En años recientes, hemos escuchado mucho sobre sistemas de diseño, guías de estilo, librerías de patrones, y  diseño atómico . Y si bien estas herramientas son muy útiles, usarlas puede sentirse como un exceso cuando lo único que quieres es crear un par de pantalla...

Un Tutorial de Aprendizaje Profundo: De Perceptrones a Redes Profundas

IA (iiiii AAA) no .. no son solo un par de vocales son las siglas de "Inteligencia Artificial" un campo de la informática que estudia la inteligenia exhibida por las máquinas y hoy hablaremos de esto. Te vamos a enseñar conceptos básicos de IA de una forma fáci. Comencemos, el dia de hoy tenemos este super interesante artículo que nos comparten desde Toptotal.com sobre el "Aprendizaje profundo de perceptrones a redes profundas" y si te suena a Chino no lo es :) Te invito a que leeas este articulo: En los últimos años, ha habido un resurgimiento en el campo de la Inteligencia Artificial. Se ha extendido más allá del mundo académico, con grandes figuras como  Google , Microsoft y  Facebook , quienes han creado sus propios equipos de investigación, obteniendo impresionantes  adquisiciones . Se comenta que esto puede atribuirse a la gran cantidad de datos brutos generados por los usuarios de redes sociales, muchos de los cuales deben ser analizados, al igual qu...