Redirection 3.6.2 Cross-Site Request Forgery

Se ha encontrado una vulnerabilidad en el plugin Redirection aplicable a las versiones menores de la 3.6.3 donde está ya corregido.

En problema principal se encuentra en el acceso desde la API REST de WordPress, que incluye una variable no procesada, lo que permite incluir cualquier elemento pasado por parámetro.

Tal y como informan desde RIPS Technologies se podría hacer una llamada a algo como example.com/<?php evilCode(); ?>.

add_action( 'wp_ajax_red_proxy', array( $this, 'red_proxy' ) );

// This ajax callback simulates calls to the REST API
function red_proxy() {
  if ( $this->user_has_access() && isset( $_GET['rest_path'] ) && substr( $_GET['rest_path'], 0, 15 ) === 'redirection/v1/' ) {
    $_SERVER['HTTP_CONTENT_TYPE'] = 'application/json; charset=utf-8';
    $_SERVER['CONTENT_TYPE'] = $_SERVER['HTTP_CONTENT_TYPE'];
    $server = rest_get_server();
    $server->serve_request( rtrim( '/' . $_GET['rest_path'], '/' ) );
    die();
  }
}                     

La última versión corrige este problema, por lo que se recomienda la actualización del plugin.

WPVDB ID: 9155

Deja un comentario