{"id":14986401,"url":"https://github.com/lifailon/rsa","last_synced_at":"2025-04-11T20:32:12.210Z","repository":{"id":140732708,"uuid":"559480032","full_name":"Lifailon/RSA","owner":"Lifailon","description":"GUI program for connecting to ongoing RDP and RDS sessions as well as for remote administration and automation of Windows systems.","archived":true,"fork":false,"pushed_at":"2025-02-04T15:26:23.000Z","size":6273,"stargazers_count":40,"open_issues_count":0,"forks_count":4,"subscribers_count":5,"default_branch":"rsa","last_synced_at":"2025-04-05T15:51:38.754Z","etag":null,"topics":["gui","kms","monitoring","ntp","powershell","powershell-gui","query","rdp","rds","remote","remote-access","remote-access-tool","remote-administrative-tool","remote-control","remote-desktop","windows","windows-forms","windows-server","winforms","wmi"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Lifailon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-30T08:44:20.000Z","updated_at":"2025-03-25T13:51:52.000Z","dependencies_parsed_at":"2025-02-04T16:34:27.480Z","dependency_job_id":null,"html_url":"https://github.com/Lifailon/RSA","commit_stats":{"total_commits":326,"total_committers":3,"mean_commits":"108.66666666666667","dds":0.009202453987730008,"last_synced_commit":"6821aef3305b81807ec7bf90a80c3528aaad3b9f"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lifailon%2FRSA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lifailon%2FRSA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lifailon%2FRSA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lifailon%2FRSA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lifailon","download_url":"https://codeload.github.com/Lifailon/RSA/tar.gz/refs/heads/rsa","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248476416,"owners_count":21110276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gui","kms","monitoring","ntp","powershell","powershell-gui","query","rdp","rds","remote","remote-access","remote-access-tool","remote-administrative-tool","remote-control","remote-desktop","windows","windows-forms","windows-server","winforms","wmi"],"created_at":"2024-09-24T14:12:49.090Z","updated_at":"2025-04-11T20:32:07.194Z","avatar_url":"https://github.com/Lifailon.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"https://github.com/Lifailon/RSA/blob/rsa/Image/ico/RSA-Logo.ico\" width=\"25\" /\u003e RSA (Remote Shadow Administrator)\n\n[![RSA](https://img.shields.io/github/v/release/lifailon/rsa)](https://github.com/Lifailon/RSA/releases) [![RSA](https://img.shields.io/github/last-commit/lifailon/rsa)](https://github.com/Lifailon/RSA) [![RSA](https://img.shields.io/github/downloads/lifailon/rsa/total)](https://github.com/Lifailon/RSA) \\\n[![RSA](https://img.shields.io/github/v/release/lifailon/rsa?label=Telegram\u0026logo=Telegram\u0026style=social)](https://t.me/kup57)\n\n- [💡 Описание](#-Описание)\n- [📦 Модули](#-Модули)\n- [📘 Функционал](#-Функционал)\n- [🔔 Дополнения](#-Дополнения)\n\n**[🚀 Скачать (RSA.exe)](https://github.com/Lifailon/RSA/releases)**\n\n## 💡 Описание\n\nПрограмма для подключения к текущим RDP-сессиям по средствам **Shadow-подключения**. Так же содержит набор модулей, направленного на автоматизацию удаленного администрирования и взаимодействия с ОС Windows.\n\nМожно использовать как альтернативное средство для удаленного подключения, таким как Radmin или VNC, которые требуют установки программного обеспечения по модели клиент-сервер. **Используется 100% кода на PowerShell и Windows Forms (без использования Toolbox)**, не содержит зависимостей в виде модулей. Протестировано на Windows Server 2016-2019 DC и Windows 10 Pro, не зависит от локализации ОС.\n\n## 📦 Модули\n\n* **[Get-Query](https://github.com/Lifailon/Get-Query)** - используется для парсинга программы **query.exe с выводом в PSObject**, с целью отображения текущих сессий и запущенных пользовательских процессов на компьютере (версия 1.2).\n\n* **[Get-Query-Network](https://github.com/Lifailon/Get-Query-Network)** - модуль для поиска пользователей в сети.\n\n* **[Get-Invent](https://github.com/Lifailon/Get-Invent-SQLite)** - используется для сбора данных об оборудовании на удаленном компьютере с выводом развернутого отчета в HTML-файл (версия 1.1).\n\n* **[RSA-Modules](https://github.com/Lifailon/RSA-Modules)** - сборник некоторых функций, которые я выделил в отдельные модули.\n\n## 📘 Функционал\n\nПри выборе сервера и нажатии кнопки **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) с возможность сортировки и взаимодействия с выбранным компьютером.\n\n\u003ca href=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Interface-1.4.1.jpg\"\u003e\u003cimg src=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Interface-1.4.1.jpg\" width=\"400\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Services.jpg\"\u003e\u003cimg src=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Services.jpg\" width=\"400\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/LD.jpg\"\u003e\u003cimg src=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/LD.jpg\" width=\"400\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Time%2BLic%2BUpdate.jpg\"\u003e\u003cimg src=\"https://github.com/Lifailon/RSA/blob/rsa/Image/Screen/Time%2BLic%2BUpdate.jpg\" width=\"400\"/\u003e\u003c/a\u003e\n\nДля подключение к серверу через rdp используется mstsc с ключем /admin, что позволяет подключаться к RDSH-серверу минуя Broker. **Для аутентификации используется cmdkey**, после прохождения единоразовой аутентификации (File - Authentication), используется предварительная аутентификация на все сервера в списке и действует до закрытия программы, что **позволяет не хранить пароль администратора в коде, а так же хранилище ключей ОС (которые можно скомпрометировать)**.\n\n## 🔔 Дополнения\n\n* **Admin - Services** - выводит списка служб на локальном или удаленном компьютере с возможность их запуска/перезапуска и остановки.\n* **Admin - All Remote User Process** - используется для отображения списка всех пользовательских процессов с возможность их остановки.\n* **Admin \u0026 WMI - Software** - выводит список установленного программного обспечения с возможность его удаления\n* **WMI - Windows Update** - вывода списка обновлений с дальнейшим поиском по **HotFixID в DISM Packages** и удалением.\n* **Admin - SMB Open Files** - отображение списка используемых сетевых сесурсов пользователями в сети с возможность закрытия их сессии.\n* **Admin - Get-Netstat** - вывод списка слушающих и установленных TCP-соединений с преобразованием имени удаленного хоста (nslookup) и используемого процесса.\n* **Admin - Get-RemoteDNS** - используется для удаленного просмотра на DC (не требует установки модуля из состава RSAT) списка всех DNS зон и дочерних записей выбранной зоны с возможностью удаления выбранной записи.\n* **Admin - GPUpdate** - обновление групповых политик на удаленном компьютере.\n* **Admin - GPResult** - составление сводного отчёта по результатам групповых политик в формате HTML для указанного пользователя на выбранном хосте.\n* **Power - Reboot \u0026 Power Off** - перезагрузка или выключение хоста с задержкой 60 секунд.\n* **Power - Screen lock \u0026 Sleep mode** - включение/отключение блокировки экрана и спящего режима на удаленном компьютере.\n* **Power - Get-ARP \u0026 Get-DHCP** - используются для поиска MAC-адреса выключенного компьютера с целью его включения с помощью **Wake-on-Lan**.\n* **Event** - логи питания (Power) и пять журналов событий для анализа подключений/отключений сессий.\n* **Broker** - автоматизация командлетов взаимодействия с RDSH-фермой.\n* **WMI - Logical Disk \u0026 Memory** - выводит общий и доступный объём локических дисков и оперативной памяти.\n* **WMI - Drivers** - отобразить список драйверов.\n* **WMI - File Share** - список общедоступных ресурсов на хосте (директорий или принтеров).\n* **WMI - Power RDP \u0026 Power NLA** - проверяет статус Remote Desktop Protocol и Network Level Authentication на удаленно хосте с возможность включения и отключения.\n\u003e **WMI - Setup** - установка программного обеспечения на удаленный компьютер. Через install-package (сейчас используется этот вариант) и два метода через WMI. В первом случае установка происходит не на всех серверах (не зависимо от использования версии TLS), в случае с wmi установка происходит из UNC-пути только на тот же сервер, где лежит msi-пакет (в т.ч. через invoke session с предварительной аутентификацией на удаленной машине, где директория доступна по пути через icm).\n\n### Скрипты по синхронизации компьютерных часов (w32tm).\n* Отображает текущее время на сервере и разницу с сервером источника (localhost).\n* Узнать источник времени, а так же частоту и время последней синхронизации (последнее отображается в зависимости от языкового пакета на удаленной машине).\n* Проверка сервера как источника времени.\n* Изменить на удаленном сервере источник времени на ближайший DC (с ролью PDC) в подсети.\n* Изменить на внешний источник времени (например: ru.pool.ntp.org).\n* Незамедлительно синхронизировать время на удаленном сервере с источником.\n\n### Скрипты по активации корпоративных лицензий в сети (KMS).\n* Узнать редакцию и версию ОС, канал получения лицензии, тип ключа, статус активации и сервер лицензирования.\n* Узнать адрес KMS-сервера в сети по srv-записи.\n* GVLK-активатор. Содержит публичные ключи GVLK (Generic Volume License Key) с возможностью удаленной активации.\n* Указать в ручную KMS-сервер (например, если KMS-сервер не опубликован в DNS).\n* Запросить (обновить) лицензию с  KMS-сервера.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flifailon%2Frsa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flifailon%2Frsa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flifailon%2Frsa/lists"}