Timthumb script está comprometido - ¿Qué precauciones tomar? [cerrado]

2

Lea un artículo sobre el hecho de que el script Timthumb esté en peligro de hacer vulnerables las instalaciones WP. Fuente aquí

Echando un vistazo a timthumb.php, está la siguiente función, que supongo que es la culpable.

function checkExternal ($src) {

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

Dado que mi sitio está altamente personalizado (por lo tanto, es complicado actualizar Timthumb), ¿sería suficiente eliminar esos dominios externos, ya que todas las imágenes están alojadas en mi servidor y, por lo tanto, no requiere ninguno de los dominios de terceros?

    
pregunta Sledge81 03.08.2011 - 18:08

4 respuestas

6

Mejor manera: elimine el script timthumb de su servidor y cambie su tema para no requerirlo en primer lugar.

Timthumb no es realmente necesario con las versiones más recientes de WordPress. La función add_image_size () se puede usar para crear tamaños de imagen personalizados en el tema. Y la mayoría de los temas más antiguos que he visto que todavía lo usan lo usaban para crear una funcionalidad tipo "miniatura", que ahora está integrada en WordPress.

Lo único que TimThumb realmente hace que WordPress dificulta es el recorte personalizado, donde puede recortar imágenes de un lado u otro en lugar de hacer un método de recorte basado en el medio. Y la mayoría de los temas no utilizan esta funcionalidad.

    
respondido por el Otto 03.08.2011 - 18:25
1

Estoy de acuerdo con Otto en que sería mucho mejor usar the_post_thumbnail y add_image_size pero otra cosa que hace Timthumb es recortar imágenes sobre la marcha, así que en un sitio más antiguo con miles de imágenes tendrías que usar < a href="http://wordpress.org/extend/plugins/regenerate-thumbnails/"> Regenere miniaturas para volver a recortar, lo que sería una tarea especial, especialmente en alojamiento compartido.

Además de eliminar la matriz de sitios permitidos, asegúrese de que su servidor / alojamiento esté configurado para que no necesite 777 permisos en la carpeta de caché, que estoy seguro que funciona con suPHP pero que trabaja con DSO chown para nadie: nadie o www-data : www-data.

    
respondido por el Chris_O 03.08.2011 - 19:19
0

La fuente original para esto (enlace retenido) no proporcionó un vector de ataque real. Lo que significa que el código que mostró arriba se modificó de alguna manera para obtener un archivo .php remoto usando $allowedSites .

La forma en que se logró esto es todavía un misterio, ya que los artículos como estos realmente no pasan por los consejos adecuados ni reciben comentarios de otros, y parecen no tener idea de cómo alguien escribió una URL maliciosa (como fetchbadphpfile.com) en timthumb.php (o cualquier otro archivo).

Aunque esta es una mala codificación de parte de timthumb para no validar las URL (o lo que sea) todavía requiere un ataque ya sea a través de otro problema de seguridad o, lo más probable, un script preinyectado malicioso.

ps. En una nota lateral, timthumb.php realmente tenía un vector de ataque XSS documentado hace unas pocas versiones que pasó por varios avisos de seguridad y prácticamente no recibió atención ...

    
respondido por el Wyck 03.08.2011 - 19:35
0
  

WordThumb es una bifurcación y reescritura de timthumb.php después de timthumb   vulnerabilidad. Es totalmente compatible hacia atrás con timthumb y   ofrece mejor seguridad y un rendimiento igual o mejor.

enlace

    
respondido por el Refiner 05.08.2011 - 02:06

Lea otras preguntas en las etiquetas