Dans le module Perl Spreadsheet::ParseExcel, qui fournit des fonctions pour analyser des fichiers au format Excel, une vulnérabilité critique (CVE-2023-7101) a été identifiée, permettant l'exécution de code arbitraire lors du traitement de fichiers XLS ou XLSX contenant des règles de formatage numérique spécialement conçues. La vulnérabilité est causée par l'utilisation de données provenant du fichier traité dans l'appel de « eval ». Le problème a été corrigé dans la mise à jour Spreadsheet::ParseExcel 0.66. Un prototype d’exploit est disponible. Code vulnérable : if ( $format_str =~ /^(\[(<>=][^\]]+)\](.*)$/ ) { $conditional = $1; $format_str = $2; } … $section = eval "$number $conditional" ? 0 : 1; Exemple d'exploit pour exécuter la commande whoami :
La vulnérabilité a été identifiée par Barracuda Networks lors de l'analyse d'une attaque visant à intégrer des logiciels malveillants sur des appareils Barracuda ESG (Email Security Gateway). La compromission des appareils a été causée par une vulnérabilité 0-day (CVE-2023-7102) dans le module Spreadsheet::ParseExcel, utilisé dans Barracuda ESG pour analyser les pièces jointes de courrier électronique au format Excel. Il suffisait d'envoyer un e-mail avec une pièce jointe spécialement conçue pour exécuter son code sur les systèmes utilisant Barracuda ESG.
Source : opennet.ru
