🛡 AMSI + ETW bypass via PAGE_GUARD + VEH
Написал реализацию на C++ техники из shigshag.com/blog/amsi_page_guard (спасибо ИИ😁)
Вместо патча байт функции — ставим PAGE_GUARD на страницу
AmsiScanBuffer. CPU кидает STATUS_GUARD_PAGE_VIOLATION до исполнения
первой инструкции. VEH перехватывает, пишет AMSI_RESULT_CLEAN в
output-параметр, эмулирует return. Trap Flag переприменяет PAGE_GUARD
через STATUS_SINGLE_STEP.
Расширил до generic движка — одним вызовом накрываем несколько таргетов:
• AmsiScanBuffer (amsi.dll) — результат всегда CLEAN
• EtwEventWrite (ntdll.dll) — телеметрия тихо дропается
Vs hardware breakpoints (DR0-DR7):
→ не трогаем debug-регистры (ниже detection surface)
→ не нужно ставить BP на каждый новый поток
→ байты функции не модифицируются (integrity checks проходят)
github.com/durck/amsi-pageguard-veh
#maldev #redteam #windows #amsi

4
1March 17, 2026 1.2K 13