Links para todas as partes:Parte 1. Obtendo Acesso Inicial (Acesso Inicial)Parte 2. ExecuçãoParte 3. Fixação (Persistência)Parte 4. Escalonamento de PrivilégiosParte 5. Evasão de DefesaParte 6. Obtendo credenciais (acesso a credenciais)Parte 7. DescobertaParte 8. Movimento LateralParte 9. Coleta de Dados (Coleção)Parte 10 ExfiltraçãoParte 11. Comando e ControleTendo obtido, como resultado de um compromisso inicial, acesso ao sistema, o adversário deve “olhar em volta”, entender que agora controla quais oportunidades ele tem e se o acesso atual é suficiente para alcançar um objetivo tático ou final. Este estágio do ataque é chamado de "Descoberta" (Eng.
Descoberta - "descoberta científica", "divulgação", "exposição").
O autor não se responsabiliza pelas possíveis consequências da aplicação das informações contidas no artigo e também se desculpa por eventuais 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 .Os sistemas operacionais têm muitas ferramentas internas com as quais o adversário pode estudar o perímetro interno da rede atacada depois que ela é comprometida. No Windows, a interação direta com a funcionalidade API do Windows, WMI e PowerShell pode ser usada para coletar informações.
Um invasor usa métodos de detecção enquanto estuda o ambiente atacado; portanto, a identificação de tal atividade deve ser considerada como parte da cadeia de ataques, seguida por tentativas de avançar o inimigo pela rede.
Como uma medida destinada a identificar a atividade descrita acima em sistemas protegidos, recomenda-se que processos e argumentos de linha de comando sejam monitorados para que possam ser usados na coleta de informações sobre um sistema ou rede. Uma recomendação geral para impedir a possibilidade de investigação interna não autorizada do sistema e da rede protegidos é auditar a presença de utilitários desnecessários do sistema e software potencialmente perigoso que podem ser usados para estudar o ambiente protegido e usar ferramentas para bloquear seu lançamento, por exemplo, AppLocker ou políticas de restrição de software (Software Restriction Políticas).
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: os invasores podem tentar obter uma lista de contas no sistema ou domínio local.
WindowsPara obter informações da conta, os utilitários
Net ou
Dsquery podem ser usados:
net user
net group
net localgroup
dsquery user
dsquery group
Um invasor pode usar a
Descoberta do proprietário / usuário do sistema para procurar o usuário principal, o usuário atual de um sistema ou um grupo de usuários que normalmente usam o sistema.
MacNo Mac, é possível obter grupos de usuários usando os comandos
groups e
id . Grupos de usuários e usuários também podem ser listados usando os seguintes comandos:
dscl . list /Groups
dscacheutile -q group
LinuxNo Linux, os usuários locais podem ser obtidos no
arquivo / etc / passwd , que pode ser lido por todos os usuários. No Mac, o mesmo arquivo é usado apenas no modo de usuário único, além do arquivo
/etc/master.passwd . Além disso, os
grupos e os comandos
id também estão disponíveis no Linux.
Recomendações de proteção: evite a possibilidade de listar contas de administrador ao elevar privilégios por meio do UAC, pois isso levará à divulgação de nomes de contas de administrador. A chave do registro correspondente pode ser desabilitada usando o GPO:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\CredUI\
EnumerateAdministrators
GPO: Computer Configuration > [Policies] > Administrative Templates > Windows Components > Credential User Interface: Enumerate administrator accounts on elevation.
Sistema: Windows, macOS
Direitos: Usuário
Descrição: os invasores podem tentar obter listas de janelas abertas pelos aplicativos. Essas listas podem indicar como o sistema é usado no local ou descobrir o contexto das informações coletadas pelo keylogger. Em um Mac, isso pode ser feito com um pequeno script AppleScript.
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: para descobrir o máximo possível de informações sobre um sistema comprometido, os invasores podem examinar os favoritos do navegador do usuário. Os marcadores podem revelar informações pessoais sobre usuários (por exemplo, sites bancários, interesses pessoais, redes sociais etc.), bem como informações sobre recursos de rede internos da rede - servidores, ferramentas, painéis e outros elementos de infraestrutura. Um adversário pode usar credenciais armazenadas em cache em um navegador para obter acesso aos serviços do usuário cujos endereços estão armazenados nos indicadores do navegador. Os locais de armazenamento para favoritos dependem da plataforma e das especificidades dos aplicativos e do SO. Os favoritos do navegador geralmente são armazenados como arquivos ou bancos de dados locais.
Recomendações de proteção: como o armazenamento de informações em arquivos é um recurso padrão do sistema operacional, as tentativas de suprimir essa atividade serão inadequadas. Por exemplo, restringir o acesso aos arquivos de favoritos do navegador pode levar a efeitos colaterais não intencionais e interromper o software legítimo. Os esforços de defesa devem ser direcionados para impedir o lançamento das ferramentas e ferramentas de um invasor nos estágios anteriores de um ataque.
Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador, Sistema
Descrição: os invasores podem listar arquivos e diretórios ou procurar informações específicas em locais específicos no host ou em recursos de rede compartilhados.
WindowsExemplos de utilitários para obter informações sobre arquivos e diretórios são
dir e
tree . Ferramentas personalizadas por meio de interação direta com a API do Windows também podem ser usadas para coletar informações sobre arquivos e diretórios.
Linux e macOSNo Linux e macOS, a navegação em arquivos e diretórios é feita usando os comandos
ls, find e
find .
Recomendações de proteção: como a apresentação de informações na forma de arquivos e diretórios é um recurso padrão do sistema operacional, as tentativas de suprimir essa atividade serão inadequadas. Os esforços de defesa devem ser direcionados para impedir o lançamento das ferramentas e ferramentas de um invasor nos estágios anteriores de um ataque.
Sistema: Windows, Linux, macOS
Direitos: Administrador, Sistema
Descrição: os invasores podem tentar obter uma lista de serviços em execução em hosts remotos, incluindo aqueles que podem estar vulneráveis às ferramentas de acesso remoto. Os métodos para obter essas informações incluem a verificação de portas e vulnerabilidades usando ferramentas baixadas no sistema.
Dicas de
segurança: Use os sistemas IDS / IPS para detectar e impedir verificações remotas. Verifique se as portas desnecessárias estão fechadas, os serviços não utilizados estão desativados e a segmentação de rede adequada é respeitada para proteger servidores e dispositivos críticos.
Sistema: Windows, macOS
Direitos: Usuário
Descrição: nas redes locais, geralmente existem pastas e unidades de rede compartilhadas que permitem aos usuários acessar diretórios de rede de diretórios de arquivos localizados em sistemas diferentes. Os invasores podem procurar pastas e unidades de rede compartilhadas em sistemas remotos, a fim de procurar fontes de dados de destino e identificar sistemas em potencial para movimento adicional na rede.
WindowsO compartilhamento de arquivos nas redes Windows é feito usando o protocolo SMB. O utilitário
Net pode ser usado para obter informações de um sistema remoto sobre a presença de unidades de rede compartilhadas nele:
net view \remotesystem
Ou obtenha informações sobre unidades de rede compartilhadas no sistema local:
net share
.
MacEm um Mac, os compartilhamentos de rede montados localmente podem ser visualizados com o comando:
df -aH
.
Sistema: Windows, Linux, macOS
Descrição: um invasor pode usar a interface de rede no
modo promíscuo (
modo "inaudível"), no qual a placa de rede aceita todos os pacotes, independentemente de quem eles são endereçados ou usa portas de extensão (portas espelhadas) para capturar uma grande quantidade de dados transmitidos por fio. ou redes sem fio.
Os dados capturados durante o sniffing podem conter credenciais enviadas por conexões não seguras sem o uso de protocolos de criptografia. Vários ataques aos serviços de nome de rede, como envenenamento por LLMNR / NBT-NS, redirecionando o tráfego, também podem ser usados para coletar credenciais em sites, proxies e sistemas internos. Ao ouvir uma rede, um adversário também pode revelar várias informações de configuração (serviços em execução, números de versão, endereços IP, nomes de host, IDs de VLAN etc.) necessárias para um movimento adicional na rede e / ou para ignorar os recursos de segurança.
Dicas de segurança: verifique se o tráfego sem fio está criptografado corretamente. Se possível, use autenticação Kerberos, SSL e multifator. Monitore os comutadores de rede para portas span, envenenamento por ARP / DNS e alterações não autorizadas na configuração do roteador. Use ferramentas para identificar e bloquear software potencialmente perigoso que pode ser usado para interceptar e analisar o tráfego de rede.
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: uma política de senha na rede é uma maneira de os usuários garantidos usarem senhas complexas que são difíceis de adivinhar ou decifrar pela força bruta. Um invasor pode tentar acessar informações sobre as configurações da diretiva de senha da rede atacada, a fim de criar uma lista de senhas conhecidas comuns que atendem aos requisitos da diretiva (por exemplo, se a diretiva tiver um tamanho mínimo de senha de 8 caracteres, não tente usar senhas como pass123 ou não verifique mais de 3) 4 senhas por conta, se o número de tentativas malsucedidas for igual a 6) e o início subsequente da seleção de senhas no dicionário. As políticas de senha podem ser aplicadas e detectadas no Windows, Linux e macOS.
Windowsnet accounts
net accounts /domain
Linuxchage -l
cat /etc/pam.d/comman-password
macOSpwpolicy getaccountpolicies
Recomendações de proteção: não são recomendadas tentativas para impedir diretamente a detecção de uma política de senha, pois as configurações da política de senha devem ser conhecidas por todos os sistemas e usuários da rede. Verifique se a política de senha que você usa dificulta o uso de senhas com força bruta e não permite o uso de senhas muito leves. A maneira mais comum de aplicar uma diretiva de senha em uma rede corporativa é implementar o Active Directory.
Se houver uma tarefa para detectar atividades maliciosas, monitore os processos em busca de ferramentas e argumentos da linha de comandos que indiquem tentativas de identificar uma política de senha. Combine essa atividade com outras atividades suspeitas do sistema de origem para reduzir a probabilidade de um evento falso relacionado às ações do usuário ou administrador. O adversário provavelmente tentará identificar os parâmetros da política de senha nos estágios iniciais do ataque ou em conjunto com o uso de outras técnicas do estágio de identificação e revisão.
Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: os invasores podem tentar coletar informações sobre os periféricos conectados aos computadores na rede atacada. Essas informações podem ser usadas para aumentar a conscientização sobre o ambiente atacado e podem ser usadas no planejamento de ações maliciosas adicionais.
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: os invasores podem tentar encontrar grupos de acesso local ou de domínio e examinar suas configurações de permissão.
WindowsVocê pode listar grupos de acesso usando o utilitário
Net :
net group /domain
ner localgroup
LinuxNo Linux, grupos locais podem ser enumerados usando o comando
groups , grupos de domínio podem ser enumerados usando o comando
ldapsearch .
macOSNo Mac, você pode fazer o mesmo com os seguintes comandos:
dscacheutil -q
- para grupos de domínio;
dscl . -list /Groups
dscl . -list /Groups
- para grupos locais.
Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador, Sistema
Descrição: os oponentes podem tentar obter informações sobre os processos em execução no sistema para obter informações sobre o software em execução nos sistemas da rede atacada.
WindowsUm exemplo de como obter informações sobre processos no Windows é o utilitário do sistema
Tasklist .
Mac e LinuxNo Mac e Linux, isso é feito usando o comando
ps .
Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: os invasores podem interagir com o registro do Windows para coletar informações sobre o sistema, a configuração e o software instalado. O registro contém uma quantidade significativa de informações sobre o sistema operacional, configuração, software e segurança. Algumas informações podem ajudar o adversário a realizar mais operações na rede atacada. A interação com o registro pode ocorrer usando vários utilitários, por exemplo,
Reg ou executando ferramentas de terceiros que usam a API do Windows.
Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador, Sistema
Descrição: o adversário provavelmente tentará obter uma lista de sistemas na rede atacada. Os sistemas remotos podem ser detectados pelo endereço IP, nome do host ou outro identificador, que pode ser usado posteriormente para avançar um invasor pela rede a partir do sistema atual. A funcionalidade correspondente pode ser incluída nas Ferramentas de acesso remoto (RAT) e os utilitários de sistema incorporados também podem ser usados.
WindowsComandos de
ping ou
net view .
MacO protocolo
Bonjour é usado para detectar sistemas Mac dentro do domínio de broadcast. Utilitários como
ping também podem ser usados para coletar informações sobre sistemas remotos.
LinuxUtilitários como ping também podem ser usados para coletar informações sobre sistemas remotos.
Sistema: Windows, macOS
Direitos: Usuário, Administrador, Sistema
Descrição: os invasores podem tentar obter listas de software de segurança, configurações e sensores instalados no sistema. A meta de um adversário pode ser algo como regras locais de firewall, antivírus e ferramentas de virtualização. Essas verificações podem ser incorporadas nas ferramentas de acesso remoto (RATs) usadas nos estágios iniciais de um ataque.
WindowsExemplos de comandos que podem ser usados para obter informações sobre ferramentas de segurança são os
utilitários netsh, reg query, dir e
tasklist , mas outras ferramentas mais específicas também podem ser usadas para identificar sistemas de segurança específicos que um adversário está procurando.
MacUma maneira comum de verificar se há malware é usar o
LittleSnitch e o
KnockKnock .
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: um adversário pode tentar obter informações detalhadas sobre o sistema operacional e o hardware, incluindo arquitetura, versão, patches e service packs instalados.
WindowsExemplos de utilitários para obter informações do sistema são
ver, systeminfo e
dir para identificar informações do sistema com base em arquivos e diretórios existentes.
MacO comando
systemsetup fornece informações detalhadas do sistema, mas requer privilégios administrativos. Além disso, uma descrição detalhada das configurações, regras de firewall, volumes montados, hardware e muitas outras coisas sem a necessidade de escalação de privilégios é
fornecida pelo system_profiler .
Sistema: Windows, Linux, macOS
Direitos: Usuário
Descrição: um invasor provavelmente procurará informações detalhadas sobre a configuração da rede e os parâmetros do sistema aos quais ele tem acesso ou através do estudo de sistemas remotos. Alguns utilitários projetados para administrar o sistema operacional podem ser usados para coletar as informações acima. Exemplos de tais utilitários:
arp, ipconfig / ifconfig, nbtstat, route, tracert / tracerout , etc.
Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador
Descrição: os invasores podem tentar obter uma lista de conexões de rede recebidas e enviadas de um sistema comprometido ao qual eles têm acesso, ou um sistema remoto, solicitando informações pela rede.
WindowsUtilitários e comandos para obter informações sobre conexões de rede:
Netstat
net use
net session
Mac e LinuxNetstat e
lsof podem ser usados para exibir as conexões atuais. Semelhante à "
sessão de rede ",
quem e os utilitários
w podem exibir os usuários atuais que estão conectados.
Sistema: Windows, Linux, macOS
Direitos: Usuário, Administrador
Descrição: os invasores podem tentar identificar o usuário principal do sistema, o usuário atual atualmente conectado, um grupo de usuários que geralmente usam o sistema ou determinar quanto o usuário está usando o sistema. Um adversário pode obter as informações acima usando métodos de descoberta de contas (consulte a técnica "Descoberta de contas") ou métodos de
dumping de credenciais . As informações sobre o usuário e seu nome são distribuídas por todo o sistema - são incluídas nas informações sobre os proprietários dos processos, arquivos e diretórios, nas informações sobre sessões e logs do sistema, para que o inimigo possa usar vários métodos de detecção.
No Mac, o usuário atual pode ser identificado usando os
usuários de utilitários
, we e
who . Em sistemas Linux, apenas com
we quem .
Sistema: Windows
Direitos: Usuário, Administrador, Sistema
Descrição: um invasor pode tentar obter informações sobre serviços registrados. Para coletar dados, um adversário pode usar várias ferramentas, incluindo utilitários internos que podem receber informações sobre serviços:
sc
tasklist /svc
net start
Sistema: Windows
Direitos: Usuário
Descrição: a hora do sistema é definida no domínio e armazenada pelo Windows Times Service para garantir a sincronização da hora entre sistemas e serviços na rede corporativa. Um invasor pode obter a hora e / ou fuso horário do sistema de um sistema local ou remoto. Essas informações podem ser coletadas de várias maneiras:
net time \\hostname
- obtém a hora do sistema host;
w32tm /tz
- obtendo o fuso horário.
Informações sobre a hora do sistema podem ser úteis para o inimigo usar vários métodos de ataque, como executar um arquivo com uma tarefa agendada ou, com base em informações sobre o fuso horário, para revelar a localização da vítima.
Recomendações de proteção: O software de alta qualidade usa processos legítimos para coletar o tempo do sistema. Os esforços de proteção devem ser direcionados para impedir a execução de código indesejado ou desconhecido no sistema. Para impedir a recuperação não autorizada de informações de tempo de um sistema remoto, ferramentas como o utilitário
Net podem ser bloqueadas por uma política de segurança. O monitoramento da linha de comando pode ser útil para detectar instâncias do Net.exe ou outros utilitários usados para coletar a hora e o fuso horário do sistema. O monitoramento de chamadas da API para esses fins é menos útil devido ao fato de a API ser frequentemente usada por software legítimo.