Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
DCOMrade — Script de PowerShell para enumerar aplicaciones DCOM vulnerables | Kitploit
Herramientas/GitHubGitHub/sud0woodo/dcomrade
Análisis de VulnerabilidadesMovimiento LateralPost-ExplotaciónPruebas de PenetraciónRed Teaming
GitHubsud0woodo/dcomrade

DCOMrade

Script de PowerShell para enumerar aplicaciones DCOM vulnerables

Ver Repositorio
264411hace 7 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

DCOMrade

DCOMrade es un script de Powershell que es capaz de enumerar las posibles aplicaciones DCOM vulnerables que podrían permitir movimiento lateral, ejecución de código, exfiltración de datos, etc. El script está diseñado para funcionar con Powershell 2.0 pero también funcionará con todas las versiones superiores. El script actualmente soporta los siguientes sistemas operativos Windows (tanto x86 como x64):

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

Antecedentes

Actualmente estoy realizando una pasantía en HackDefense, investigando las técnicas existentes de movimiento lateral mediante DCOM y tratando de encontrar una manera de automatizar la enumeración de estas (y posiblemente nuevas técnicas). La investigación resultó en la creación de este script y el documento de investigación adjunto que se enlaza a continuación.

Cómo funciona

El script se basó en la investigación realizada por Matt Nelson (@enigma0x3), especialmente la segunda parte del blog que profundiza en la búsqueda de aplicaciones DCOM que podrían ser útiles para pentesters y equipos rojos.

Primero se realiza una conexión remota con el sistema objetivo, esta conexión se utiliza a lo largo del script para una multitud de operaciones. Se ejecuta un comando de Powershell en el sistema objetivo que recupera todas las aplicaciones DCOM y sus AppID. Los AppID se utilizan para recorrer el Registro de Windows y verificar si alguna AppID no tiene la subclave LaunchPermission establecida en su entrada, estos AppID se almacenan y se utilizan para recuperar sus CLSID asociados.

El script utiliza una lista negra específica para cada sistema operativo, por eso hay diferentes opciones para el sistema operativo objetivo. La lista negra omite entradas CLSID que podrían colgar el script debido a aplicaciones DCOM que no pueden activarse, esto reduce la carga en el sistema objetivo y reduce el tiempo de ejecución del script.

Con el CLSID, se puede activar la aplicación DCOM asociada. El CLSID 'Shortcut' se utiliza para contar la cantidad de MemberTypes asociados, esto se hace para verificar la cantidad predeterminada de MemberTypes. Este número se utiliza para buscar los CLSID que tengan algo diferente a esta cantidad. El script hace esto con el CLSID de 'Shortcut' (HKEY_CLASSES_ROOT\CLSID\{00021401-0000-0000-C000-000000000046}) porque es un CLSID compartido entre los sistemas operativos Microsoft Windows. Los CLSID con una cantidad diferente de MemberTypes podrían contener un Method o Property que pueda ser (mal) utilizado, y se agregarán a un array.

Los CLSID en el array se verifican en busca de cadenas en los MemberTypes que puedan indicar una forma de (mal) utilizarlo, esta lista de cadenas se puede encontrar en el archivo VulnerableSubset. Tenga en cuenta que esta lista no es de ninguna manera una lista completa para encontrar todas las aplicaciones DCOM vulnerables, pero al ser una parte dinámica del proceso, debería dar al usuario del script una manera de buscar cadenas específicas que puedan indicar una funcionalidad de una aplicación DCOM que podría ser útil para su propósito.

Los resultados del script se muestran en un informe HTML y deberían ser utilizables para auditar un sistema como medida preventiva. Para el lado ofensivo, creé un módulo para Empire que, al momento de escribir esto, está pendiente de aprobación para ser agregado a la rama principal. Si desea agregarlo a Empire usted mismo, puede hacerlo agregando el módulo ubicado aquí.

Para una explicación técnica completa de la idea, el script y los posibles métodos de detección, puede leer el documento de investigación asociado.

Requisitos previos

El script, cuando no se utiliza como módulo de Empire, tiene algunas limitaciones ya que el funcionamiento del script y la forma en que se conecta con la máquina objetivo difieren.

  • Para que este script funcione, los servicios de Administración remota de Windows deben estar permitidos en el Firewall de Windows (5985);
  • Si el perfil de red del sistema objetivo está configurado como Public, se debe ejecutar el siguiente comando para permitir que los servicios de Administración remota de Windows se utilicen en el sistema objetivo: Enable-PSRemoting -SkipNetworkProfilecheck -Force
  • Este script solo funciona cuando se tienen las credenciales de un Administrador local en el sistema objetivo. Sin estas credenciales no podrá iniciar una sesión remota con la máquina objetivo, ni podrá activar aplicaciones DCOM.

Ejemplo de uso

Cuando se está en un dominio de Microsoft Windows:

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

Cuando no se está en un dominio de Microsoft Windows:

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

Limitaciones

  • Actualmente el script intenta liberar cualquier aplicación DCOM instanciada/activada, pero algunas activaciones inician nuevos procesos (como Internet Explorer); el proceso podría detenerse, pero esto significaría que si un usuario en el sistema objetivo está utilizando esa aplicación en particular, ese proceso se detendrá también para ellos;
  • Otra cosa, que probablemente tenga que ver con mis malas habilidades de programación, es que el script podría introducir una carga considerable en el sistema objetivo si este no tiene muchos recursos. Sea considerado al usar esto en un entorno de producción o en servidores;
  • El script puede tardar algún tiempo en ejecutarse por completo, esto depende de la cantidad de aplicaciones DCOM y del tamaño del archivo de subconjunto vulnerable.

Agradecimientos

Este script fue inspirado por un taller de movimiento lateral DCOM impartido por Eva Tanaskoska; sin este taller, nunca se habría concebido la idea de intentar enumerar esto de manera automatizada.

Gracias a la investigación de Matt Nelson (alias @enigma0x3) pude encontrar suficiente información para idear una forma de automatización.

El artículo de Philip Tsukerman, que resume la mayoría de las técnicas DCOM disponibles para movimiento lateral y profundiza en cómo funcionan.

Descargar herramienta