Como Usar o CrackMapExec em 2026: O Guia do NetExec

Penetration Testing
15 min de leitura
Como Usar o CrackMapExec em 2026: O Guia do NetExec
Nesta página
  1. O que aconteceu com o CrackMapExec?
  2. Instalando o NetExec
  3. Sintaxe do CrackMapExec: protocolo, alvo, credenciais
    1. Formatos de alvo
    2. Senhas, hashes e contas locais
    3. Lendo a saída
  4. Comandos de enumeração SMB que valem memorizar
  5. Password spraying sem bloquear o domínio
  6. De credenciais válidas a administrador de domínio
    1. Extraindo material de credenciais
    2. Kerberoasting via LDAP
    3. Executando comandos
  7. Os módulos são onde o nxc fica interessante
  8. Como esses comandos aparecem para os defensores
  9. Considerações legais e éticas
    1. Onde o uso é legítimo
  10. Perguntas frequentes
  11. Seus próximos passos

Você lê um walkthrough, digita crackmapexec smb 10.10.10.0/24 e o shell responde command not found. A instalação não está quebrada. O CrackMapExec, a ferramenta que passou quase uma década sendo a forma padrão de varrer uma rede Windows a partir de uma única máquina Linux, foi arquivado pelo dono em 6 de dezembro de 2023 e não recebe correções desde então. Aprender a usar o CrackMapExec em 2026 significa aprender o NetExec, o fork que herdou o projeto, os usuários e os hábitos de quem já o usava.

Quase nada do que você já sabe se perde. A sintaxe, as opções e o formato de saída foram mantidos praticamente iguais, então um artigo publicado há cinco anos continua útil desde que você troque o nome do binário. Este guia cobre o que mudou, como instalar o substituto e os comandos específicos que sustentam a reputação da ferramenta no trabalho de teste de invasão. Se preferir a teoria por trás dos ataques primeiro, o capítulo de enumeração do Active Directory detalha o que cada um desses comandos realmente pede ao controlador de domínio.

Resumo: o CrackMapExec está arquivado e sem manutenção. Seu sucessor é o NetExec, invocado como nxc e instalado no Kali com sudo apt install netexec. A sintaxe é nxc <protocolo> <alvo> -u user -p pass em dez protocolos, incluindo SMB, LDAP, WinRM e MSSQL. Comece por --shares e --pass-pol, e trate um (Pwn3d!) na saída como o sinal de que a conta tem direitos administrativos naquele host.

O que aconteceu com o CrackMapExec?

O CrackMapExec é uma ferramenta de pós-exploração para auditar redes Windows e Active Directory que não recebe mais manutenção. Seu repositório no GitHub foi arquivado em 6 de dezembro de 2023 e hoje é somente leitura. O README afirma que o projeto parou por causa do que o autor descreve como um fork hostil.

Esse fork é o NetExec, e ele venceu. A página do pacote do Kali Linux descreve o NetExec como a continuação do CrackMapExec, mantido durante anos por mpgn e descontinuado com a aposentadoria dele. O Kali removeu o pacote antigo e hoje distribui o netexec, atualmente na versão 1.5.1. Quando os mantenedores das ferramentas de segurança de uma distribuição tomam essa decisão, a discussão acabou.

Meu conselho é direto: não instale o CrackMapExec a partir de um repositório arquivado só para acompanhar um tutorial antigo. Você vai brigar com erros de dependência de um projeto Python congelado em 2023 e perder três anos de suporte a protocolos e correções. Leia o tutorial antigo, execute o binário novo.

A ferramenta original está documentada no MITRE ATT&CK sob a referência S0488, associada a dezoito técnicas que cobrem extração de credenciais, pass the hash, força bruta e execução remota de comandos. Esse registro lista cinco grupos de ameaça que a usaram em invasões reais, entre eles MuddyWater, FIN7 e APT39. É uma ferramenta genuinamente poderosa, e é exatamente por isso que a seção sobre autorização mais adiante não é formalidade.

Instalando o NetExec

No Kali e no Parrot, o pacote está nos repositórios padrão:

sudo apt update && sudo apt install netexec

