CSIRTCV

Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es

05/08/2011

Vulnerabilitat 0-day en TimThumb de Wordpress

Recentment s'ha descobert una vulnerabilitat que podria permetre un atacant pujar codi PHP al servidor de forma arbitrària.

Risc: Crític

Timthumb.php és un script  senzill i flexible que permet redimensionar imatges i que ve amb molts temes de WordPress. Quan TimThumb tracta una imatge escriu en un directori que és accessible via web. El problema és que la utilitat no comprova correctament els dominis des dels quals se'ls permet rebre la imatge:

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

De esta manera, podremos subir nuestro código simplemente especificando alguno de los dominios del array en la URL. Por ejemplo:
http://blogger.com.somebadhackersite.com/shell.php

El servidor de Wordpress carregarà llavors el fitxer i l'emmagatzemarà en la memòria cau (/wp-content/themes/yourtheme/timthumbdir/trossege/shell.php), de tal forma que podrem executar-lo des del navegador i, en el cas de pujar un intèrpret d'ordes (shell), accedir a la màquina amb els privilegis del compte del servidor web...

Teniu en compte que es tracta d'un 0-day prou crític ja que una recerca en Google indica la presència de milers d'aquests scripts en la web...

Sistemes Afectats:

Versions anteiors a 1.34

Referències:

None

Solució:

Actualitzeu a l'última versió disponible (1.34), elimineu tots els dominis de l'array ($allowedSites = array();) si només es redimensionen imatges locals, o esborrar-lo directament si no s'utilitza.

Notes:

http://hackplayers.blogspot.com/2011/08/vulnerabilidad-0-day-en-timthumb-de.html
http://www.securityfocus.com/bid/48963/info
http://code.google.com/p/timthumb/issues/detail?id=212

Font: HackPlayers

CSIRT-CV