Перевод: PSScriptAnalyzer: Инструмент SAST для сценариев PowerShell
@Ent_TranslateIB
PowerShell Script Analyzer, также известный как PSScriptAnalyzer, представляет собой инструмент статического анализа кода (SAST-инструмент), который исследует написанный в PowerShell код и оценивает его на наличие различных машинно-измеримых лучших практик. Модуль выполняет эту задачу с помощью правил, каждое из которых определяет лучшую практику и указывает механизму, как ее проверять. Однако правила можно настроить и использовать для проверки лучших практик написания сценариев и безопасного анализа кода.
1- Откройте командную строку в windows с правами администратора и введите PowerShell.

2- Чтобы начать работу, сначала нужно установить и импортировать необходимый модуль PowerShell. Введите приведенные ниже команды.
Install-Module -Name PSScriptAnalyzer
Import-Module -Name PSScriptAnalyzer
3- Чтобы проверить встроенные правила, имеющиеся в PSScriptAnalyzer.
Get-ScriptAnalyzerRule | Select-Object RuleName

4- Чтобы проверить описание любого упомянутого правила
Get-ScriptAnalyzerRule -Name "RuleName"

Invoke-ScriptAnalyzer .\Sample.ps1

6- Упорядочить результаты в систематическом формате.
Invoke-ScriptAnalyzer .\Script_Tags.ps1 | Select-Object Severity, Line, Message, RuleName | Format-List

Аудит безопасности для сценариев PowerShell:
1- Скопируйте и вставьте следующую команду для установки пакета "InjectionHunter" (https://www.powershellgallery.com/packages/InjectionHunter/1.0.0
).
Install-Module -Name InjectionHunter
2- Проверьте путь, где развернут InjectionHunter.
Get-Module InjectionHunter -List | Foreach-Object Path

3- Вызовите анализатор + InjectionHunter с помощью указанной ниже команды.
Invoke-ScriptAnalyzer .\Script_Tags.ps1 -CustomRulePath (Get-Module InjectionHunter -List | % Path) -v

Это лишь введение в анализ SAST с помощью PSScriptAnalyzer, существует гораздо больше настроек, которые вы можете выполнить с помощью этого инструмента, например, создать свои собственные правила, выполнить тестирование безопасности и так далее. Не стесняйтесь обращаться к документации по этому инструменту.
(Ссылка URL: https://learn.microsoft.com/en-us/powershell/module/psscriptanalyzer/?view=ps-modules)
Оставайтесь любопытными, оставайтесь защищенными!
Оригинал статьи - здесь.
Поддержите автора хлопками на Medium.
Перевод статьи был выполнен проектом перевод энтузиаста:
- 📚 @Ent_TranslateIB - Телеграмм канал с тематикой информационной безопасности
- 🔥 @Ent_Translate - Инстаграм проекта