Em qualquer outro lugar, os mantenedores recomendam o pipx, que mantém a ferramenta e suas dependências em um ambiente virtual próprio em vez do Python do sistema:

sudo apt install pipx git
pipx ensurepath
pipx install git+https://github.com/Pennyw0rth/NetExec

Abra um novo shell depois disso para que o PATH atualizado tenha efeito. A instalação entrega três comandos: netexec, o apelido curto nxc que todo mundo realmente digita, e nxcdb para navegar no banco de resultados. Confirme que funcionou:

nxc --version

Duas falhas aparecem com frequência suficiente para merecerem nome. Se a compilação parar em fatal error: Python.h: No such file or directory, faltam os cabeçalhos de desenvolvimento do Python da sua distribuição, necessários para compilar uma das dependências. E se o nxc continuar não sendo encontrado depois da instalação via pipx, você pulou o pipx ensurepath ou continua na mesma sessão de shell de antes.

Manter tudo atualizado com o pipx cabe em uma linha. O pipx upgrade netexec pega as versões publicadas, e o pipx reinstall netexec baixa os commits mais recentes quando você precisa de uma correção ainda não lançada.

💻
Pratique agora: Internal - conquiste o ponto de entrada em uma rede interna que esses comandos já pressupõem, em um lab no navegador sem VPN e sem VM para montar.

Sintaxe do CrackMapExec: protocolo, alvo, credenciais

Todo comando segue a mesma estrutura de três partes, e é por isso que a ferramenta é rápida de aprender e difícil de largar:

nxc <protocol> <target(s)> -u <user> -p <password>

O NetExec suporta dez protocolos: smb, ldap, winrm, mssql, ssh, ftp, wmi, rdp, vnc e nfs. Cada um tem seu próprio conjunto de opções, então nxc smb --help e nxc ldap --help mostram menus realmente diferentes. O SMB é onde a maioria das missões começa.

Formatos de alvo

O argumento de alvo aceita bem mais do que um único IP, e misturar formatos no mesmo comando é permitido:

  • nxc smb 192.168.1.10 para um host único
  • nxc smb 192.168.1.0/24 para notação CIDR
  • nxc smb 192.168.1.0-28 para uma faixa
  • nxc smb dc01.corp.local para um nome de host
  • nxc smb ~/targets.txt para um arquivo com um alvo por linha

Senhas, hashes e contas locais

Troque -p por -H para autenticar com um hash NTLM em vez de uma senha, que é a técnica de pass the hash na sua forma mais prática. Tanto o par completo LM:NT quanto o hash NT sozinho funcionam:

nxc smb 192.168.1.0/24 -u localguy -H 'aad3b435b51404eeaad3b435b51404ee:13b29964cc2480b4ef454c59562e675c' --local-auth

A opção --local-auth diz à ferramenta para autenticar contra a SAM local da máquina em vez do domínio. Ela importa mais do que os iniciantes imaginam: uma senha de administrador local reutilizada em cinquenta estações é um achado completamente diferente de uma conta de domínio, e sem a opção você estará testando a coisa errada. Uma sessão nula é apenas um par de strings vazias, -u '' -p ''.

Um detalhe de shell que custa uma hora: coloque as credenciais entre aspas simples. Uma senha como October2022! dispara a expansão de histórico no bash, e você passará essa hora convencido de que a conta está bloqueada.

Lendo a saída

Os resultados vêm em uma linha por host. [*] é o banner do host com build do sistema, domínio e status de assinatura SMB, [+] indica autenticação bem-sucedida e [-] indica falha. A linha que você procura é assim:

SMB   192.168.1.101   445   HOSTNAME   [+] DOMAIN\Username:Password (Pwn3d!)

O marcador (Pwn3d!) significa que as credenciais conseguem executar código no host. O sentido exato muda conforme o protocolo, e vale conhecer a diferença: em SMB e WMI a conta é provavelmente administrador local, em WinRM e RDP significa execução de código no mínimo, e em LDAP indica um caminho até administrador de domínio. No FTP não há verificação alguma.

Comandos de enumeração SMB que valem memorizar

