Удаленный запуск скриптов (with privesc)

Intro

Есть легальный способ удаленного запуска скриптов на других тачках (как psexec, но разрешено системой)

Включено по умолчанию, начиная с Windows Server 2012

Возможно, понадобиться включить удаленное исполнение (Enable-PSRemoting) на Win Desktop машине (привилегии админа для этого необходимы)

Мы получим shell с повышенными правами на удаленной системе, если admin creds используются для аутентификации (это настройки по умолчаний).

PowerShell Remoting

One-to-One

PSSession - Интерактивная - Запускается в новом процессе (wsmprovhost) - Stateful

Использует cmdlets: - New-PSSession - Enter-PSSession

One-to-Many (Fan-out)

не интерактивна команды запускаются параллельно

Использует cmdlets: - Invoke-Command

Invoke-Command

Запускает команды и скрипты: - на нескольких удаленных компьютерах - in disconnected sessions (v3) - как фоновая служба и многое др

Лучшая штука в PowerShell для передачи хешей, использования кредов и запуска команд на множестве удаленных компьютеров

Для передачи username/password использовать параметр -Credential

Примеры

Basic Usage

Подключение с использованием логина и пароля

Invoke-Command

При соединении с удаленным сервером будет импортирован Invoke-Mimikatz.ps1

Last updated