Qu'est-ce que le format de fichier XLM ?
.xlm est une ancienne feuille de macro Excel introduite avec Microsoft Excel 4.0 en 1992. Elle stocke des programmes de macro de type tableur écrits dans le langage de macro XLM - un système de script basé sur des formules qui précède Visual Basic for Applications (VBA) d'une génération d'Excel. Chaque fonction de macro occupe une cellule de la feuille de calcul, ce qui rend les macros visibles sous forme de grille d'instructions plutôt que comme un module de code séparé.
En interne, les fichiers .xlm utilisent le conteneur OLE2 Compound File Binary (CFBF), partageant l'en-tête classique de « magic bytes » D0 CF 11 E0 avec les fichiers .xls, .doc et .ppt. Les données de macro résident dans un flux BIFF marqué comme feuille de macro ; aucun nombre magique unique ne distingue .xlm d'un simple classeur, l'identification dépend donc de ce drapeau de flux interne.
VBA a remplacé XLM dans Excel 5.0 (1993), et le format est resté figé depuis lors. Microsoft prend toujours en charge l'exécution de XLM pour la compatibilité ascendante, mais a bloqué les macros XLM par défaut dans Excel à partir de 2021 suite à une vague de campagnes de logiciels malveillants (environ 2018-2020) qui ont militarisé le format pour échapper aux défenses spécifiquement réglées pour VBA.
Aujourd'hui, les charges utiles XLM apparaissent plus souvent intégrées dans des classeurs .xlsm ou .xlsb que sous forme de fichiers .xlm autonomes. Une feuille malveillante peut invoquer des fonctions de macro intégrées à Excel telles que EXEC et CALL pour exécuter des commandes système arbitraires sans déclencher les scanners axés sur VBA. N'ouvrez un fichier .xlm que s'il provient d'une source de confiance absolue.
Sécurité et sûreté
RISQUE : HIGHLes macros Excel 4.0 (XLM) sont un vecteur de diffusion de logiciels malveillants bien documenté. Parce qu'elles sont antérieures à VBA, elles ont été utilisées entre 2018 et 2021 pour échapper aux antivirus et déposer des chevaux de Troie bancaires et des chargeurs de rançongiciels, s'exécutant généralement automatiquement via une macro Auto_Open dès l'ouverture du classeur. Règles pour les utilisateurs : n'activez jamais les macros dans un .xlm (ou un .xls/.xlsm chargé de macros) que vous n'attendiez pas ; gardez le Centre de gestion de la confidentialité d'Excel configuré pour bloquer les macros Excel 4.0 (par défaut dans Excel actuel depuis 2021) ; ouvrez les fichiers suspects en Mode protégé ou dans une machine virtuelle isolée ; les analystes peuvent utiliser oletools (olevba) et XLMMacroDeobfuscator pour extraire le code de la macro sans l'exécuter. Un fichier .xlm isolé arrivant par e-mail/chat doit être traité comme hostile jusqu'à preuve du contraire.
Détails du format
en brefProgrammes qui ouvrent les fichiers XLM
Détails techniques
spécifications approfondies| Format de conteneur | OLE2 Compound File Binary Format (CFBF) |
| Format de flux interne | Enregistrements BIFF (Binary Interchange File Format) dans un flux « Workbook »/« Book » |
| Ordre des octets | Little-endian |
| Encodage | Binaire (enregistrements BIFF) |
| Magic bytes | D0 CF 11 E0 A1 B1 1A E1 à l'offset 0 (en-tête partagé OLE2/CFBF) |
| Type MIME | application/vnd.ms-excel |
| Langage de macro | Excel 4.0 XLM - basé sur des formules, résidant en cellule ; chaque instruction de macro est une valeur de cellule de feuille de calcul |
| Classification de sécurité | Risque élevé - exécution des macros XLM bloquée par défaut dans Microsoft Excel depuis 2021 |
| Fonctions dangereuses notables | EXEC, CALL, REGISTER, RUN - peuvent invoquer des commandes arbitraires du système d'exploitation depuis la feuille de macro |
| Développeur | Microsoft |
| Remplacé par | Macros VBA (classeurs .xlsm / .xlsb), introduites dans Excel 5.0 (1993) |
| Plateformes supportées | Windows (tous les Excel modernes), macOS (Excel pour Mac) ; support en lecture dans LibreOffice Calc |
| Taille de fichier typique | De quelques Ko à quelques centaines de Ko |
| Compression | Aucune - les enregistrements BIFF sont stockés sans compression |
| Support du chiffrement | Optionnel ; les classeurs protégés par mot de passe peuvent utiliser le chiffrement RC4 ou AES autour du conteneur OLE2 |
| Modèle d'exécution des macros | Macros stockées sous forme de formules de cellules dans un onglet de feuille de macro dédié ; évaluées de haut en bas par le moteur de calcul d'Excel |
| Publié | 1992 (Excel 4.0 macro language, .xlm macro-sheet files) |
| Dernière version | Excel 4.0 macro language (frozen 1992); never updated - superseded by VBA in Excel 5.0 (1993) |
| Spécification | learn.microsoft.com |
Conversions XLM
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers XLM.