A autenticação é só a entrada. A ferramenta ganhou seu lugar porque uma única conta válida e sem privilégios, apontada para uma sub-rede inteira, devolve um mapa do domínio em cerca de um minuto.

OpçãoO que devolve
--sharesTodos os compartilhamentos de todos os hosts, com seu acesso de leitura e escrita em cada um
--usersContas de usuário do domínio, com --users-export file.txt para salvar a lista
--rid-bruteNomes de usuários e grupos recuperados percorrendo RIDs, útil quando --users está bloqueado
--pass-polA política de senhas do domínio: comprimento, complexidade e limite de bloqueio
--loggedon-usersQuem está logado no host agora, que é como você descobre onde os admins trabalham
--disksOs discos conectados ao alvo

A varredura de compartilhamentos é a primeira a rodar, e a documentação a apresenta como o recurso mais útil da ferramenta. Dá para filtrar apenas os compartilhamentos que interessam:

nxc smb 192.168.1.0/24 -u user -p 'Password123' --shares READ,WRITE

Na prática, um compartilhamento com permissão de escrita em um servidor de arquivos é o momento em que um teste interno de rotina vira um achado de relatório. Pastas de backup com um script de ingresso no domínio contendo senha em texto puro, um compartilhamento de TI com uma planilha de credenciais de admin local, um diretório de deploy que ninguém audita desde a instalação do servidor: o padrão se repete em organizações de todos os tamanhos, e uma única varredura --shares traz tudo isso à tona.

Rode --pass-pol antes de encostar em qualquer coisa que adivinhe senhas. Custa um comando e revela o limite de bloqueio, o número que decide se a próxima seção é segura.

Password spraying sem bloquear o domínio

O password spraying testa uma senha contra muitas contas, em vez de muitas senhas contra uma conta só. Ele fica abaixo do limite de bloqueio porque cada conta sofre apenas uma tentativa falha por rodada. Inverta isso e você bloqueia algumas centenas de funcionários antes do almoço, o que encerra a missão e estraga a relação com o cliente.

O comportamento padrão quando você passa uma lista de usuários e uma senha é o produto completo de cada usuário com cada senha. Para um spray, você quer uma senha em toda a lista:

nxc smb 192.168.1.101 -u users.txt -p 'Summer2026!' --continue-on-success

--continue-on-success é a opção que todo mundo esquece. Sem ela, a execução para na primeira credencial válida, e você fica sabendo de uma conta em vez das seis que compartilham aquela senha.

Quando você tem credenciais pareadas em vez de uma lista para pulverizar, --no-bruteforce casa a linha um do arquivo de usuários com a linha um do arquivo de senhas em vez de testar todas as combinações:

nxc smb 192.168.1.101 -u users.txt -p passwords.txt --no-bruteforce --continue-on-success

Dois hábitos evitam que isso dê errado. Confira o --pass-pol antes, para conhecer o limite e a janela de observação. E pulverize uma vez e espere, em vez de disparar três rodadas em dez minutos porque a primeira não trouxe nada.

De credenciais válidas a administrador de domínio

Assim que um conjunto de credenciais volta com (Pwn3d!), a ferramenta passa da enumeração para a coleta. Esses comandos exigem direitos administrativos no alvo.

Extraindo material de credenciais

nxc smb 192.168.1.0/24 -u Admin -p 'Password' --sam
nxc smb 192.168.1.0/24 -u Admin -p 'Password' --lsa
nxc smb 192.168.1.100 -u Admin -p 'Password' --ntds --enabled

--sam puxa os hashes das contas locais, --lsa puxa os segredos LSA, incluindo credenciais de domínio em cache e senhas de contas de serviço, e --ntds extrai a base do domínio de um controlador de domínio. Acrescente --enabled para ignorar contas desativadas, o que em um domínio antigo pode cortar a saída pela metade e manter o ruído fora do relatório.

Hash não é senha. Tudo o que --sam e --ntds devolvem ainda precisa passar por uma etapa de quebra, e é aí que o nosso tutorial de Hashcat retoma o fluxo.

Kerberoasting via LDAP

Contas de serviço com um SPN registrado podem entregar um hash de ticket quebrável a partir de qualquer usuário de domínio autenticado, sem privilégios especiais:

