Vulnerabilidad «0 day» en WordPress

Todas las versiones de WordPress, incluidas la 3.0.2 actual y hasta la alpha de WordPress 3.1, están afectadas por una vulnerabilidad «0 day«. Si no has actualizado a WordPress 3.0.2 o la versión alpha de la 3.1 debes hacerlo o eres vulnerable. Se forma mediante la función «do_trackbacks» y, por tanto, permite una inyección SQL. Los atacantes (remotos) pueden ejecutar comandos SQL directamente en tu instalación de WordPress.

Por el momento, no hay nueva actualización disponible que solucione esta vulnerabilidad. Si no quieres actualizar el autor del artículo que la ha descubierto, nos da un parche para pegar en el archivo «comment.php» en la carpeta «wp -includes«.

1. Localiza el código vulnerable

Haz una copia de seguridad del fichero «comment.php». Ábrelo y encontrarás la línea 1723 en WordPress 3.1, o la línea de 1644 en WordPress 3.0.2. Encontrarás algo así:

trackback($tb_ping, $post_title, $excerpt, $post_id);
$pinged[] = $tb_ping;
} else {
$wpdb->query( $wpdb->prepare("UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, %s, '')) WHERE ID = %d", $tb_ping, $post_id) );
}
}
}
}

2. Sustituye la cadena vulnerable

Para solucionar la vulnerabilidad solo tienes que sustituir el código anterior por este otro:

trackback($tb_ping, $post_title, $excerpt, $post_id);
$pinged[] = $tb_ping;
} else {
-               $wpdb->query( $wpdb->prepare("UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, '$tb_ping', '')) WHERE ID = %d", $post_id) );
+               $wpdb->query( $wpdb->prepare("UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, %s, '')) WHERE ID = %d", $tb_ping, $post_id) );
}
}
}
}

Guarda los cambios y ya estás protegido hasta la siguiente. Yo ya he realizado estos cambios. Si no has actualizado, no tardes.

Visto en Geekeries

(0 votos, promedio: 0) Valora este artículo para ayudar a mejorar la calidad del blog

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado. ¡Ah! ¿te funciona? pues entonces no he dicho nada :)

Sobre el autor

23 comentarios en “Vulnerabilidad «0 day» en WordPress”

  1. Lei el articulo del autor y según comprendo necesitas tener un rol de "Autor" para poder publicar y modificar un post. Así que es -probable- que los blogs monousuario esten a salvo.

  2. Hola!
    Pues he realizado este cambio, pero si bien no tengo la seguridad que se deba a esto, ahora no puedo gestionar mas los comentario ni el spam de mi blog.

  3. Hola!
    Pues he hecho muchas pruebas y luego de reinstalar la actualización automáticamente volví a tener acceso a la gestión de comentarios y spam.
    Volví a realizar el cambio que uds proponen en comments.php y se volvio a bloquear el acceso a comentario y spam.

  4. Hola!
    Pues he hecho muchas pruebas y luego de reinstalar la actualización automáticamente volví a tener acceso a la gestión de comentarios y spam.
    Volví a realizar el cambio que uds proponen en comments.php y se volvio a bloquear el acceso a comentario y spam.

  5. Ahora si hay una nueva actualizacion que corrige un bug en las publicaciones remotas.
    wordpress.org/news/2010/12/wordpress-3-0-3/

Deja un comentario

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

Información base sobre privacidad:
  • Responsable: Fernando Tellado ([email protected])
  • Fin del tratamiento: Moderación de comentarios para evitar spam
  • Legitimación: Tu consentimiento
  • Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
  • Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba Ir al contenido