Avanços em Scripting de segurança e proteção no Windows 10 e PowerShell V5

Por Swiat

 

Nas últimas várias versões do Windows, temos trabalhado arduamente para tornar a plataforma mais poderosa para administradores, desenvolvedores e usuários avançados. PowerShell é uma língua incrivelmente útil e poderosa para gerenciar domínios do Windows. Infelizmente, os atacantes podem aproveitar estas mesmas propriedades durante a execução de atividades de "pós-exploração" (ações que são executadas depois que um sistema tenha sido comprometido).

A equipe do PowerShell, reconhecendo esse comportamento, avançou significativamente no log de segurança Windows 10 e PowerShell v5 com foco em deteção. Alguns recursos utilizam uma funcionalidade nova no Windows 10, outros estão disponíveis no Windows 8.1 e Windows Server 2012R2 com KB3000850 e a funcionalidade específica de PowerShell v5 estará disponível no Windows 7 e Windows Server 2008R2 quando a próxima versão do Windows Management Framework for liberada.

Scripts de transparência para os motores de Antimalware

Mecanismos antimalware tradicionalmente concentram a maioria de sua atenção em arquivos de aplicativos ou sistemas abertos. Scripting têm sido historicamente difícil para os motores de antimalware avaliarem porque os scripts podem tão facilmente ser ofuscados. A menos que o motor do antimalware possa emular a linguagem em particular, não será capaz de expor a carga do script atual.

Um novo recurso do Windows 10, o Antimalware Scan Interface (AMSI), permite que os aplicativos se tornem participantes ativos na defesa contra malware. Aplicativos podem agora solicitar avaliação de antimalware de qualquer conteúdo – não apenas de arquivos no disco. Isso dá mecanismos ao script e a outros aplicativos, a capacidade para avaliação a solicitação de scripts desofuscados, e pedido de avaliação de conteúdo introduzido diretamente no console.

Para obter mais informações sobre a Interface de Verificação Antimalware (AMSI), consulte http://blogs.technet.com/b/mmpc/archive/2015/06/09/windows-10-to-offer-application-developers-new-malware-defenses.aspx

 

Melhorias no log do PowerShell

Dado o poder incrível do PowerShell e linguagem de script, nós tivemos grandes avanços na transparência do PowerShell para PowerShell v5:

Transcrição Aprimorada

Versões anteriores do PowerShell provia a capacidade de sessões de transcrição. Infelizmente, transcriçao não era configurável, podia ser facilmente desativada e só trabalhava no console interativo do PowerShell. O resultado foi que a transcrição (transcript) não era muito prático para a detecção de atividade maliciosa.

Para o PowerShell v5 e Windows 8.1/2012R2 com KB3000850, as seguintes alterações foram feitas para transcrição:

    • Agora pode ser configurado como uma diretiva de grupo em todo o sistema
    • Fornece a melhor informação sobre a sessão que a funcionalidade da transcrição anterior
    • Transcrição funciona em sessões de PowerShell interativas e não-interativas.

Registro de comandos em blocos nos logs

Versões anteriores do PowerShell fornecia "pipeline log", um mecanismo para registrar todos os comandos invocados com os parâmetros. A forma que esta informação foi registrada tornou difícil usar a auditoria de segurança e detecção. No PowerShell v5 e Windows 8.1/2012R2 com KB3000850, o PowerShell ganha novo mecanismo de log de segurança chamado "Registro de Scripts em Bloco ".

"Bloco de script" é o nível de base de código executável no PowerShell. Mesmo quando um script é ofuscado, eventualmente deve ser transformado de um “blocos de scripts ofuscados” de volta na para “blocos de scripts desofuscados” contendo a carga maliciosa.

PowerShell agora oferece a opção de registrar todos os blocos de script para o log de eventos, antes de executá-los. No caso de scripts ofuscados, ambos os blocos de script ofuscados e desofuscados vão acabar sendo registrados. Isto dá a capacidade de ver exatamente que código de defesa do PowerShell está sendo executado em seus sistemas.

Log de evento protegidos

Uma das preocupações quando você aumenta o log para é que as informações que já foram registradas podem conter dados sensíveis da máquina. Se um invasor comprometer essa máquina, esta informação sensível no log de eventos pode ser uma mina de ouro de credenciais, sistemas confidenciais e muito mais. Para ajudar a resolver esta preocupação, nós adicionamos Event Logging Protegido no Windows 10, que permite aos aplicativos participantes criptografar dados confidenciais no log de eventos. Em seguida, você pode descriptografar e processar esses logs uma vez que você já os tenha transferido para um colecionador de logs mais seguro e centralizado.

Melhorias de segurança diversos

Recursos de segurança adicionais adicionados ao PowerShell v5 incluem:

    • Cmdlets de criptografia e descriptografia usando o padrão de sintaxe de mensagens criptográficas (CMS)
    • Geração de código seguro APIs para desenvolvedores
    • "PowerShell restrito" para sistemas que implementam políticas de AppLocker

 

Para obter mais informações sobre as melhorias de transparência do PowerShell, o log de eventos protegidos e outras melhorias de segurança do PowerShell, consulte http://blogs.msdn.com/b/powershell/archive/2015/06/09/powershell-the-blue-team.aspx

 

Original: http://Blogs.technet.com/b/SRD/Archive/2015/06/10/Advances-in-scripting-Security-and-Protection-in-Windows-10-and-PowerShell-V5.aspx