Le 6 décembre 2023, l'équipe Wordfence a remarqué une entrée du journal des modifications pour la version 3.18.1 d'Elementor, un plugin WordPress installé sur près de 9 millions de sites. Nous n'avons pas découvert la vulnérabilité d'origine et n'en avons pris connaissance qu'après avoir examiné le journal des modifications contenant un correctif partiel. Nous avons immédiatement publié une règle de pare-feu pour Wordfence Premium, Entretien de la clôture des motset Réponse de Wordfence clients. La règle de pare-feu sera mise à la disposition des utilisateurs gratuits de Wordfence 30 jours plus tard, le 5 janvier 2023.

Après avoir examiné la vulnérabilité plus en détail, nous avons déterminé que le correctif était insuffisant et pouvait encore être exploité, même si cela serait plus difficile.

Nous avons immédiatement contacté l'équipe Elementor le même jour, le 6 décembre 2023, pour leur faire savoir que le patch n'avait pas réussi à résoudre complètement le problème. Elementor a publié un correctif suffisant dans la version 3.18.2 le 8 décembre 2023. Nous félicitons l'équipe d'Elementor pour sa réponse rapide à cette situation.

Heureusement, la vulnérabilité, bien que grave, nécessite des privilèges de niveau Contributeur ou supérieurs pour être exploitée, ce qui minimise le nombre de sites susceptibles d'être touchés. Peu de sites utilisent des contributeurs, et les attaquants devraient pouvoir s'inscrire en tant que contributeur ou utilisateur supérieur, ou obtenir des informations d'identification valides pour un compte utilisateur de niveau contributeur+ pour exploiter cette vulnérabilité.

Résumé des vulnérabilités de Wordfence Intelligence

Le plugin Elementor Website Builder pour WordPress est vulnérable à l'exécution de code à distance via le téléchargement de fichiers dans toutes les versions jusqu'à la version 3.18.1 incluse via la fonctionnalité d'importation de modèles. Cela permet aux attaquants authentifiés, disposant d’un accès de niveau contributeur et supérieur, de télécharger des fichiers et d’exécuter du code sur le serveur. Analyse technique La source du problème est le handle_elementor_upload fonction appelée par le import_template Fonction Elementor AJAX, accessible aux utilisateurs de niveau Contributeur et supérieur. Bien qu'elles utilisent la validation du type de fichier, les versions vulnérables enregistrent d'abord le fichier téléchargé dans un répertoire temporaire avant de vérifier le type de fichier, et ne suppriment pas le fichier temporaire s'il échoue à cette validation :

	public function handle_elementor_upload( array $file, $allowed_file_extensions = null ) {
		// If $file['fileData'] is set, it signals that the passed file is a Base64 string that needs to be decoded and
		// saved to a temporary file.
		if ( isset( $file['fileData'] ) ) {
			$file = $this->save_base64_to_tmp_file( $file );
		}

		$validation_result = $this->validate_file( $file, $allowed_file_extensions );

		if ( is_wp_error( $validation_result ) ) {
			return $validation_result;
		}

		return $file;
	}

Cela signifie que les contributeurs ayant accès à l'éditeur Elementor peuvent télécharger des fichiers de n'importe quel type et qu'ils seront enregistrés dans un répertoire temporaire avec un nom aléatoire. Alors que les attaquants exploitant les versions antérieures à 3.18.1 pouvaient utiliser la traversée de répertoires pour déplacer le fichier téléchargé vers un emplacement plus prévisible, le correctif partiel 3.18.1 a nettoyé le nom du fichier, ce qui signifie qu'il ne pouvait être téléchargé que directement dans le répertoire temporaire.

Étant donné que l'exploit renvoie une erreur 500 et ne fournit aucun retour sur l'emplacement du répertoire temporaire, les attaquants auraient des difficultés à trouver le fichier téléchargé à moins que l'indexation du répertoire ne soit activée sur le serveur, ce qui n'est plus courant en raison des nombreux risques de sécurité qu'il présente.

Conclusion

Dans le PSA d'aujourd'hui, nous avons couvert une vulnérabilité de téléchargement de fichiers dans Elementor affectant les versions 3.18.1 et antérieures. Nous vous recommandons fortement de mettre à jour dès que possible la dernière version d'Elementor, qui est la 3.18.2 au moment d'écrire ces lignes, car il s'agit d'une vulnérabilité de haute gravité qui peut être utilisée par des attaquants pour télécharger des fichiers et prendre le contrôle d'un site.

Tous les utilisateurs de Wordfence, y compris ceux qui utilisent Wordfence Premium, Entretien de la clôture des motset Réponse Wordfence, sont entièrement protégés contre cette vulnérabilité.

Si vous connaissez quelqu'un qui utilise ce plugin sur son site, nous vous recommandons de partager cet avis avec lui pour garantir la sécurité de son site, car cette vulnérabilité présente un risque important.

Saviez-vous que Wordfence a un Programme de prime aux bogues? Nous avons récemment multiplié nos primes par 6,25 jusqu'au 20 décembre 2023, nos primes pour les vulnérabilités les plus critiques atteignant 10 000 $ USD ! Si vous êtes un chercheur en vulnérabilité en herbe ou actuel, Cliquez ici pour vous inscrire.


Source link