Vulnérabilité Zero-Day dans le plugin Duplicator pour WordPress
Team Host.it 2 min de lecture
Contenu
Duplicator est un plugin très utile pour les utilisateurs qui souhaitent migrer/copier des sites WordPress. Avec Duplicator, les administrateurs peuvent créer une nouvelle copie du site et le fichier de sauvegarde généré peut être téléchargé à partir du tableau de bord WP.
La vulnérabilité Zero-Day du plugin Duplicator. L'exploitation de la vulnérabilité Zero Day découverte permet aux pirates de télécharger arbitrairement des fichiers à partir de sites cibles. Plus d’un million de sites WordPress sont concernés par ce problème de sécurité.
Lorsqu'un utilisateur crée une copie d'un site WP et clique sur le bouton "Télécharger", le gestionnaire WordPress AJAX est appelé avec l'action duplicator_download et le paramètre file.
Malheureusement, l'action duplicator_download a été enregistrée via wp_ajax_nopriv_ et était donc accessible aux utilisateurs non authentifiés. Pour aggraver les choses, il n'y avait aucune validation pour limiter les emplacements à partir desquels les fichiers pouvaient être téléchargés.
Le paramètre file a été transmis via sanitize_text_field et ajouté à la constante du plugin DUPLICATOR_SSDIR_PATH , mais une attaque Directory Traversal était toujours possible. Un attaquant pourrait accéder aux fichiers en dehors du dossier Duplicator, en envoyant des valeurs telles que ../../../file.php pour naviguer dans la structure des dossiers du serveur.
Fonction WordFence duplicator_init() { if (isset($_GET['action']) && $_GET['action'] == 'duplicator_download') { $file = sanitize_text_field($_GET['file']); $filepath = DUPLICATOR_SSDIR_PATH.'/'.$file; // Téléchargement du processus if(file_exists($filepath)) { // Nettoyer le tampon de sortie if (ob_get_level() !== 0 && @ob_end_clean() === FALSE) { @ob_clean(); } header('Content-Description : Transfert de fichiers'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($filepath).'"'); header('Expire : 0'); header('Cache-Control : doit-revalider'); en-tête('Pragma : public'); header('Content-Length: ' . filesize($filepath)); flush(); // Vider le tampon de sortie du système try { $fp = @fopen($filepath, 'r'); if (false === $fp) { throw new Exception('Échec de l'ouverture du fichier '.$filepath); } while (!feof($fp) && ($data = fread($fp, DUPLICATOR_BUFFER_READ_WRITE_SIZE)) !== FALSE) { echo $data; } @fclose($fp); } catch (Exception $e) { readfile($filepath); } sortie; } else { wp_die('Nom de fichier d'installation invalide !!'); } } } add_action('init', 'duplicator_init'); Quels sont les signes que cette vulnérabilité a été exploitée ? La recherche des chaînes suivantes dans une requête GET indique que le site a très probablement fait l'objet d'une attention pirate.
action=duplicator_download
Si votre site est sur Host, il est sécurisé. Si votre site est sur Host.it, vous n'avez rien à craindre, en effet tous nos nouveaux profils d'hébergement mutualisé (Host Agile, Smart, Genius, 4.0 et 5.0) et d'hébergement cloud (Host Cloud) sont protégés par Cerbero, un système de protection sophistiqué qui comprend un pare-feu d'applications Web innovant.
Les définitions de Cerberus ont été mises à jour immédiatement pour prévenir et bloquer les attaques visant à exploiter la vulnérabilité Duplicator dans WordPress.
Hébergement WordPress
Hébergement optimisé pour WordPress
SSD, sauvegardes, SSL et Application Manager : publiez et mettez à jour votre site avec une assistance en italien.
Articles connexes
Du blog
Des archives