D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
Автор dunkel
Статья написана для Конкурса статей #10
Теория
Всем привет, эта статья будет про технику обхода антивирусов и EDR с помощью интерпретаторов ЯП (но все не так просто). Некоторые селлеры услуг по обходу edr пользуются этим методом, берут по 5к$ с клиентов, зарабатывая неплохие деньги. Тема актуальная и востребованная, надеюсь кому то поможет в работе)
На роль языка есть несколько кандидатов, это должен быть скриптовый язык со своим подписанным интерпретатором, например подходящие нам: Python, JavaScript, Ruby, F# (позволяет писать скрипты .fsx).
Суть техники заключается в том что edr не может нормально анализировать что там вообще в интерпретаторах происходит, где каша из нескольких уровней абстракции (библиотеки предоставляют высокоуровневые абстракции для системных операций), шума из событий, оптимизаций, динамического связывания, невомзожность четко отслеживать контекст и т.д. Для эврестического анализатора выполнение вредоносного кода не сильно отличается от легального ПО. Поэтому аверские поделия чаще просто ничего не делают, чтобы избежать проблем и ложно-положительных детектов которые бы мешали работе людей и бизнеса. Плюс вся подозрительная телеметрия будет идти от подписанного бинаря, к которым больше доверия (метрики file reputation, trust score и проч, которые учавствуют в решении как расценивать поведение программы). И многое за что бы проактивная система могла стопнуть ноунейм exe билд, позволительно для нашего подписанного легитимного интерпретатора.
Чтобы доказать что техника мощная и рабочая, для тестов я постараюсь взять самые грязные утилиты/билды с максимумом детектов.
В качестве интерпретируемого языка возьмем python (так как под него много чего написано, в том числе легального ПО, и он самый популярный)
С выходом питона 3.5 появилась embedded версия (еще иногда называют standalone, portable) питоновского интерпретатора, которую можно запускать без установки, просто скачав или закинув на диск.
https://www.python.org/ftp/python/3.10.8/python-3.10.8-embed-amd64.zip
Внутри архива Python Embeddable package есть две подписанных .exe:
python.exe - стандартный standalone интерпретатор, который запускается с окном для вывода информации в консоль
и pythonw.exe - тот же интерпретатор, но запускается headless (без видимого для юзера окна)
У меня для разнообразия тестов несколько виртуалок
windows server 2019 с Kaspersky Endpoint Security (есть триал)
windows 10 ltsc с Microsoft Defender
windows 8 с Symantec Endpoint Protection
Практика и тесты
Качаем архив с интерпритатором на виртуалку с edr и распаковываем. Допустим мы хотим запустить на машине какой нибудь скрипт/тулзу на питоне для пост эксплуатации (у которых скантайм и рантайм детекты), например скрипты из impacket, lazagne, pypykatz (переписанный на питоне mimikatz).
Попробуем Скачать
Статья написана для Конкурса статей #10
Теория
Всем привет, эта статья будет про технику обхода антивирусов и EDR с помощью интерпретаторов ЯП (но все не так просто). Некоторые селлеры услуг по обходу edr пользуются этим методом, берут по 5к$ с клиентов, зарабатывая неплохие деньги. Тема актуальная и востребованная, надеюсь кому то поможет в работе)
На роль языка есть несколько кандидатов, это должен быть скриптовый язык со своим подписанным интерпретатором, например подходящие нам: Python, JavaScript, Ruby, F# (позволяет писать скрипты .fsx).
Суть техники заключается в том что edr не может нормально анализировать что там вообще в интерпретаторах происходит, где каша из нескольких уровней абстракции (библиотеки предоставляют высокоуровневые абстракции для системных операций), шума из событий, оптимизаций, динамического связывания, невомзожность четко отслеживать контекст и т.д. Для эврестического анализатора выполнение вредоносного кода не сильно отличается от легального ПО. Поэтому аверские поделия чаще просто ничего не делают, чтобы избежать проблем и ложно-положительных детектов которые бы мешали работе людей и бизнеса. Плюс вся подозрительная телеметрия будет идти от подписанного бинаря, к которым больше доверия (метрики file reputation, trust score и проч, которые учавствуют в решении как расценивать поведение программы). И многое за что бы проактивная система могла стопнуть ноунейм exe билд, позволительно для нашего подписанного легитимного интерпретатора.
Чтобы доказать что техника мощная и рабочая, для тестов я постараюсь взять самые грязные утилиты/билды с максимумом детектов.
В качестве интерпретируемого языка возьмем python (так как под него много чего написано, в том числе легального ПО, и он самый популярный)
С выходом питона 3.5 появилась embedded версия (еще иногда называют standalone, portable) питоновского интерпретатора, которую можно запускать без установки, просто скачав или закинув на диск.
https://www.python.org/ftp/python/3.10.8/python-3.10.8-embed-amd64.zip
Внутри архива Python Embeddable package есть две подписанных .exe:
python.exe - стандартный standalone интерпретатор, который запускается с окном для вывода информации в консоль
и pythonw.exe - тот же интерпретатор, но запускается headless (без видимого для юзера окна)
У меня для разнообразия тестов несколько виртуалок
windows server 2019 с Kaspersky Endpoint Security (есть триал)
windows 10 ltsc с Microsoft Defender
windows 8 с Symantec Endpoint Protection
Практика и тесты
Качаем архив с интерпритатором на виртуалку с edr и распаковываем. Допустим мы хотим запустить на машине какой нибудь скрипт/тулзу на питоне для пост эксплуатации (у которых скантайм и рантайм детекты), например скрипты из impacket, lazagne, pypykatz (переписанный на питоне mimikatz).
Попробуем Скачать
View hidden content is available for registered users!