🧵 APC-инъекция в Windows: как вредоносный код прячется внутри потоков и как мы это видим в песочнице
В Windows существует легальный системный механизм APC (Asynchronous Procedure Call), предназначенный для асинхронного выполнения функций в контексте конкретного потока.
Этот механизм активно используется самой операционной системой и не является уязвимостью.
Однако, при определённом сценарии, APC может быть использован для выполнения произвольного кода внутри уже существующих потоков процесса — такая техника известна как APC-инъекция.
🔍 Почему APC-инъекция интересна злоумышленникам
Классические техники инъекции обычно сопровождаются:
• Созданием новых потоков;
• Нетипичными API-вызовами;
• Легко коррелируемыми событиями.
APC-инъекция работает иначе:
• Код выполняется внутри уже существующего потока;
• Не требуется создание нового потока;
• Используется легальный механизм Windows.
С точки зрения системы процесс выглядит «обычно», что существенно снижает шум и усложняет поведенческое обнаружение.
🧪 Что мы тестировали
В рамках исследования мы воспроизвели типовой сценарий APC-инъекции.
Цель - выполнить произвольный код (для теста — запуск калькулятора) внутри процесса, находящегося в alertable state - режим потока, в состоянии ожидания, готовый обработать асинхронные операции ввода-ввывода.
Компоненты:
• tapc_injector.exe — инжектор, ставящий APC в очередь потока;
• alertable.exe — целевой процесс, находящийся в alertable-состоянии.
Логика атаки:
1) Инжектор открывает целевой процесс;
2) Размещает код в памяти процесса;
3) Ставит APC в очередь потока;
4) Поток, находящийся в alertable state, выполняет APC при выходе из ожидания.
Ключевой момент: код исполняется внутри уже существующего потока, без создания новых.
🧠 Что видит песочница ATHENA
Хотя APC-инъекция относится к memory-based техникам и часто используется в fileless атаках, на практике она почти всегда инициируется доставленным объектом — бинарем, скриптом или документом.
При отработке такого объекта в песочнице ATHENA фиксируются:
• Аномальные цепочки API-вызовов;
• Подготовка памяти под выполнение кода;
• Асинхронное выполнение в контексте существующего потока;
• Поведенческие признаки инъекции.
📌 Почему это важно
APC-инъекция — хороший пример того, как:
• Легальные механизмы ОС используются в атаке;
• Сигнатурный подход не работает;
• Одиночные события ничего не значат без контекста.
Именно поэтому в песочнице важно:
• Анализировать цепочки поведения;
• Учитывать контекст выполнения;
• Смотреть на то, как и зачем используется механизм ОС.
📸 Вывод
APC — не уязвимость и не вредоносный механизм.
Но его использование в качестве техники инъекции позволяет злоумышленникам выполнять код с минимальным шумом.
Динамический анализ в ATHENA позволяет выявлять такие техники на этапе доставки и первичного запуска, ещё до перехода атаки в полностью fileless-фазу.
#Windows #APC #Fileless #Malware #ATHENA
Post #8
101

- 🔥 3
- ⚡ 1