Назад | Перейти на главную страницу

Последствия для безопасности Powershell Remoting путем добавления пользователей в WinRMRemoteWMIUsers

В нашем текущем рабочем процессе мы должны подключиться к нескольким серверам по протоколу RDP, чтобы знать, работает ли служба. Мы делаем нет прав администратора к этим серверам, но им разрешено просматривать, запускать и останавливать службы.

Вместо этого мы хотели бы использовать Powershell Remoting. Что-то вроде

 (1..8)|%{gsv -c "server$($_" -n "*ourservice*"}

было бы и проще, и быстрее.

Правильно ли я это добавляю наших пользователей в WinRMRemoteWMIUsers группа


редактировать

Следующий отрывок, взятый из Secrects of Powershell Remoting, похоже, решает проблемы безопасности.

powershellorg · Секреты удаленного взаимодействия PowerShell

Ни PowerShell, ни удаленное взаимодействие не являются «лазейкой» для вредоносных программ.

Это серьезное заблуждение. Имейте в виду, что по умолчанию PowerShell не выполняет сценарии. Когда он это делает, он может выполнять только те команды, на выполнение которых у выполняющего пользователя есть разрешение - он ничего не выполняет под сверхпривилегированной учетной записью и не обходит ни существующие разрешения, ни безопасность.

и

Итог: из-за того, как он работает, PowerShell Remoting не позволяет любому пользователю, авторизованному или нет, делать то, что они не могли сделать с помощью десятка других средств.

Мы не можем сделать с системой ничего, чего не могли бы сделать прямо сейчас, просто с помощью RDP (проблема управления безопасностью).

Риск заключается в том, что злоумышленник может получить доступ через PowerShell, если учетная запись в этой группе будет скомпрометирована. Оценка риска такого доступа и компенсирующие меры контроля - это то, что вам необходимо определить в зависимости от вашей среды.


Чтобы ответить на ваши последующие вопросы, я не верю, что кто-то может сделать общее предположение / вывод, что учетная запись также может входить в систему с использованием RDP. Если учетная запись / сервер (ы) настроены для использования смарт-карты, они не могут войти в систему с помощью RDP.

Безопасность заключается в оценке риска и применении компенсационных мер. Конструктивное встречное предложение может заключаться в следующем:

  • Используйте брандмауэр, чтобы ограничить сетевой доступ для PowerShell Remoting для определенных административных компьютеров / узлов перехода (tcp / 5985 и / или tcp / 5986).
  • Используйте групповую политику для ограничения / принудительного членства WinRMRemoteWMIUsers в определенных группах домена.
  • Разрешить членство только авторизованных учетных записей в этих конкретных группах домена.
  • Реализуйте аудит активности PowerShell / WinRM / WinRS и отправьте / включите эти журналы событий в события, которые группа безопасности отправляет обратно в центральный сборщик журналов событий (при условии, что они это делают). Встроенные журналы событий для PowerShell и WinRM на самом деле довольно слабы в этом отношении, но вы можете использовать SysInternals SysMon для этого. Вот пример:

Пример командной строки события PowerShell Remoting:

Пример командной строки события WinRS: