Recientemente fue descubierta una vulnerabilidad de inyección de código SQL en WordPress 3.0.1 y versiones anteriores. Al contrario de lo que dicen algunos sitios esta falla no afecta a la versión 3.0.2 ni tampoco a WordPress 3.1 alpha.

Para poder explotar esta vulnerabilidad el atacante necesita contar con permisos de autor,  eso quiere decir que debería poder publicar/editar entradas en el blog, lo que reduce un poco las probabilidades de una intrusión aunque es recomendable comprobar los permisos de los usuarios que estén registrados en su sitio.

Inyección de código SQL en WordPress 3.0.1

Para solucionar este problema se recomienda actualizar a la ultima versión disponible, la 3.0.2, que ya ha sido actualizada y no es vulnerable a esta falla.

De todas maneras quienes quieran realizar el parche manualmente, pueden actualizar el archivo «wp-includes/comment.php», mas precisamente en 1644 en WordPress 3.0.1, en donde podrán encontrar el error dentro de la función «do_trackbacks».

Código a buscar:

			if ( !in_array($tb_ping, $pinged) ) {
				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) );
			}

Reemplazar por:

			if ( !in_array($tb_ping, $pinged) ) {
				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) );
			}

Solo para recalcar, este error fue parte de las correcciones aplicadas en la versión 3.0.2, por lo que los sitios especializados en WordPress deberían chequear el changelog de las versiones antes de sembrar el pánico 😉

Enlaces relacionados:

WordPress: Information Disclosure via SQL Injection Attack
http://blog.sjinks.pro/wordpress/858-information-disclosure-via-sql-injection-attack/

Parche aplicado en la versión 3.0.2 (Changeset 16625)
http://core.trac.wordpress.org/changeset/16625

Vía Geekeries.fr

WordpressJose Carlos Norte hace publico en su blog Desvaríos informáticos, un error en el archivo wp-trackback.php de WordPress que le permitiria a un atacante malicioso realizar una denegación de servicio a un blog determinado corriendo bajo este sistema.

Hasta la fecha no hay parche oficial por lo que se recomienda aplicar manualmente la solución propuesta por Jose actualizar a la versión 2.8.5.

  1. Abrir el archivo wp-trackback.php
  2. Buscar la línea número 45 aproximadamente en donde dice:
    $charset = $_POST['charset'];
  3. Reemplazarla por el siguiente código:
    $charset = str_replace(",","",$_POST['charset']);
    if(is_array($charset)) { exit; }
  4. Guardar el archivo, y ya con eso deberíamos estar a salvo por ahora.

Aclaración, no sirve de nada desactivar los trackbacks desde WordPress, debido a que el error se encuentra antes de realizarse esa comprobación.

Actualicen, no sean vagos que el exploit ya ha sido publicado y es vulnerable la última versión (2.8.4) inclusive.

OpenAdsOpenAds es un servidor de anuncios de código abierto, que permite un control total sobre las campañas realizadas en nuestra web, hoy en día se podría decir que es el mas popular y utilizado del mercado.

La versión 2.4.3 corrige además de problemas menores una vulnerabilidad critica en el sistema de distribución de los anuncios que permitiría la inclusión y ejecución de código de manera arbitraria (RFI).

Se recomienda actualizar cuanto antes.

Release notes:
http://www.openads.org/products/openads/release-notes-2.4.3

Descargar OpenAds 2.4.3
http://download.openads.org/openads-2.4.3.zip