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
Ferramentas/GitHubGitHub/sud0woodo/dcomrade
Análise de VulnerabilidadesMovimento LateralPós-ExploraçãoTestes de PenetraçãoRed Teaming
GitHubsud0woodo/dcomrade

DCOMrade

Script do Powershell para enumerar aplicações DCOM vulneráveis

Ver Repositório
264414há 7 anosRevisado pelo Kitploit

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 →
Compartilhar

DCOMrade

DCOMrade é um script Powershell que permite enumerar possíveis aplicações DCOM vulneráveis que podem permitir movimento lateral, execução de código, exfiltração de dados, etc. O script foi desenvolvido para funcionar com o Powershell 2.0, mas também funcionará com todas as versões superiores. Atualmente, o script suporta os seguintes sistemas operacionais Windows (tanto x86 quanto x64):

  • Microsoft Windows 7
  • Microsoft Windows 10
  • Microsoft Windows Server 2012 / 2012 R2
  • Microsoft Windows Server 2016

Contexto

Atualmente, estou realizando um estágio na HackDefense, pesquisando técnicas existentes de movimento lateral via DCOM e tentando encontrar uma maneira de automatizar a enumeração destas (e possivelmente novas técnicas). A pesquisa resultou na criação deste script e do artigo de pesquisa que o acompanha, cujo link está abaixo.

Como funciona

O script foi baseado na pesquisa realizada por Matt Nelson (@enigma0x3), especialmente no post do blog sobre a segunda rodada que aborda a descoberta de aplicações DCOM que podem ser úteis para pentesters e equipes vermelhas.

Primeiramente, é feita uma conexão remota com o sistema alvo; essa conexão é utilizada ao longo do script para várias operações. Um comando Powershell é executado no sistema alvo para recuperar todas as aplicações DCOM e seus AppIDs. Os AppIDs são usados para percorrer o Registro do Windows e verificar se há algum AppID que não tenha a subchave LaunchPermission definida em sua entrada; esses AppIDs são armazenados e usados para recuperar seus CLSIDs associados.

O script utiliza uma blacklist específica para cada SO, por isso existem diferentes opções para o sistema operacional alvo. A blacklist ignora entradas CLSID que podem travar o script devido a aplicações DCOM que não podem ser ativadas, o que reduz a carga no sistema alvo e o tempo de execução do script.

Baixar ferramenta

Com o CLSID, a aplicação DCOM associada a ele pode ser ativada. O CLSID 'Shortcut' é usado para contar a quantidade de MemberTypes associados a ele, com o objetivo de verificar a quantidade padrão de MemberTypes. Esse número é usado para verificar os CLSIDs que possuem algo diferente dessa quantidade. O script faz isso com o CLSID do 'Shortcut' (HKEY_CLASSES_ROOT\CLSID\{00021401-0000-0000-C000-000000000046}) porque este é um CLSID compartilhado entre os sistemas operacionais Microsoft Windows. Os CLSIDs com uma quantidade diferente de MemberTypes podem conter um Method ou Property que pode ser (ab)usado, e serão adicionados a um array.

Os CLSIDs no array são verificados quanto a strings nos MemberTypes que possam indicar uma maneira de (ab)usá-lo; essa lista de strings pode ser encontrada no arquivo VulnerableSubset. Observe que esta lista não é, de forma alguma, uma lista completa para encontrar todas as aplicações DCOM vulneráveis, mas, sendo uma parte dinâmica do processo, deve fornecer ao usuário do script uma maneira de procurar strings específicas que possam indicar uma funcionalidade de uma aplicação DCOM que seja útil para seu propósito.

Os resultados do script são exibidos em um relatório HTML e devem ser utilizáveis para auditoria de um sistema como medida preventiva. Para o lado ofensivo, criei um módulo Empire que, no momento da redação deste texto, aguarda aprovação para ser adicionado ao branch master. Se você quiser adicioná-lo ao Empire manualmente, pode fazê-lo adicionando o módulo localizado aqui.

Para uma explicação técnica completa da ideia, do script e de possíveis métodos de detecção, você pode ler o artigo de pesquisa associado.

Pré-requisitos

O script, quando não usado como módulo Empire, possui algumas limitações devido à diferença no seu funcionamento e na forma como se conecta à máquina alvo.

  • Para que este script funcione, os serviços de Gerenciamento Remoto do Windows precisam estar liberados no Firewall do Windows (5985);
  • Se o perfil de rede do sistema alvo estiver definido como Público, o seguinte comando precisa ser executado para permitir que os serviços de Gerenciamento Remoto do Windows sejam utilizados no sistema alvo: Enable-PSRemoting -SkipNetworkProfileCheck -Force
  • Este script funciona apenas quando se possui as credenciais de um Administrador local no sistema alvo. Sem essas credenciais, não será possível iniciar uma sessão remota com a máquina alvo, nem ativar aplicações DCOM.

Exemplo de uso

Quando em um domínio Microsoft Windows:

root@kitploit:~
.\DCOMrade.ps1 -ComputerName [Computername / IP] -User [Local Administrator] -OS [Operating System] -Domain [Domain name]

Quando não estiver em um domínio Microsoft Windows:

root@kitploit:~
.\DCOMrade.ps1 -ComputerName [Computername / IP] -User [Local Administrator] -OS [Operating System]

Limitações

  • Atualmente, o script tenta liberar quaisquer aplicações DCOM instanciadas/ativadas, mas algumas ativações iniciam novos processos (como o Internet Explorer); o processo poderia ser interrompido, mas isso significaria que, se um usuário no sistema alvo estiver usando essa aplicação específica, o processo será interrompido para ele também;
  • Outro ponto, que provavelmente se deve às minhas habilidades de programação limitadas, é que o script pode introduzir uma carga considerável no sistema alvo se ele não tiver muitos recursos. Seja cauteloso ao usar isso em um ambiente de produção ou em servidores;
  • O script pode levar algum tempo para ser executado completamente; isso depende da quantidade de aplicações DCOM e do tamanho do arquivo de subconjunto vulnerável.

Agradecimentos

Este script foi inspirado por um workshop de movimento lateral via DCOM ministrado por Eva Tanaskoska; sem esse workshop, a ideia de tentar enumerar isso de forma automatizada jamais teria surgido.

Graças à pesquisa de Matt Nelson (também conhecido como @enigma0x3), consegui informações suficientes para criar uma forma de automatização.

O artigo de Philip Tsukerman, que resume a maioria das técnicas DCOM disponíveis para movimento lateral e explica como elas funcionam.