WordPress 2.8.5
Si, ya hay otra nueva actualización de Wordpress (2.8.5) que viene a solucionar algunos problemas de seguridad. Tampoco significa que si no actualizas cuanto antes vayan a entrar en tu blog, podrían hacer que tu sitio consuma más recursos de los que debería. De todos modos deberías actualizar, no te quita más de unos minutos.
El problema principal que soluciona esta actualización tiene que ver con los trackbacks y un ataque especial que puede afectar a cualquier blog que una versión anterior a WordPress 2.8.5. El ataque está explicado a detalle en Desvaríos informáticos (y en mi opinión un tanto exagerado sobre el impacto en la seguridad). Dicho ataque tiene que ver con la función mb_convert_encoding()
y de como WordPress maneja los valores de entrada. Este es el código en donde se utiliza mb_conver_encoding()
:
if ( function_exists(’mb_convert_encoding’) ) { // For international trackbacks $title = mb_convert_encoding($title, get_option(’blog_charset’), $charset); $excerpt = mb_convert_encoding($excerpt, get_option(’blog_charset’), $charset); $blog_name = mb_convert_encoding($blog_name, get_option(’blog_charset’), $charset); }
El valor de $charset
viene de $_POST['charset']
y contiene los juegos de caracteres (separador por coma) que posiblemente se hayan usado en los textos de la petición; no se controla su valor ni le limita su tamaño. El problema viene a ser cuando se utiliza como argumento en mb_convert_encoding()
, si se envía una petición donde $title
y $charset
sean absurdamente grandes (350KB según el ejemplo en Desvaríos informáticos), mb_convert_encoding()
haría demasiadas comprobaciones, tomando hasta varios minutos por cada petición.
El impacto obviamente depende de la configuración del servidor y las capacidades de este, pero como la mayoría no tenemos un servidor dedicado, nos dejarán con el servidor atascado. La solución a este problema consiste en limitar $charset
para que solo permita indicar un juego de caracteres (al eliminar las comas):
$charset = str_replace( array(',', ' '), '', strtoupper( trim($charset) ) );
Solo queda el caso de si $_POST['charset']
fue definido como un Array (y que WordPress no lo soluciona explícitamente) ya que mb_convert_encoding()
también permite definir la lista de juegos de caracteres de esta forma. Por si acaso, modifiqué el parche de Wordpres incluyendo:
$charset = (string) $_POST['charset'];
Con eso debería cerrarse la puerta a problemas por esa parte. WordPress 2.8.5 soluciona otros problemas menores que nunca dejan de aparecer, pueden ver la lista completa de cambios y bajar solo los archivos modificados desde WordPress 2.8.4
[…] trobar una explicació detallada sobre l’actualització del WordPress a la versió 2.8.5 a Maestros del Web. Us en recomanem l’actualització com abans millor, utilitzant l’autoactualitzador del […]
Actualizado! Gracias =)
Tengo un problema actualize a la versión 2.8.5 y no puedo subir las imagenes,alguien me puede ayudar.
Muy buen recurso para diseñar paginas web, facil y muy bien desarrollado…
Es cierto que el wordpress pres ofrece como una especie de blog pero una pregunta esto de las versiones se puede instalar en cualquier cuenta de hosting