Помните популярный ратник Dark Comet, в народе именуемый Комета? Долгое время автор Кометы (Jean Pierre Lesueur) оставался в тени и не был заметен в мире ИБ. Недавно он вернулся с интересным проектом под названием Arcane, который предназначен для организации удаленного рабочего стола. Ну, а самое интересное — он полностью написан на PowerShell. В статье рассмотрим возможности, установку и использование Arcane на Windows и Kali Linux.
Еще по теме: Лучшие RAT для Kali Linux
Что такое Arcane
Arcane — это тулза для создания удаленного рабочего стола между компьютерами Windows (или Linux) и Windows. Это первый и единственный подобный инструмент на PowerShell, что делает его использование простым, без необходимости устанавливать дополнительные зависимости или проводить сложные настройки. Серверная часть приложения состоит из одного модуля, который включает в себя все необходимые функции.
Первоначально проект назывался PowerRemoteDesktop и был полностью написан на PowerShell, включая клиентскую часть. Позже название сменили на Arcane, а клиент был переписан на Python с использованием PyQt6, что сделало его кроссплатформенным. Основная идея проекта — показать, что на PowerShell можно создавать даже сложные приложения.
Статья в образовательных целях, для обучения пентестеров (этичных хакеров). Ни редакция spy-soft.net, ни автор не несут ответственности за ваши действия.
Сервер работает на операционных системах Microsoft Windows (проверено на Windows 10 и 11, как 32-битных, так и 64-битных версий, а также на Windows 11 ARM). Клиентская часть (или Viewer) кроссплатформенна и может запускаться на Windows, macOS и Linux (x86 и ARM).
Инструмент бесплатный, с открытым исходным кодом.
Возможности Arcane:
- Arcane эффективно передает измененные части экрана вместо всего экрана целиком, что значительно уменьшает нагрузку на пропускную способность и процессор. Экран делится на квадраты 64×64 пикселя, и только измененные квадраты передаются клиенту. Это позволяет приложению работать быстро и потреблять минимум трафика.
- Вся передаваемая информация между клиентом и сервером шифруется с использованием TLS, минимально поддерживается версия TLS v1.2. Пароль не передается напрямую, используется механизм аутентификации на основе вызова.
- Если на удаленном компьютере подключено несколько экранов, Arcane позволяет выбрать, какой из них отображать и управлять им после подключения. Также можно запустить два экземпляра Viewer для подключения к разным экранам одновременно.
- Arcane синхронизирует курсор мыши между удаленным компьютером и виртуальным рабочим столом клиента, улучшая взаимодействие с пользователем.
- Сервер Arcane поддерживает одновременные подключения нескольких пользователей, что позволяет всем им управлять удаленным рабочим столом одновременно.
Установка Arcane
Как уже говорилось выше, инструмент состоит из двух частей:
- Клиент — устанавливается свою машину.
- Сервер — устанавливается на удаленный целевой компьютер.
Установка клиента на Windows
Для установки клиента Windows необходимо наличие Python версии не ниже 3.8.
Установить клиент (viewer) можно с помощью pip:
1 |
pip install arcane-viewer |
Рекомендуется использовать виртуальное окружение Python:
1 2 3 4 |
python -m venv venv source venv/bin/activate (venv) pip install arcane-viewer arcane-viewer |
Эти команды создают виртуальное окружение Python, активируют его, устанавливают Arcane Viewer с помощью pip и запускают его.
Установка клиента на Kali Linux
Для использования Arcane Viewer на Kali Linux может потребоваться установка дополнительных зависимостей. В частности, нужно установить следующий пакет:
1 |
sudo apt install libxcb-cursor-dev |
Кроме традиционного способа установки, есть и другие методы для использования как клиента, так и сервера.
Если вы предпочитаете не использовать PyPI.org для установки пакета, вы можете скачать готовый пакет из раздела релизов официального репозитория. Затем можно установить пакет с помощью pip, используя файл .whl или tar.gz.
1 |
pip install arcane_viewer-1.0.0b1.tar.gz |
Также можно собрать собственный пакет, используя скрипт `build.sh`, который находится в корневой папке проекта Arcane Viewer на Python.
Для использования скрипта build.sh необходимо иметь установленные следующие зависимости:
- tox
- isort
- flake8
Если хотите пропустить проверки tox и flake8, используйте опции --skip-tox и --skip-flake8 при запуске скрипта:
1 |
./build.sh [--skip-tox] [--skip-flake8] |
После успешного завершения сборки файлы .tar.gz и .whl будут находиться в папке dist внутри корневого каталога пакета.
Кроме того, вы можете запустить приложение напрямую, перейдя в корневую директорию проекта выполнив следующие команды:
1 2 3 4 |
git clone https://github.com/PhrozenIO/Arcane.git cd Arcane pip install -r requirements.txt python -m arcane_viewer.main |
Установка сервера
Для установки сервера используйте PowerShell Gallery:
1 |
Install-Module -Name Arcane_Server |
Эта команда устанавливает модуль Arcane_Server из PowerShell Gallery.
Использование
Следующие команды запускают PowerShell с обходом политики выполнения скриптов, импортируют модуль Arcane_Server и запускают сервер Arcane:
1 2 3 |
powershell.exe -executionpolicy bypass Import-Module Arcane_Server Invoke-ArcaneServer |
Теперь можно подключиться к серверу с помощью Viewer, указав IP-адрес сервера, порт и пароль.
Заключение
Arcane — это перспективный проект, но пока еще на стадии бета-тестирования. Разработчик планирует добавление новых функций и улучшений в будущем. Следите за обновлениями на GitHub и поддержите проект, добавив его в избранное.
ПОЛЕЗНЫЕ ССЫЛКИ:
- Как создать RAT для Android
- Скрытый удаленный контроль телефона с AndroRAT
- Доставка вредоноса на целевую систему через PowerShell