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
melting-cobalt — Un escáner de Cobalt Strike que recupera los beacons del Team Server detectados en un objeto JSON | Kitploit
Herramientas/GitHubGitHub/splunk/melting-cobalt
OSINT (Inteligencia de Fuentes Abiertas)ReconocimientoRecopilación de InformaciónSeguridad de RedesComando y ControlInteligencia de AmenazasArchived
GitHubsplunk/melting-cobalt

melting-cobalt

Un escáner de Cobalt Strike que recupera los beacons del Team Server detectados en un objeto JSON

Ver Repositorio
16923hace 3 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

melting-cobalt 👀

Una herramienta para cazar/minar balizas de Cobalt Strike y "reducir" su configuración de baliza para indexación posterior. Las cacerías pueden ser expansivas y a nivel de internet utilizando servicios como SecurityTrails, Shodan, o ZoomEye, o una lista de IPs.

Comenzando

  1. Instalar melting-cobalt
  2. Configurar tus tokens para comenzar la cacería
  3. Minar balizas para comenzar a reducirlas
  4. Revisa los resultados cat results.json | jq

📺 Demo

Melting-Cobalt Demo

Instalación

Requisitos: virtualenv y python3.8+

  1. git clone https://github.com/splunk/melting-cobalt && cd melting-cobalt Clona el proyecto y accede al directorio del proyecto.
  2. pip install virtualenv && virtualenv -p python3 venv && source venv/bin/activate && pip install -r requirements.txt Crea el entorno virtual e instala los requisitos.

Continúa a configuración para la clave API de SecurityTrails, Shodan o ZoomEye.

Configuración melting-cobalt.conf

¡Copia melting-cobalt.conf.example a melting-cobalt.conf!

Asegúrate de configurar un token para uno de los proveedores disponibles. Si necesitas crear uno para tu cuenta, sigue [estas](htt://need wiki page) instrucciones.

Ejemplo de configuración:

root@kitploit:~
[global]
output = results.json
# stores matches in JSON here

log_path = melting-cobalt.log
# Sets the log_path for the logging file

log_level = INFO
# Sets the log level for the logging
# Possible values: INFO, ERROR, VERBOSE

nse_script = grab_beacon_config.nse
# path to the nse script that rips down cobalt configs. This is specifically using https://github.com/whickey-r7/grab_beacon_config

searches = search.yml
# contains the different searches to run on each internet scanning service provider (eg shodan, zoomeye, security trails) when hunting for team servers.

shodan_token = TOKENHERE
# shodan token for searching

zoomeye_token = TOKENHERE
# zoomeye token for searching

securitytrails_token = TOKENHERE
# security trails token for searching

Buscar en Internet

Para modificar la minería predeterminada realizada en diferentes proveedores, personaliza search.yml. Los Ejemplos de búsqueda predeterminados de melting-cobalt están a continuación.

Ejecuta:

python melting-cobalt.py

Buscar lista de IPs

puebla ips.txt con IPs de C2 de Cobalt Strike potenciales, delimitadas por nueva línea, ejemplo:

root@kitploit:~
1.1.1.1
2.2.2.2
3.3.3.3

Ejecuta:

python melting-cobalt.py -i ips.txt

Si necesitas inspiración de cazadores, recomendamos encarecidamente:

  • The DFIR Report
  • Awesome-Cobalt-Strike
  • CobaltStrikeBot

Uso

root@kitploit:~
usage: melting-cobalt.py [-h] [-c CONFIG] [-o OUTPUT] [-v] [-i INPUT]

scans for open cobalt strike team servers and grabs their beacon configs and write this as a json log to be analyzed by any analytic tools
like splunk, elastic, etc..

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        config file path
  -o OUTPUT, --output OUTPUT
                        file to write to the results, defaults to results.json.log
  -v, --version         shows current melting-cobalt version
  -i INPUT, --input INPUT
                        newline delimeted file of cobalt strike server ips to grab beacon configs from. example ips.txt

Ejemplos de búsqueda

Las siguientes búsquedas se proporcionan de serie y se pueden añadir más a search.yml para más datos.

Shodan

Encontrar firmas JARM específicas, de serie rastreamos Cobalt Strike 4.x

'ssl.jarm:07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1'

Filtrar por cabeceras HTTP y puertos para reducir resultados ruidosos

'ssl.jarm:07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1 port:"22, 80, 443, 444, 1234, 2000, 2222, 3000, 3780, 4000, 4443, 6379, 7443, 8443, 8080, 8081, 8082, 8087, 8088, 8099, 8089, 8090, 8181, 8888, 8889, 9443, 50050" HTTP/1.1 404 Not Found Content-Length: 0'

Servidor de equipo detectado por Shodan

'product:"cobalt strike team server"'

nota: generará muchos resultados ruidosos, no programes esto a menos que quieras quemar tus créditos de licencia.

Número de serie del certificado del servidor de equipo

'ssl.cert.serial:146473198'

SecurityTrails

Encontrar firmas JARM específicas

'SELECT address, ports.port FROM ips WHERE jarm = "07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1"'

Filtrar por cabeceras HTTP y puertos para reducir resultados ruidosos de nmap

'SELECT address, ports.port, isp.name_normalized, ports.port, address, asn.number, jarm, http.headers.raw FROM ips WHERE jarm = "07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1" OR jarm = "07d14d16d21d21d07c07d14d07d21d9b2f5869a6985368a9dec764186a9175" OR jarm = "2ad2ad16d2ad2ad22c42d42d00042d58c7162162b6a603d3d90a2b76865b53" AND http.headers.content_type = "text/plain" AND http.headers.raw = "content-length:0" AND ports.port IN (22, 80, 443, 444, 1234, 2000, 2222, 3000, 3780, 4000, 4443, 6379, 7443, 8443, 8080, 8081, 8082, 8087, 8088, 8099, 8089, 8090, 8181, 8888, 8889, 9443, 50050)'

Autor

  • Michael Haag @M_haggis
  • Jose Hernandez @d1vious

Soporte 📞

Por favor, usa el rastreador de incidencias de GitHub para reportar errores o solicitar funciones.

Si tienes preguntas o necesitas soporte, puedes:

  • Unirte a la sala #security-research en el canal de Slack de Splunk

Créditos y Referencias

  • La inspiración provino de varios blogs: https://michaelkoczwara.medium.com/cobalt-strike-c2-hunting-with-shodan-c448d501a6e2, https://sergiusechel.medium.com/improving-the-network-based-detection-of-cobalt-strike-c2-servers-in-the-wild-while-reducing-the-6964205f6468
  • Gran parte de esto es posible solo porque whickey-r7 compartió con nosotros grab_beacon_config.nse
  • Aan Por contribuir con la integración de ZoomEye!

PENDIENTE

  • Deduplicar resultados antes de nmap
  • Agregar verificación del resultado más reciente mirando el campo latest_updated

Licencia

Copyright 2020 Splunk Inc.

Licenciado bajo la Licencia Apache, Versión 2.0 (la "Licencia"); no puedes usar este archivo excepto en cumplimiento con la Licencia. Puedes obtener una copia de la Licencia en

http://www.apache.org/licenses/LICENSE-2.0

A menos que lo exija la ley aplicable o se haya acordado por escrito, el software distribuido bajo la Licencia se distribuye "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sean expresas o implícitas. Consulta la Licencia para el lenguaje específico que rige los permisos y limitaciones bajo la Licencia.

Descargar herramienta