Vulnerabilidad crítica con timthumb.php – Tu Web no está segura ahora.

Actualización: 1/2/2012

Solo como información general, y para que nadie se espante, informo que esta vulnerabilidad fue subsanada en versiones posteriores a la fecha del post (5/8/2011)
Timthumb y WordThumb se volvieron a juntar para seguir el proyecto en conjunto.

Extendiendo un poco la noticia tomada de DragonJAR para que los webmasters tomen en cuenta la vulnerabilidad y arreglen sus webs antes de que sea tarde…

Artículo extendido de DragonJAR

Hace ya un tiempo os hablamos de la libreria timthimb para encoger imágenes
Hoy leyendo mi RSS vi una noticia inquietante Mark Maunder, CEO de Feedjit, ha encontrado una vulnerabilidad crítica en timthumb.

Al parecer, timthumb permite cargar imágenes desde url externas.

Así que fue de ese bug del que se han aprovechado.
 
 
 
 
 
 
 
 
 
 
 

$allowedSites = array (
	'flickr.com',
	'picasa.com',
	'blogger.com',
	'wordpress.com',
	'img.youtube.com',
	'upload.wikimedia.org',
	'photobucket.com',
);

Sin embargo, no comprueba correctamente que estas url sean correctas, por lo que podríamos incluir lo siguiente:

http://blogger.com.dominio.com/badscript.php

Y timthumb incluiría el script badscript.php en nuestra carpeta cache.

Que consecuencias tiene ello?

Bien, subir un fichero PHP nos da un control casi total sobre el servidor.
Sabiendo programar podemos obtener los archivos config (y con ello las contraseñas de las base de datos), podemos eliminar, modificar y crear páginas web.
Podemos agregar enlaces maliciosos o de spam en los sitios, etc…

¿Como se si me afecta?

Hay miles de plantillas de wordpress creadas con timthumb.
Si tu plantilla es de los siguientes sitios probablemente esté afectada: Woothemes, Elegantthemes, Themeforest, templatic.

Para saber si te afecta, mira el código fuente de tu página y busca timthumb.php o thumb.php

Ok, la vulnerabilidad me afecta. Pero ¿cómo lo arreglo?

Si tienes plantilla y cuenta en Woothemes ya puedes descargar la plantilla actualizada y cambiar el thumb.php por tu antiguo thumb.php
Si no tienes cuenta en Woothemes hay que hacerlo manual.

Acceder a timthumb y bajar la versión 1.33
En la línea 27 se recomienda eliminar todos los dominos

($allowedSites = array();)

Y verificar que allow_external esté establecido en false

define ('ALLOW_EXTERNAL', FALSE);           // allow external website (override security precaution - not advised!)

WordThumb la versión segura de TimThumb

También se ha creado una versión segura de Timthumb llamada WordThumb.
Puede descargarse desde google code

Soporte

Si no has entendido nada, te resulta muy complicado o simplemente no tienes tiempo.

En skamasle ofrecemos nuestro soporte para realizar las modificaciones de seguridad.
Realizando los nuevos cambios a Timthumb por 5$ o adaptando a tu themes WordThumb por 10$.

Simplemente ponte en contacto con nosotros a través del formulario de contacto, mi cuenta de twitter @nax_hh, y para los que ya tengan mi email, por email.

Si es por el formulario o email indiquen el dominio web para asegurarnos de que es vulnerable y cual de las dos modificaciones desean realizar.
Así mismo les solicitaremos acceso al ftp para poder realizar las modificaciones.

Esperamos solucionen pronto esta vulnerabilidad crítica. Y agradecemos a @dragonJAR por informarnos


Así nos han encontrado!

  • timthumb php
  • yhs-fullyhosted_003
  • timthumb vulnerabilidad
  • vulnerabilidad timthumb

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">