Как провести Havoc agent через Windows Defender (2024)
Привет всем! Сегодня я покажу вам метод, как обойти последнюю версию Windows Defender с помощью Havoc Demons по состоянию на сентябрь 2024 года.
Мы будем использовать offensive powershell: найдём shellcode-раннер на PowerShell и объединим его с рабочим обходом AMSI, чтобы выполнить его в памяти.
Я буду использовать следующий shellcode-раннер на PowerShell: https://github.com/dievus/PowerShellRunner/blob/main/runner.ps1
Теперь я сгенерирую shellcode для agent Havoc, который будет сохранён в файл с расширением .bin.
Теперь мы можем использовать скрипт на Python 2 для конвертации нашего bin-файла в shellcode, который можно вставить в скрипт runner.ps1.
Теперь мы можем скопировать этот shellcode в переменную $buf в скрипте runner.ps1.
Однако, если мы попробуем запустить наш shellcode таким образом, могут возникнуть ошибки. Это, скорее всего, связано с тем, что выделено недостаточно памяти для выполнения. Нам нужно отредактировать переменную $cucumbers, которая вызывает функцию Windows API VirtualAlloc.
Согласно документации, второй параметр функции определяет размер выделяемой памяти.
Итак, мы переместим переменную $cucumbers сразу после нашего shellcode и изменим второй параметр функции VirtualAlloc, чтобы он соответствовал размеру нашего shellcode. Это гарантирует, что для успешного выполнения кода будет выделено достаточно памяти.
Затем я тестирую это с отключенной антивирусной защитой на машине с Windows и убеждаюсь, что это работает.
Однако этого недостаточно, чтобы избежать обнаружения со стороны Defender.
Я попытаюсь использовать недавний обход Antimalware Scan Interface (AMSI), чтобы мы могли выполнить нашу .
Это сработало! Теперь давайте настроим сервер на Python, с которого мы попытаемся скачать наш обход AMSI вместе с нашим shellcode-раннер.
Примечание: возможно, потребуется обфусцировать команды iex, так как они могут блокироваться Windows Defender.
И вот у нас получилось получить оболочку (shell) в Havoc!