D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
Источник: https://github.com/PhrozenIO/PowerRunAsSystem
Перевёл: Эрмано
Специально для XSS.IS
Привет, я снова решил покопипастить перевести пару статей, на этот раз перевожу про PowerRunAsSystem - это сценарий PowerShell, также доступный в виде устанавливаемого модуля через галерею PowerShell, предназначенный для выдачи себя за пользователя NT AUTHORITY/SYSTEM и выполнения команд или запуска интерактивных процессов без использования сторонних инструментов. Для этого используются только встроенные функции Windows.
Традиционно повышение привилегий до пользователя SYSTEM из учетной записи администратора требует использования таких инструментов, как PsExec от Sysinternals, или создания собственной службы. С помощью PowerRunAsSystem вы можете достичь той же цели, используя встроенный планировщик задач Windows, избавившись от необходимости использовать внешние утилиты.
Этот инструмент позволяет:
Представленные функции
Код: Скопировать в буфер обмена
Импортировать как скрипт
Это может быть особенно полезно в сценариях, где требуется интерактивный процесс SYSTEM. Например, при использовании Arcane Server запуск его как интерактивного процесса SYSTEM позволяет захватить как рабочий стол, так и подсказки LogonUI/UAC.
Доступные аргументы:
Расширенное использование : Флаг RedirectKind
Создайте новый слушатель Netcat (адаптируйте команду в зависимости от операционной системы и версии Netcat):
Затем запустите интерактивный процесс SYSTEM:
Наслаждайтесь оболлочкой от имени SYSTEM!
Итог:
В этом переводе мы изучили набор скриптов - PowerRunAsSystem, который может очень сильно помочь, при проведении пентестов.
С вами был Эрмано, спасибо за внимание.
Перевёл: Эрмано
Специально для XSS.IS
Привет, я снова решил
Традиционно повышение привилегий до пользователя SYSTEM из учетной записи администратора требует использования таких инструментов, как PsExec от Sysinternals, или создания собственной службы. С помощью PowerRunAsSystem вы можете достичь той же цели, используя встроенный планировщик задач Windows, избавившись от необходимости использовать внешние утилиты.
Этот инструмент позволяет:
- Выдать себя за пользователя SYSTEM в текущей сессии
- Исполнять неинтерактивные команды от имени SYSTEM
- Запустите новый интерактивный процесс от имени SYSTEM (привязанный к активной сессии).
Важно отметить, что для запуска процесса SYSTEM в стандартной конфигурации требуются привилегии администратора. Убедитесь, что вы либо получили доступ к удаленному терминалу (например, SSH или WinRM) с правами администратора, либо открыли новый терминал с повышенными привилегиями (Run as Administrator).
Нажмите, чтобы раскрыть...
Представленные функции
- Invoke-SystemCommand
- Invoke-InteractiveSystemProcess
- Invoke-ImpersonateSystem
- Invoke-RevertToSelf
PowerShell Gallery(Рекомендуется)
Для выполнения следующих команд в процессе установки могут потребоваться привилегии (например, права администратора, соответствующие настройки политики выполнения). Убедитесь, что вы понимаете и выполняете эти требования, прежде чем приступать к работе.Код: Скопировать в буфер обмена
Код:
Install-Module -Name PowerRunAsSystem
Import-Module -Name PowerRunAsSystem
Импортировать как скрипт
IEX(Get-Content .\PowerRunAsSystem.ps1 -Raw -Encoding UTF8)
Использованиевание
Invoke-SystemCommand:- Запустите новый процесс от имени пользователя SYSTEM через планировщик задач. Обратите внимание, что процесс SYSTEM не будет привязан к активной терминальной сессии, то есть он не будет интерактивным. Это удобно для быстрого выполнения команд от имени SYSTEM без необходимости прямого взаимодействия с процессом.
Параметр | Тип | По умолчанию | Описание |
---|---|---|---|
Приложение | Строковый | Программа для исполнения | |
Аргумент | Строковый | -Command "whoami | Out-File C:\result.txt" | Аргументы программы(опционально) |
Invoke-InteractiveSystemProcess
Создайте новый интерактивный процесс от имени пользователя SYSTEM, который будет привязан к активной терминальной сессии.Это может быть особенно полезно в сценариях, где требуется интерактивный процесс SYSTEM. Например, при использовании Arcane Server запуск его как интерактивного процесса SYSTEM позволяет захватить как рабочий стол, так и подсказки LogonUI/UAC.
Доступные аргументы:
Параметр | Тип | По умолчанию | Описание |
---|---|---|---|
CommandLine | String | powershell.exe | The complete command line to execute. |
Hide | Switch | None | If present, the process is not visible. |
RedirectKind | Choice | None | If the process input/output needs to be redirected to an external source (as discussed below)… |
Address | String | None | Used if the RedirectKind is set (as described below). |
Port | Int (R: 0-65535) | None | Used if the RedirectKind is set (as described below). |
None (по умолчанию)
- Никакого специального перенаправления не используется; процесс порождается нормально. Чтобы взаимодействовать с процессом, вы должны сделать это через рабочий стол.
Reverse
- Stdout, stderr и stdin процесса перенаправляются на сетевой сокет в обратном режиме (клиент -> сервер). Такая настройка позволяет взаимодействовать с порожденным процессом, не требуя доступа к рабочему столу, что особенно полезно, когда процесс инициируется из SSH или WinRM-сессии.
Создайте новый слушатель Netcat (адаптируйте команду в зависимости от операционной системы и версии Netcat):
nc -l 4444
Затем запустите интерактивный процесс SYSTEM:
Invoke-InteractiveSystemProcess -RedirectKind "Reverse" -Address "127.0.0.1" -Port 4444
Наслаждайтесь оболлочкой от имени SYSTEM!
Invoke-ImpersonateSystem
Выдать себя за пользователя SYSTEM в текущей терминальной сессии.Invoke-RevertToSelf
Остановка выдачи себя за другого пользователяИтог:
В этом переводе мы изучили набор скриптов - PowerRunAsSystem, который может очень сильно помочь, при проведении пентестов.
С вами был Эрмано, спасибо за внимание.