Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Configuration Manager (branch atual)
É responsabilidade do administrador validar o uso proposto do PowerShell e dos parâmetros do PowerShell em seu ambiente. Aqui estão alguns recursos úteis para ajudar a educar os administradores sobre o poder do PowerShell e das superfícies de risco em potencial. Essas diretrizes são para ajudá-lo a mitigar possíveis superfícies de risco e permitir que scripts seguros sejam usados.
Segurança do Script do PowerShell
O recurso de scripts do Configuration Manager permite que você examine e aprove visualmente os scripts. Outro administrador pode solicitar que seu script seja permitido. Os administradores devem estar cientes de que os scripts do PowerShell podem ter scripts ofuscados. Um script ofuscado pode ser mal-intencionado e difícil de detectar com inspeção visual durante o processo de aprovação de script. Examine visualmente os scripts do PowerShell e use ferramentas de inspeção para ajudar a detectar problemas suspeitos de script. Essas ferramentas nem sempre podem determinar a intenção do autor do PowerShell, portanto, isso pode chamar a atenção para um script suspeito. No entanto, as ferramentas exigirão que o administrador julgue se é uma sintaxe de script mal-intencionada ou intencional.
Recomendações
- Familiarize-se com as diretrizes de segurança do PowerShell usando os vários links referenciados abaixo.
- Assine seus scripts: Outro método para manter os scripts seguros é examiná-los e depois assiná-los, antes de importá-los para uso.
- Não armazene segredos (como senhas) em scripts do PowerShell e saiba mais sobre como lidar com segredos.
Informações gerais sobre a segurança do PowerShell
Essa coleção de links foi escolhida para fornecer aos administradores do Configuration Manager um ponto de partida para aprender sobre as recomendações de segurança de script do PowerShell.
Defesa contra ataques do PowerShell
Proteção contra injeção de código mal-intencionado
API para interface de verificação antimalware
Parâmetros segurança do PowerShell
Passar parâmetros é uma maneira de ter flexibilidade com seus scripts e adiar decisões até o tempo de execução. Também abre outra superfície de risco.
A lista a seguir inclui recomendações para evitar parâmetros mal-intencionados ou injeção de script:
- Permita apenas o uso de parâmetros predefinidos.
- Use o recurso de expressão regular para validar os parâmetros permitidos.
- Exemplo: se apenas um determinado intervalo de valores for permitido, use uma expressão regular para marcar apenas os caracteres ou valores que podem compor o intervalo.
- A validação de parâmetros pode ajudar a evitar que os usuários tentem usar determinados caracteres que podem ser escapados, como aspas. Pode haver vários tipos de aspas, portanto, usar expressões regulares para validar quais caracteres você decidiu que são permitidos geralmente é mais fácil do que tentar definir todas as entradas que não são permitidas.
- Use o módulo "caçador de injeções" do PowerShell na Galeria do PowerShell.
- Pode haver falsos positivos, portanto, procure intencional quando algo for sinalizado como suspeito para determinar se é um problema real ou não.
- O Microsoft Visual Studio tem um analisador de script que pode ajudar na verificação da sintaxe do PowerShell.
O vídeo a seguir intitulado: "DEF CON 25 - Lee Holmes - Get $pwnd: Attack Battle Hardened Windows Server" fornece uma visão geral dos tipos de problemas contra os quais você pode se proteger (especialmente a seção 12:20 a 17:50):
Recomendações de ambiente
A lista a seguir inclui recomendações gerais para administradores do PowerShell:
- Implante a versão mais recente do PowerShell, como a versão 5 ou posterior, que é interna ao Windows 10 ou posterior. Você também pode implantar o Windows Management Framework.
- Habilite e colete logs do PowerShell, incluindo opcionalmente o Log de Eventos Protegidos. Incorpore esses logs em seus fluxos de trabalho de assinaturas, busca e resposta a incidentes.
- Implemente a administração Just Enough em sistemas de alto valor para eliminar ou reduzir o acesso administrativo irrestrito a esses sistemas.
- Implantar políticas de controle de aplicativos do Windows Defender para permitir que tarefas administrativas pré-aprovadas usem a capacidade total da linguagem do PowerShell, limitando o uso interativo e não aprovado a um subconjunto limitado da linguagem do PowerShell.
- Implante o Windows 10 ou posterior para dar ao seu provedor de antivírus acesso completo a todo o conteúdo (incluindo conteúdo gerado ou ofuscado em tempo de execução) processado pelos Hosts de Script do Windows, incluindo o PowerShell.