Skip to content

Lifailon/RSA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RSA (Remote Shadow Administrator)

RSA RSA RSA
RSA

🚀 Скачать (RSA.exe)

💡 Описание

Программа для подключения к текущим RDP-сессиям по средствам Shadow-подключения. Так же содержит набор модулей, направленного на автоматизацию удаленного администрирования и взаимодействия с ОС Windows.

Можно использовать как альтернативное средство для удаленного подключения, таким как Radmin или VNC, которые требуют установки программного обеспечения по модели клиент-сервер. Используется 100% кода на PowerShell и Windows Forms (без использования Toolbox), не содержит зависимостей в виде модулей. Протестировано на Windows Server 2016-2019 DC и Windows 10 Pro, не зависит от локализации ОС.

📦 Модули

  • Get-Query - используется для парсинга программы query.exe с выводом в PSObject, с целью отображения текущих сессий и запущенных пользовательских процессов на компьютере (версия 1.2).

  • Get-Query-Network - модуль для поиска пользователей в сети.

  • Get-Invent - используется для сбора данных об оборудовании на удаленном компьютере с выводом развернутого отчета в HTML-файл (версия 1.1).

  • RSA-Modules - сборник некоторых функций, которые я выделил в отдельные модули.

📘 Функционал

При выборе сервера и нажатии кнопки Query отображается список текущих пользователей в виде таблицы, предварительно проверяется доступность хоста (ping) и WinRM а так же uptime с выводом в status bar. Для изменения списка компьютеров в меню выбрать File - List Change (Ctrl+S), для обновления списка - List Update (Ctrl+R). При выборе пользователя, можно произвести четыре действия: Connect (Shadow-подключение) с возможностью запроса на подключение и без (последнее удобно настраивается через GPO), отключение пользователя (выход из системы), отображение списка запущенных процессов пользователя с возможность их завершения (правкой кнопкой мыши по выбранному процессу - Stop Process) и отправка набранного сообщения всем пользователям на сервере или выбранному в таблице. Есть возможность заполнить список серверов компьютерами AD (Ctrl+D) а так же вывести список в формате таблицы (Ctrl+T) с возможность сортировки и взаимодействия с выбранным компьютером.

Для подключение к серверу через rdp используется mstsc с ключем /admin, что позволяет подключаться к RDSH-серверу минуя Broker. Для аутентификации используется cmdkey, после прохождения единоразовой аутентификации (File - Authentication), используется предварительная аутентификация на все сервера в списке и действует до закрытия программы, что позволяет не хранить пароль администратора в коде, а так же хранилище ключей ОС (которые можно скомпрометировать).

🔔 Дополнения

  • Admin - Services - выводит списка служб на локальном или удаленном компьютере с возможность их запуска/перезапуска и остановки.
  • Admin - All Remote User Process - используется для отображения списка всех пользовательских процессов с возможность их остановки.
  • Admin & WMI - Software - выводит список установленного программного обспечения с возможность его удаления
  • WMI - Windows Update - вывода списка обновлений с дальнейшим поиском по HotFixID в DISM Packages и удалением.
  • Admin - SMB Open Files - отображение списка используемых сетевых сесурсов пользователями в сети с возможность закрытия их сессии.
  • Admin - Get-Netstat - вывод списка слушающих и установленных TCP-соединений с преобразованием имени удаленного хоста (nslookup) и используемого процесса.
  • Admin - Get-RemoteDNS - используется для удаленного просмотра на DC (не требует установки модуля из состава RSAT) списка всех DNS зон и дочерних записей выбранной зоны с возможностью удаления выбранной записи.
  • Admin - GPUpdate - обновление групповых политик на удаленном компьютере.
  • Admin - GPResult - составление сводного отчёта по результатам групповых политик в формате HTML для указанного пользователя на выбранном хосте.
  • Power - Reboot & Power Off - перезагрузка или выключение хоста с задержкой 60 секунд.
  • Power - Screen lock & Sleep mode - включение/отключение блокировки экрана и спящего режима на удаленном компьютере.
  • Power - Get-ARP & Get-DHCP - используются для поиска MAC-адреса выключенного компьютера с целью его включения с помощью Wake-on-Lan.
  • Event - логи питания (Power) и пять журналов событий для анализа подключений/отключений сессий.
  • Broker - автоматизация командлетов взаимодействия с RDSH-фермой.
  • WMI - Logical Disk & Memory - выводит общий и доступный объём локических дисков и оперативной памяти.
  • WMI - Drivers - отобразить список драйверов.
  • WMI - File Share - список общедоступных ресурсов на хосте (директорий или принтеров).
  • WMI - Power RDP & Power NLA - проверяет статус Remote Desktop Protocol и Network Level Authentication на удаленно хосте с возможность включения и отключения.

WMI - Setup - установка программного обеспечения на удаленный компьютер. Через install-package (сейчас используется этот вариант) и два метода через WMI. В первом случае установка происходит не на всех серверах (не зависимо от использования версии TLS), в случае с wmi установка происходит из UNC-пути только на тот же сервер, где лежит msi-пакет (в т.ч. через invoke session с предварительной аутентификацией на удаленной машине, где директория доступна по пути через icm).

Скрипты по синхронизации компьютерных часов (w32tm).

  • Отображает текущее время на сервере и разницу с сервером источника (localhost).
  • Узнать источник времени, а так же частоту и время последней синхронизации (последнее отображается в зависимости от языкового пакета на удаленной машине).
  • Проверка сервера как источника времени.
  • Изменить на удаленном сервере источник времени на ближайший DC (с ролью PDC) в подсети.
  • Изменить на внешний источник времени (например: ru.pool.ntp.org).
  • Незамедлительно синхронизировать время на удаленном сервере с источником.

Скрипты по активации корпоративных лицензий в сети (KMS).

  • Узнать редакцию и версию ОС, канал получения лицензии, тип ключа, статус активации и сервер лицензирования.
  • Узнать адрес KMS-сервера в сети по srv-записи.
  • GVLK-активатор. Содержит публичные ключи GVLK (Generic Volume License Key) с возможностью удаленной активации.
  • Указать в ручную KMS-сервер (например, если KMS-сервер не опубликован в DNS).
  • Запросить (обновить) лицензию с KMS-сервера.