nxc ldap 192.168.1.100 -u user -p pass --kerberoasting output.txt

O arquivo se enche de hashes Kerberos 5 TGS-REP prontos para quebra offline. Contas de serviço são um alvo confiável porque suas senhas são definidas uma vez na instalação e quase nunca trocadas.

Executando comandos

nxc smb 192.168.10.11 -u Administrator -p 'P@ssw0rd' -x whoami
nxc smb 192.168.10.11 -u Administrator -p 'P@ssw0rd' -X '$PSVersionTable'

O -x minúsculo roda um comando pelo cmd, o -X maiúsculo roda pelo PowerShell. Por baixo, três métodos de execução são tentados em ordem: wmiexec via WMI, depois atexec pelo agendador de tarefas, depois smbexec criando um serviço. Se um falha, a ferramenta cai para o seguinte, e é por isso que um comando às vezes funciona em um host e não no vizinho idêntico. Fixe o método com --exec-method quando precisar de comportamento consistente para o relatório.

💻
Pratique agora: Shadow Cracker - leve hashes de senha extraídos por um ciclo completo de quebra e veja quanto vale de verdade um dump de --sam.

Os módulos são onde o nxc fica interessante

Além das opções embutidas, cada protocolo traz sua própria biblioteca de módulos. Liste o que existe e leia as opções de um módulo antes de executá-lo:

nxc smb -L
nxc smb -M spider_plus --options
nxc smb 10.10.10.10 -u user -p pass -M spider_plus -o DOWNLOAD_FLAG=True

As opções usam -o CHAVE=valor, e você pode empilhar vários -M no mesmo comando. O módulo para aprender primeiro é o spider_plus, que percorre todos os compartilhamentos legíveis e monta um inventário JSON dos arquivos encontrados. Aponte-o para um servidor de arquivos com o download desligado, leia o inventário e depois volte para o punhado de arquivos que importam. Baixar um compartilhamento inteiro às cegas é como encher um disco sem aprender nada.

Os resultados também vão para um banco local que você pode consultar depois com o nxcdb. Em uma missão que dura vários dias, isso é melhor do que rolar o histórico do terminal.

Como esses comandos aparecem para os defensores

Quem roda essa ferramenta em uma avaliação precisa saber o quanto ela é visível, e quem defende uma rede precisa saber o que procurar. Os dois lados leem o mesmo registro do MITRE ATT&CK.

  • Volume de autenticação. Um endereço de origem autenticando em centenas de hosts em um minuto não tem equivalente legítimo. Falhas de Event ID 4625 espalhadas por muitas contas a partir de um único IP são a assinatura do spray.
  • Criação de serviço. O método smbexec cria e executa um serviço do Windows no alvo. Um Event ID 7045 em uma estação de trabalho é incomum e merece alerta.
  • Tarefas agendadas efêmeras. O método atexec registra uma tarefa, executa e apaga. Uma tarefa que aparece e some em segundos é um indicador forte.
  • Leituras no controlador de domínio. Uma única conta sem privilégios pedindo tickets de serviço para todos os SPNs do domínio é Kerberoasting, e é um dos ataques mais fáceis de detectar se alguém estiver acompanhando o Event ID 4769.

Produtos de segurança de endpoint identificam essa ferramenta pelo nome, e a Microsoft publica uma assinatura de detecção para ela. Em uma missão real, espere que a stack do cliente gere alerta. Esse é o resultado correto em um ambiente protegido, e um teste que passa silencioso por uma rede madura normalmente significa que a detecção está mal configurada, o que já é um achado digno de relatório. Nosso guia de teste de invasão em redes mostra como essa conversa de entrega de resultados se encaixa na missão como um todo.

Considerações legais e éticas

Lembrete essencial: obtenha sempre autorização escrita explícita antes de testar qualquer sistema. Fazer password spraying contra um domínio que você não tem permissão para testar é acesso não autorizado sob as leis de crimes informáticos da maioria das jurisdições, mesmo que nenhum login funcione.

