Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Относится к Configuration Manager (Current Branch)
Администратор отвечает за проверку предложенного использования PowerShell и параметров PowerShell в своей среде. Ниже приведены полезные ресурсы, которые помогут ознакомить администраторов с возможностями PowerShell и потенциальными поверхностями риска. Это руководство должно помочь вам уменьшить потенциальные поверхности риска и разрешить использование безопасных сценариев.
Безопасность скриптов PowerShell
Функция сценариев Configuration Manager позволяет визуально просматривать и утверждать сценарии. Другой администратор может запросить разрешение сценария. Администраторам следует помнить, что сценарии PowerShell могут содержать запутанные сценарии. Запутанный сценарий может быть вредоносным, и его трудно обнаружить при визуальном контроле в процессе утверждения сценария. Визуально просматривайте сценарии PowerShell и используйте средства проверки для обнаружения подозрительных проблем в сценариях. Эти средства не всегда могут определить намерения автора PowerShell, поэтому они могут привлечь внимание к подозрительному сценарию. Однако эти инструменты потребуют от администратора определить, является ли синтаксис сценария вредоносным или преднамеренным.
Рекомендации
- Ознакомьтесь с рекомендациями по безопасности PowerShell по ссылкам ниже.
- Подписывайте свои скрипты: Еще один метод обеспечения безопасности скриптов — проверить их, а затем подписать перед импортом для использования.
- Не храните секреты (например, пароли) в сценариях PowerShell и узнайте больше об обработке секретов.
Общие сведения о безопасности PowerShell
Эта коллекция ссылок была выбрана, чтобы предоставить администраторам Configuration Manager отправную точку для изучения рекомендаций по безопасности сценариев PowerShell.
Защита от внедрения вредоносного кода
API для интерфейса сканирования антивредоносного ПО
Безопасность параметров PowerShell
Передача параметров — это способ обеспечить гибкость сценариев и отложить решения до времени выполнения. Это также открывает еще одну поверхность риска.
Следующий список включает рекомендации по предотвращению вредоносных параметров или внедрения скриптов:
- Разрешить использование только предварительно определенных параметров.
- Используйте функцию регулярного выражения для проверки допустимых параметров.
- Пример. Если разрешен только определенный диапазон значений, используйте регулярное выражение для проверки только тех символов или значений, которые могут составлять диапазон.
- Проверка параметров помогает предотвратить использование пользователями определенных символов, которые можно экранировать, например кавычек. Кавычек может быть несколько типов, поэтому использовать регулярные выражения для проверки того, какие символы вы решили признать допустимыми, часто проще, чем пытаться определить все недопустимые входные данные.
- Используйте модуль PowerShell "Охотник за внедрениями" в коллекции PowerShell.
- Могут быть ложные срабатывания, поэтому обращайте внимание на намерение, когда что-то помечается как подозрительное, чтобы определить, реальная ли это проблема.
- В Microsoft Visual Studio есть анализатор скриптов, который может помочь с проверкой синтаксиса PowerShell.
Следующее видео под названием: "DEF CON 25 - Lee Holmes - Get $pwnd: Attacking Battle Hardened Windows Server" дает обзор типов проблем, от которых вы можете защититься (особенно в разделе с 12:20 по 17:50):
Рекомендации по окружающей среде
Следующий список содержит общие рекомендации для администраторов PowerShell:
- Разверните последнюю версию PowerShell, например версию 5 или более позднюю, встроенную в Windows 10 или более позднюю версию. Вы также можете развернуть Windows Management Framework.
- Включите и собирайте журналы PowerShell, включая при необходимости ведение журнала защищенных событий. Включите эти журналы в свои рабочие процессы подписей, поиска и реагирования на инциденты.
- Внедрите Just Enough Administration в ценные системы, чтобы устранить или уменьшить неограниченный административный доступ к этим системам.
- Разверните политики управления приложениями в Защитнике Windows, чтобы разрешить предварительно утвержденным административным задачам использовать все возможности языка PowerShell, при этом ограничивая интерактивное и несанкционированное использование ограниченным подмножеством языка PowerShell.
- Разверните Windows 10 или более позднюю версию, чтобы предоставить поставщику антивирусной программы полный доступ ко всему содержимому (включая содержимое, созданное или деобфусцированное во время выполнения), обработанному узлами сценариев Windows, включая PowerShell.