Co to jest format pliku XLM?
.xlm to starszy format arkusza makr Excel wprowadzony wraz z Microsoft Excel 4.0 w 1992 roku. Przechowuje on programy makr w stylu arkusza kalkulacyjnego napisane w języku makr XLM - systemie skryptowym opartym na formułach, który wyprzedza Visual Basic for Applications (VBA) o jedną generację programu Excel. Każda funkcja makra zajmuje komórkę arkusza, co sprawia, że makra są widoczne jako siatka instrukcji, a nie oddzielny moduł kodu.
Wewnętrznie pliki .xlm używają kontenera OLE2 Compound File Binary (CFBF), dzieląc klasyczny nagłówek magicznych bajtów D0 CF 11 E0 z plikami .xls, .doc i .ppt. Dane makr znajdują się wewnątrz strumienia BIFF oznaczonego jako arkusz makr; żaden unikalny numer magiczny nie odróżnia .xlm od zwykłego skoroszytu, więc identyfikacja zależy od tej wewnętrznej flagi strumienia.
VBA zastąpił XLM w Excel 5.0 (1993), a format ten został od tego czasu zamrożony. Microsoft nadal wspiera wykonywanie XLM ze względu na kompatybilność wsteczną, ale domyślnie zablokował makra XLM w programie Excel od 2021 roku po fali kampanii złośliwego oprogramowania (około 2018-2020), które wykorzystywały ten format do omijania zabezpieczeń dostrojonych specjalnie pod VBA.
Dziś ładunki XLM pojawiają się częściej osadzone w skoroszytach .xlsm lub .xlsb niż jako samodzielne pliki .xlm. Złośliwy arkusz może wywoływać wbudowane funkcje makr Excel, takie jak EXEC i CALL, aby uruchamiać dowolne polecenia systemowe bez wyzwalania skanerów skoncentrowanych na VBA. Plik .xlm należy otwierać wyłącznie z w pełni zaufanego źródła.
Bezpieczeństwo
RYZYKO: HIGHMakra Excel 4.0 (XLM) są dobrze udokumentowanym wektorem dostarczania złośliwego oprogramowania. Ponieważ powstały przed VBA, były używane w latach 2018-2021 do omijania programów antywirusowych i dostarczania trojanów bankowych oraz loaderów ransomware, zazwyczaj uruchamiając się automatycznie przez makro Auto_Open w momencie otwarcia skoroszytu. Zasady dla użytkowników: nigdy nie włączaj makr w pliku .xlm (lub .xls/.xlsm z makrami), którego się nie spodziewałeś; zachowaj ustawienia Centrum zaufania Excel blokujące makra Excel 4.0 (domyślne od 2021 r.); otwieraj podejrzane pliki w Widoku chronionym lub izolowanej maszynie wirtualnej; analitycy mogą używać narzędzi oletools (olevba) i XLMMacroDeobfuscator do wyodrębniania kodu makr bez jego wykonywania. Luźny plik .xlm otrzymany pocztą e-mail/czatem należy traktować jako wrogi, dopóki nie zostanie udowodnione inaczej.
Szczegóły formatu
w pigułceProgramy otwierające pliki XLM
Szczegóły techniczne
specyfikacja| Format kontenera | OLE2 Compound File Binary Format (CFBF) |
| Wewnętrzny format strumienia | Rekordy BIFF (Binary Interchange File Format) wewnątrz strumienia „Workbook”/„Book” |
| Kolejność bajtów | Little-endian |
| Kodowanie | Binarne (rekordy BIFF) |
| Magiczne bajty | D0 CF 11 E0 A1 B1 1A E1 pod offsetem 0 (wspólny nagłówek OLE2/CFBF) |
| Typ MIME | application/vnd.ms-excel |
| Język makr | Excel 4.0 XLM - oparty na formułach, rezydujący w komórkach; każda instrukcja makra jest wartością komórki arkusza |
| Klasyfikacja bezpieczeństwa | Wysokie ryzyko - wykonywanie makr XLM domyślnie blokowane w Microsoft Excel od 2021 roku |
| Istotne niebezpieczne funkcje | EXEC, CALL, REGISTER, RUN - mogą wywoływać dowolne polecenia systemu operacyjnego z poziomu arkusza makr |
| Deweloper | Microsoft |
| Zastąpiony przez | Makra VBA (skoroszyty .xlsm / .xlsb), wprowadzone w Excel 5.0 (1993) |
| Obsługiwane platformy | Windows (wszystkie nowoczesne wersje Excel), macOS (Excel dla Mac); obsługa odczytu w LibreOffice Calc |
| Typowy rozmiar pliku | Od kilku KB do kilkuset KB |
| Kompresja | Brak - rekordy BIFF są przechowywane bez kompresji |
| Obsługa szyfrowania | Opcjonalna; skoroszyty chronione hasłem mogą używać szyfrowania RC4 lub AES wokół kontenera OLE2 |
| Model wykonywania makr | Makra przechowywane jako formuły komórek w dedykowanej karcie arkusza makr; oceniane od góry do dołu przez silnik obliczeniowy Excel |
| Wydano | 1992 (Excel 4.0 macro language, .xlm macro-sheet files) |
| Najnowsza wersja | Excel 4.0 macro language (frozen 1992); never updated - superseded by VBA in Excel 5.0 (1993) |
| Specyfikacja | learn.microsoft.com |
Konwersje XLM
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki XLM.