## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-S3CUR3TH1SSH1T-OFFENSIVEVBA
# OffensiveVBA
Готовясь к стриму/видео по обходу AV в VBS, я проводил исследование методов выполнения кода через макросы Office и техник обхода.
Список становился всё длиннее, и я не нашёл централизованного места для шаблонов offensive VBA — поэтому этот репозиторий может служить таким хранилищем. Он очень далёк от полноты. Если вы знаете другие крутые техники или полезные шаблоны, смело вносите свой вклад и создавайте pull request!
Большинство шаблонов в этом репозитории уже были где-то опубликованы. Я просто скопировал большинство шаблонов с сайтов ms-docs, из блог-постов или из других инструментов.
## Шаблоны в этом репозитории
Файл| Описание
---|---
ShellApplication_ShellExecute.vba| Выполнить команду ОС через объект ShellApplication и метод ShellExecute
ShellApplication_ShellExecute_privileged.vba| Выполнить привилегированную команду ОС через объект ShellApplication и метод ShellExecute - запрос UAC
Shellcode_CreateThread.vba| Выполнить шеллкод в текущем процессе через Win32 CreateThread
Shellcode_EnumChildWindowsCallback.vba| Выполнить шеллкод в текущем процессе через EnumChildWindows
Win32_CreateProcess.vba| Создать новый процесс для выполнения кода через функцию Win32 CreateProcess
Win32_ShellExecute.vba| Создать новый процесс для выполнения кода через функцию Win32 ShellExecute
WMI_Process_Create.vba| Создать новый процесс через WMI для выполнения кода
WMI_Process_Create2.vba| Ещё один пример выполнения кода через WMI
WscriptShell_Exec.vba| Выполнить команду ОС через объект WscriptShell и метод Exec
WscriptShell_run.vba| Выполнить команду ОС через объект WscriptShell и метод Run
VBA-RunPE| Техника RunPE от @itm4n на VBA
## Отсутствует - ToDos
Файл| Описание
---|---
Unhooker.vba| Отмена хуков API в памяти для избавления от перехвата
Syscalls.vba
## Обфускаторы / Генераторы полезных нагрузок
1. VBad
2. wePWNise
3. VisualBasicObfuscator — требует доработки, так как не разбивает строки и поэтому не подходит для макросов документов Office
4. macro_pack
5. shellcode2vbscript.py
6. EvilClippy
7. OfficePurge
8. SharpShooter
9. VBS-Obfuscator-in-Python — требует доработки, так как не разбивает строки и поэтому не подходит для макросов документов Office
## Благодарности / полезные ресурсы
Обход ASR: http://blog.sevagas.com/IMG/pdf/bypass_windows_defender_attack_surface_reduction.pdf
Преобразование шеллкода в VBScript: https://github.com/DidierStevens/DidierStevensSuite/blob/master/shellcode2vbscript.py
Обход AMSI в VBA: https://outflank.nl/blog/2019/04/17/bypassing-amsi-for-vba/
Очистка VBA: https://www.mandiant.com/resources/purgalicious-vba-macro-obfuscation-with-vba-purging
Пост F-Secure об обходе и обнаружении VBA: https://blog.f-secure.com/dechaining-macros-and-evading-edr/
Ещё один блог F-Secure: https://labs.f-secure.com/archive/dll-tricks-with-vba-to-improve-offensive-macro-capability/