Che cos'è il formato di file XLM?
.xlm è un foglio macro legacy di Excel introdotto con Microsoft Excel 4.0 nel 1992. Memorizza programmi macro in stile foglio di calcolo scritti nel linguaggio macro XLM - un sistema di scripting basato su formule che precede Visual Basic for Applications (VBA) di una generazione di Excel. Ogni funzione macro occupa una cella del foglio di lavoro, rendendo le macro visibili come una griglia di istruzioni piuttosto che come un modulo di codice separato.
Internamente, i file .xlm utilizzano il contenitore OLE2 Compound File Binary (CFBF), condividendo l'intestazione magic-byte classica D0 CF 11 E0 con i file .xls, .doc e .ppt. I dati delle macro risiedono all'interno di un flusso BIFF contrassegnato come foglio macro; nessun numero magico univoco distingue .xlm da una normale cartella di lavoro, quindi l'identificazione dipende da quel flag del flusso interno.
VBA ha sostituito XLM in Excel 5.0 (1993) e il formato è rimasto invariato da allora. Microsoft supporta ancora l'esecuzione di XLM per compatibilità con le versioni precedenti, ma ha bloccato le macro XLM per impostazione predefinita in Excel a partire dal 2021, a seguito di un'ondata di campagne malware (circa 2018-2020) che hanno sfruttato il formato per eludere le difese calibrate specificamente per VBA.
Oggi, i payload XLM appaiono più spesso incorporati all'interno di cartelle di lavoro .xlsm o .xlsb piuttosto che come file .xlm autonomi. Un foglio dannoso può invocare funzioni macro integrate di Excel come EXEC e CALL per eseguire comandi di sistema arbitrari senza attivare gli scanner focalizzati su VBA. Aprire un file .xlm solo se proviene da una fonte completamente attendibile.
Sicurezza e incolumità
RISCHIO: HIGHLe macro di Excel 4.0 (XLM) sono un vettore di distribuzione malware ampiamente documentato. Poiché precedono VBA, sono state utilizzate nel periodo 2018-2021 per eludere gli antivirus e distribuire trojan bancari e loader di ransomware, tipicamente eseguendosi automaticamente tramite una macro Auto_Open nel momento in cui la cartella di lavoro viene aperta. Regole per gli utenti: non abilitare mai le macro in un file .xlm (o .xls/.xlsm carichi di macro) che non ci si aspettava; mantenere il Centro protezione di Excel impostato per bloccare le macro di Excel 4.0 (impostazione predefinita nelle versioni correnti di Excel dal 2021); aprire i file sospetti in Visualizzazione protetta o in una VM isolata; gli analisti possono utilizzare oletools (olevba) e XLMMacroDeobfuscator per estrarre il codice macro senza eseguirlo. Un file .xlm isolato che arriva via email/chat deve essere trattato come ostile fino a prova contraria.
Dettagli del formato
in sintesiProgrammi che aprono file XLM
Dettagli tecnici
specifiche approfondite| Formato contenitore | OLE2 Compound File Binary Format (CFBF) |
| Formato del flusso interno | Record BIFF (Binary Interchange File Format) all'interno di un flusso «Workbook»/«Book» |
| Ordine dei byte | Little-endian |
| Codifica | Binaria (record BIFF) |
| Magic bytes | D0 CF 11 E0 A1 B1 1A E1 all'offset 0 (intestazione OLE2/CFBF condivisa) |
| Tipo MIME | application/vnd.ms-excel |
| Linguaggio macro | Excel 4.0 XLM - basato su formule, residente nelle celle; ogni istruzione macro è il valore di una cella del foglio di lavoro |
| Classificazione di sicurezza | Alto rischio - esecuzione macro XLM bloccata per impostazione predefinita in Microsoft Excel dal 2021 |
| Funzioni pericolose degne di nota | EXEC, CALL, REGISTER, RUN - possono invocare comandi arbitrari del sistema operativo dall'interno del foglio macro |
| Sviluppatore | Microsoft |
| Sostituito da | Macro VBA (cartelle di lavoro .xlsm / .xlsb), introdotte in Excel 5.0 (1993) |
| Piattaforme supportate | Windows (tutte le versioni moderne di Excel), macOS (Excel per Mac); supporto in lettura in LibreOffice Calc |
| Dimensione tipica del file | Da pochi KB a poche centinaia di KB |
| Compressione | Nessuna - i record BIFF sono memorizzati non compressi |
| Supporto crittografia | Opzionale; le cartelle di lavoro protette da password possono utilizzare la crittografia RC4 o AES attorno al contenitore OLE2 |
| Modello di esecuzione macro | Macro memorizzate come formule di cella in una scheda dedicata del foglio macro; valutate dall'alto verso il basso dal motore di calcolo di Excel |
| Rilasciato | 1992 (Excel 4.0 macro language, .xlm macro-sheet files) |
| Ultima versione | Excel 4.0 macro language (frozen 1992); never updated - superseded by VBA in Excel 5.0 (1993) |
| Specifica | learn.microsoft.com |
Conversioni XLM
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file XLM.