Esta ferramenta difere de um scanner em um ponto importante: ela autentica. O Nmap bate na porta, o NetExec experimenta as chaves. Isso cruza uma linha jurídica que o reconhecimento não cruza, e as tentativas falhas ficam registradas com o seu endereço de origem de todo jeito.

Onde o uso é legítimo

  • Seu próprio domínio de laboratório, montado com cópias de avaliação do Windows Server em hardware seu
  • Missões cobertas por um documento de escopo assinado que nomeie as faixas-alvo e as contas que você pode testar
  • Redes que você administra, com aprovação documentada do seu empregador
  • Ambientes de treinamento criados para isso e plataformas de CTF

O risco específico aqui é o estouro de escopo. Uma faixa CIDR um dígito mais larga que o combinado pode varrer uma rede de outra unidade de negócio ou de um vizinho de hospedagem compartilhada. Leia o argumento de alvo em voz alta antes de apertar enter, sempre.

Perguntas frequentes

O CrackMapExec ainda recebe manutenção?

Não. O repositório do CrackMapExec foi arquivado pelo dono em 6 de dezembro de 2023 e está em modo somente leitura, portanto não recebe correções nem novos recursos. O NetExec é a continuação mantida, e o Kali Linux substituiu o pacote antigo pelo pacote netexec.

Qual é a diferença entre CrackMapExec e NetExec?

O NetExec é um fork mantido pela comunidade que assumiu depois que o projeto original parou. O comando mudou de crackmapexec para nxc, e o fork acrescentou protocolos, módulos e correções. A sintaxe central e o formato de saída ficaram próximos o bastante para que tutoriais antigos continuem valendo.

Como instalar o NetExec no Kali Linux?

Execute sudo apt update && sudo apt install netexec. O Kali o distribui nos repositórios padrão, atualmente na versão 1.5.1, e instala os comandos netexec, nxc e nxcdb. Em outras distribuições, use o pipx a partir do repositório do projeto no GitHub.

O que significa Pwn3d! na saída?

Significa que as credenciais conseguem executar código naquele host. Em SMB e WMI a conta é provavelmente administrador local, em WinRM e RDP indica execução de código no mínimo, e em LDAP indica um caminho até administrador de domínio. O FTP não faz esse tipo de verificação.

Quais protocolos o NetExec suporta?

Dez: SMB, LDAP, WinRM, MSSQL, SSH, FTP, WMI, RDP, VNC e NFS. Cada um tem suas próprias opções e módulos, então nxc smb --help e nxc ldap --help devolvem conjuntos diferentes. O SMB é o ponto de partida habitual em uma rede Windows.

Os tutoriais de CrackMapExec ainda são úteis?

Sim. Troque crackmapexec por nxc e a maioria dos comandos roda sem mudanças, porque opções como --shares, --pass-pol e --ntds foram mantidas. Consulte a documentação atual sempre que algo retornar erro, já que algumas opções mudaram de protocolo.

Seus próximos passos

Aprender a usar o CrackMapExec hoje significa instalar o NetExec, digitar nxc e aplicar a mesma sintaxe de três partes que o original tornou famosa. Domine quatro comandos e você cobre a maior parte do que a ferramenta faz em uma missão: --shares para mapear o que você alcança, --pass-pol para conhecer seus limites, um spray com --continue-on-success e --ntds assim que uma conta voltar com (Pwn3d!). O wiki do NetExec é a referência para todo o resto.

Ler comandos não é o mesmo que executá-los contra algo que responde. Conquiste um ponto de entrada em uma rede interna de verdade no lab Internal e depois construa a metodologia em volta com o curso de teste de invasão em redes. Os dois rodam no navegador com o plano gratuito da HackerDNA, sem cartão de crédito e sem VM de laboratório.

HackerDNA Team

Equipe HackerDNA

Escrito pela equipe HackerDNA - profissionais de cibersegurança que criam labs práticos de hacking e conteúdo educativo para ajudar você a desenvolver habilidades reais em segurança.

Conhecer a Equipe

Pronto para colocar isso em prática?

Pare de ler, comece a hackear. Ganhe experiência prática com mais de 170 labs de cibersegurança reais.

Comece a Hackear Grátis
21.000+ Hackers 100+ Labs & Cursos Grátis
Comece Grátis