Skip to content

Многофункциональный RAT инструмент в Telegram, поддерживающий множество клиентов одновременно

Notifications You must be signed in to change notification settings

EZIKALEXANDR/TGRat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TGRat

Python Platform Telegram Aiogram Status

Проект представляет собой клиент-серверную систему удаленного управления Windows-устройствами через Telegram-бот. Клиентская часть работает в фоновом режиме, подключается к серверу и выполняет команды, а серверная часть предоставляет удобный интерфейс управления через Telegram с помощью топиков. Для каждого клиента создается отдельный топик, которые работают независимо друг от друга

📋 Использование

Каждый клиент создает отдельную тему в группе-форуме(типа 🇷🇺 Win 10 | ⚡️ user | 94.141.124.208), просто отправляйте команды в соответствующую тему для управления конкретным клиентом. Кол-во клиентов условно неограничено. Если клиент, например, закроет процесс, выключит комьютер, или еще что-то, что в итоге связь прервется(автоматически восстанавливается по возможности), вы получите уведомления типа "🔴 Клиент DESKTOP-MULMQ2N/... отключился (ОФФЛАЙН)!", если успешно подключится - "✅ DESKTOP-MULMQ2N/... онлайн". Также возможен таймаут(аналогичен "оффлайну") "⏰ Таймаут/Рассинхрон WIN-NB4GA5M6TVF/..."

📁 Структура проекта

  • client.py — клиентская часть, устанавливается на целевом устройстве (Windows)
  • server.py — серверная часть (Telegram бот), принимает команды и управляет клиентами
  • data_info.txt — конфигурационный файл для сервера (токен бота и ID группы)

✨ Полный функционал

📁 Файловый менеджер:
/ls [путь] — список файлов и папок (в корне '/' показываются диски)
/cd <путь> — сменить текущую директорию
/back — вернуться в родительскую папку (из корня диска переходит к списку дисков)
/pwd — показать текущий путь
/mkdir <имя> — создать папку
/delete <имя> — удалить файл или папку
/rename <старое>/n<новое> — переименовать файл или папку
/copy <источник>/to<назначение> — скопировать файл или папку
/move <источник>/to<назначение> — переместить файл или папку

📥 Передача файлов:
/download <файл> — скачать файл с клиента в Telegram
/upload [имя] — загрузить файл из Telegram на клиент
/download_link <URL> [0] — скачать файл по ссылке (0 — скачать без запуска)

⚙️ Система и выполнение команд:
/run <файл> — запустить программу или файл
/execute <команда> — выполнить CMD или PowerShell команду
/sysinfo — информация о системе (ЦПУ, память, диск)
/tasklist — получить список процессов (отправляется в виде TXT файла)
/taskkill <имя.exe или PID> — завершить процесс
/showdesktop — принудительно показать рабочий стол
/status — показать информацию о сервере
/restart (нестабильно) — перезапустить клиент
/cmdbomb — открыть 10 окон CMD
/wd_exclude [путь] — добавить исходный или указанный файл в исключения Windows Defender
/killwindef — временно отключить Windows Defender
/grant <путь> — получить полный доступ к папке или файлу (использует TakeOwn и Icacls)

💬 Интерфейс и уведомления:
/msg [тип] [заголовок]/t<текст> — показать всплывающее окно на клиенте
/changeclipboard <текст> — установить содержимое буфера обмена
/clipboard — получить содержимое буфера обмена

🖱️ Управление вводом и экраном:
/screenshot или /sc — сделать скриншот экрана
/photo [индекс] — сделать фото с веб-камеры
/minimize — свернуть активное окно
/maximize — развернуть активное окно
/altf4 — закрыть активное окно
/keypress <клавиши> — нажать комбинацию клавиш (например: alt f4, win r)
/holdkey <сек> <клавиши> — зажать клавишу или комбинацию клавиш на N секунд
/mouseclick — выполнить клик мышью
/mousemove <X> <Y> — переместить курсор мыши в указанные координаты
/keytype <текст> — ввести текст с поддержкой кириллицы
/open_image <сек> <путь> — открыть изображение на полный экран на N секунд
/applist [<индекс>] — посмотреть список окон или вывести выбранное окно на передний план
/applist_close <индекс> — закрыть выбранное окно
/applist_title <индекс> <новое имя> — переименовать выбранное окно
/whereami — показать путь к текущему исполняемому файлу

