Vulnerabilidad de día cero en el complemento Duplicator para WordPress
Team Host.it 2 min de lectura
Contenido
Duplicator es un complemento muy útil para aquellos usuarios que desean migrar/copiar sitios de WordPress. Con Duplicator, los administradores pueden crear una nueva copia del sitio y el archivo de copia de seguridad generado se puede descargar desde el panel de WP.
La vulnerabilidad de día cero del complemento Duplicator. La explotación de la vulnerabilidad de día cero descubierta permite a los piratas informáticos descargar archivos arbitrariamente de los sitios de destino. Más de 1 millón de sitios web de WordPress se ven afectados por este problema de seguridad.
Cuando un usuario crea una copia de un sitio WP y hace clic en el botón "Descargar", se llama al controlador AJAX de WordPress con la acción duplicator_download y el parámetro de archivo.
Desafortunadamente, la acción duplicator_download se registró a través de wp_ajax_nopriv_ y, por lo tanto, era accesible para usuarios no autenticados. Para empeorar las cosas, no hubo validación para limitar las ubicaciones desde donde se podían descargar los archivos.
El parámetro del archivo se pasó a través de sanitize_text_field y se agregó a la constante del complemento DUPLICATOR_SSDIR_PATH; sin embargo, aún era posible un ataque transversal de directorio. Un atacante podría acceder a archivos fuera de la carpeta Duplicator, enviando valores como ../../../file.php para navegar a través de la estructura de carpetas del servidor.
Función WordFence duplicator_init() { if (isset($_GET['action']) && $_GET['action'] == 'duplicator_download') { $file = sanitize_text_field($_GET['file']); $filepath = DUPLICATOR_SSDIR_PATH.'/'.$file; // Descarga del proceso if(file_exists($filepath)) { // Limpiar el buffer de salida if (ob_get_level() !== 0 && @ob_end_clean() === FALSE) { @ob_clean(); } header('Descripción del contenido: Transferencia de archivos'); header('Tipo de contenido: aplicación/flujo de octeto'); header('Content-Disposition: adjunto; filename="'.basename($filepath).'"'); encabezado('Expira: 0'); header('Control de caché: debe revalidar'); encabezado('Pragma: público'); header('Contenido-Longitud: ' . Tamaño del archivo($filepath)); enjuagar(); // Vaciar el búfer de salida del sistema try { $fp = @fopen($filepath, 'r'); if (false === $fp) { throw new Exception('No se pudo abrir el archivo '.$filepath); } while (!feof($fp) && ($datos = fread($fp, DUPLICATOR_BUFFER_READ_WRITE_SIZE)) !== FALSE) { echo $datos; } @fclose($fp); } catch (Excepción $e) { readfile($filepath); } salida; } else { wp_die('¡¡Nombre de archivo de instalación no válido!!'); } } } add_action('init', 'duplicator_init'); ¿Cuáles son las señales de que esta vulnerabilidad ha sido explotada? Encontrar las siguientes cadenas en una solicitud GET indica que lo más probable es que el sitio haya sido objeto de atención de piratas informáticos.
acción=descarga_duplicador
Si su sitio está en Host, es seguro. Si su sitio está en Host.it no tiene nada que temer, de hecho todos nuestros nuevos perfiles de alojamiento compartido (Host Agile, Smart, Genius, 4.0 y 5.0) y alojamiento en la nube (Host Cloud) están protegidos por Cerbero, un sofisticado sistema de protección que incluye un innovador Firewall de aplicaciones web.
Las definiciones de Cerberus se actualizaron inmediatamente para prevenir y bloquear ataques destinados a explotar la vulnerabilidad Duplicator en WordPress.
Hosting WordPress
Hosting optimizado para WordPress
SSD, backups, SSL y Application Manager: publica y actualiza tu sitio con asistencia en italiano.
Artículos relacionados
Del blog
Del archivo