👾 Автоматизация:
/mousemesstart — включить случайное движение мыши
/mousemesstop — остановить случайное движение мыши
/auto <сек> [screen|webcam|both] [индекс камеры] — авто-отправка скриншотов или фото с заданным интервалом
/stop — остановить выполнение команды /auto

🔇 Мультимедиа:
/playsound <путь> — воспроизвести аудиофайл на клиенте
/stopsound — остановить воспроизведение аудио
/mic <сек> — запись звука с микрофона (до 30 секунд)
/webcam <индекс> <сек> — запись видео с веб-камеры (до 30 секунд)
/screenrecord <сек> — запись видео с экрана (до 60 секунд)
/volumeplus [N] — увеличить громкость (по умолчанию +2%)
/volumeminus [N] — уменьшить громкость (по умолчанию -2%)

📎 Плагины:
/plugins_reload или /pl_upd — перезагрузить список плагинов
/plugins — открыть панель управления плагинов
/pl_on <ID> — включить выбранный плагин
/pl_off <ID> — выключить выбранный плагин
/pl_rm <ID> — удалить(с диска) выбранный плагин
/install_lib <URL> — установить библиотеку по прямой ссылке

🔧 Прочие команды:
/help - список команд
/set_topic <client_id> <thread_id> — переназначает клиента в выбранный топик
/wallpaper <путь> — установить обои рабочего стола
/block — заблокировать мышь и клавиатуру
/unblock — разблокировать мышь и клавиатуру
/location — получить местоположение клиента (страна, город, IP и т.д.)
/update [pastebin raw] — обновить версию клиентского ПО
/clients — посмотреть список активных клиентов и их историю
/clients_off — список неактивных клиентов
/version — посмотреть версию ПО на стороне клиента

🛠️ Дополнительные функции

Клиент

  • Автоматическое копирование в системную папку, добавление себя в планировщик задач
  • Удаление временных файлов, закрытие мусорного процесса
  • Механизмы переподключения и heartbeat
  • Уникальная идентификация устройств
  • Поддержка плагинов, их шифрование на диске

Сервер

  • Асинхронная архитектура: Высокая производительность
  • Многопользовательский: Поддержка множества клиентов
  • Форумные топики: Изолированные чаты для каждого устройства
  • История сессий: Отслеживание активности клиентов(онлайн/оффлайн)

🚀 Установка и настройка

Серверная часть (Telegram бот)

Нужны будут открытые порты, в идеале бесперерывно работаюий vds

  1. Создайте Telegram бота и получите токен

  2. Создайте чат, в его настройках включите "темы"(обязательно), добавьте бота в чат, дайте ему права администратора

  3. Установите зависимости и рядом с файлом server.py создайте data_info.txt с содержимым типа:

    TOKEN = your token without quotes
    GROUP_CHAT_ID = -123456789
    

    Вставьте вместо "your token without quotes" свой токен(без кавычек)

    Вместо "-123456789" айди(например, -1002447758315) вашего чата(одного), где вы только что включили темы. В нескольких чатах одновременно бот работать не может(!)

  4. Также в самом файле server.py пролистайте немного вниз до переменной PORT, можете изменить порт если вам надо

  5. Сервер можно запускать

Клиентская часть(только Windows)

  1. В файле client.py нужно внести несколько правок. Вообще в коде используется("в идеале") конфигурация из pastebin типа

    {
       "ip": "121.43.65.121",
       "port": 7777
    }
    

    Порт должен быть аналогичным написанному на серверной части, и сам ip тоже сервера. Ссылка на pastebin должна быть в переменной EXEC_URL = "https://pastebin.com/raw/xxxx"

  2. Также лучше вставить запасные данные в DEFAULT_IP, DEFAULT_PORT, они будут использоватся, если взять с pastebin не получится. Либо если вам не хочется для тестов делать pastebin, можете написать некорректную ссылку, но нормальные альтернативные данные, и спустя несколько неудачных попыток клиент автоматически будет использовать как раз "дефолтные"

  3. Если будете компилировать в exe, используйте флаг --uac-admin(или альтернативный), т.к в коде проверки на права администратора нет

⚠️ Предупреждение

Этот проект создан в образовательных целях. Автор не поддерживает использование этого ПО для незаконной деятельности. Убедитесь, что вы имеете право на управление устройствами, на которые устанавливаете клиентскую часть.

About

Многофункциональный RAT инструмент в Telegram, поддерживающий множество клиентов одновременно

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages