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
omigood — OMIGOD! OM I GOOD? Un escáner gratuito para detectar máquinas virtuales vulnerables a una de las vulnerabilidades "OMIGOD" descubiertas por el equipo de investigación de amenazas de Wiz, específicamente CVE-2021-38647. | Kitploit
Herramientas/GitHubGitHub/marcosimioni/omigood
ReconocimientoEscáneres de VulnerabilidadesExplotaciónRecopilación de InformaciónPruebas de PenetraciónSeguridad en la Nube
GitHubmarcosimioni/omigood

omigood

OMIGOD! OM I GOOD? Un escáner gratuito para detectar máquinas virtuales vulnerables a una de las vulnerabilidades "OMIGOD" descubiertas por el equipo de investigación de amenazas de Wiz, específicamente CVE-2021-38647.

Ver Repositorio
2032hace 4 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

omigood (¿OM I GOOD?)

Este repositorio contiene un escáner gratuito para detectar máquinas virtuales vulnerables a una de las vulnerabilidades "OMIGOD" descubiertas por el equipo de investigación de amenazas de Wiz, concretamente CVE-2021-38647.

Artículo original del blog de Wiz: https://www.wiz.io/blog/omigod-critical-vulnerabilities-in-omi-azure

Resumen

El escáner requiere credenciales de Azure para conectarse a las API de Azure y, dado una suscripción y un grupo de recursos (o por defecto escaneará todos los disponibles), obtiene la lista de máquinas virtuales Linux e informa si la máquina podría ser vulnerable.

Asegúrate también de revisar la herramienta propia de Microsoft para este propósito: https://github.com/microsoft/OMS-Agent-for-Linux/tree/master/tools/OMIcheck

Autenticación

Para autenticarse contra las API de Azure, se admiten tanto azure cli (por defecto) como la autenticación interactiva del navegador; consulta el parámetro de línea de comandos --auth.

Comprobaciones realizadas

No hay una forma directa de determinar si tus máquinas son vulnerables a OMI sin ejecutar comandos en la propia máquina Linux, lo cual está soportado a través de las API de Azure usando el comando RunShellScript mediante una extensión. La herramienta propia de Microsoft (https://github.com/microsoft/OMS-Agent-for-Linux/tree/master/tools/OMIcheck) también utiliza este enfoque.

Vale la pena señalar que, incluso si la máquina virtual es vulnerable, es posible que no esté exponiendo el servidor OMI vía HTTP/HTTPS (que es lo predeterminado) y, aunque lo haga, esos puertos podrían estar bloqueados por los Grupos de Seguridad de Red de Azure y, por tanto, ser inalcanzables. Esto no es una razón para evitar aplicar parches, pero si tienes muchas máquinas virtuales Linux vulnerables, podría ser útil saber cuáles están más expuestas y priorizar tus esfuerzos.

omigood sigue este enfoque más completo y generará una salida JSON con una serie de comprobaciones que puedes activar mediante opciones de línea de comandos para determinar tu superficie de ataque.

Estas son las comprobaciones que realiza omigood:

  • Comprobar contra la API de Azure si la máquina virtual ejecuta Linux
  • Comprobar contra la API de Azure si la máquina virtual ejecuta la extensión OMSAgentForLinux, lo cual es una buena pista de si la máquina también podría estar ejecutando OMI.
  • Comprobar contra la API de Azure la versión del agente OMS, ya que a menudo está correlacionada con la versión de OMI. Esta comprobación se puede realizar sin ejecutar ningún script en la máquina virtual. El agente OMS debe ser al menos la versión 1.13.40. Puedes consultar el script que ejecutamos aquí.
  • Comprobar contra la API de Azure los Grupos de Seguridad de Red de la máquina virtual y determinar (usando un algoritmo muy simple que puede generar falsos positivos) si los puertos del servidor OMI podrían estar abiertos.
  • Comprobar contra la API de Azure los Grupos de Seguridad de Red Efectivos de la máquina virtual (combinación de interfaz de red y subred) y determinar si los puertos del servidor OMI podrían estar abiertos. Esta comprobación es opcional, ya que requiere que la máquina virtual esté en ejecución, mayores privilegios de API y tarda más tiempo en ejecutarse. Actívala con la opción de línea de comandos -e.
  • Usar la API de Azure para ejecutar un script bash simple en la máquina virtual que determina si el servidor OMI está en ejecución, su versión y si está expuesto solo en socket UNIX (por defecto) o también en TCP. Esta comprobación es opcional, ya que requiere que la máquina virtual esté en ejecución, mayores privilegios de API y tarda más tiempo en ejecutarse. Actívala con la opción de línea de comandos -r. ¡Úsala bajo tu propio riesgo!
  • Intentar atacar la IP pública de la máquina ejecutando el comando /usr/bin/id. Esta comprobación es opcional, ya que implica intentar explotar la máquina virtual. Actívala con la opción de línea de comandos -a. Úsala solo en objetivos que estés autorizado a probar. ¡Úsala bajo tu propio riesgo!

Salida

El archivo de salida JSON generado contiene toda la información sobre las máquinas virtuales escaneadas: IDs, sistema operativo, grupos de seguridad de red, estado de energía, etc.

Los indicadores ('YES'/'NO') que son relevantes para las comprobaciones son:

  • check_oms_extension: YES si se encuentra la Extensión del Agente OMS en la máquina virtual.
  • check_oms_vulnerable: YES si la versión de la Extensión del Agente OMS es inferior a 1.13.40.
  • check_permissive_rules: YES si las reglas del Grupo de Seguridad de Red parecen permitir conexiones a los puertos de OMI.
  • check_permissive_effective_rules: YES si las reglas de Seguridad Efectivas parecen permitir conexiones a los puertos de OMI. Solo con la opción de línea de comandos -e.
  • check_omi_vulnerable: YES si la versión del servidor OMI se obtuvo mediante script y se determinó que es inferior a 1.6.8-1. Solo con la opción de línea de comandos -r.
  • check_omi_listening_on_tcp: YES si el estado del servidor OMI se obtuvo mediante script y se determinó que está escuchando en TCP y no solo en sockets UNIX. Solo con la opción de línea de comandos -r.

Uso

root@kitploit:~
usage: omigood_scanner.py [-h] [-v] [--auth {azurecli,interactivebrowser}] [-r] [-a] [-e] [-s SUBSCRIPTIONS]
                          [-g RESOURCEGROUPS] [-m VMS] -o OUTPUT

OMIGood scanner for CVE-2021-38647

optional arguments:
  -h, --help            show this help message and exit
  -v, --verbose         [OPTIONAL] Verbose mode: Displays additional debug details.
  --auth {azurecli,interactivebrowser}
                        Authentication mode. Default: azurecli.
  -r, --runscript       [OPTIONAL] Run Script. Runs bash script on target VMs to check for OMI server, agent and
                        version. Disabled by default. Use at your own risk.
  -a, --attack          [OPTIONAL] Try to attack the host. Disabled by default. Use at your own risk.
  -e, --effective       [OPTIONAL] Check Effective Security Rules. Disabled by default. Requires higher permissions on
                        Azure.
  -s SUBSCRIPTIONS, --subscriptions SUBSCRIPTIONS
                        [OPTIONAL] Comma separate list of subscriptions IDs. If not specified, it will try all.
  -g RESOURCEGROUPS, --resourcegroups RESOURCEGROUPS
                        [OPTIONAL] Comma separated list of Resource Group names. If not specified, it will try all. If
                        specified, it will work only with a single subscription provided.
  -m VMS, --vms VMS     [OPTIONAL] Comma separated list of VM names. If not specified, it will try all. If specified,
                        it will work only with a single subscription and a single resource group provided.
  -o OUTPUT, --output OUTPUT
                        JSON output file with results.

Contribuyentes

  • Marco Simioni
  • Francesco Vigo
  • Giordano Bianchi

AVISO LEGAL

El software y los ejemplos de código disponibles en este repositorio se proporcionan "tal cual", sin garantía de ningún tipo, ya sea expresa o implícita. Úsalo bajo tu propio riesgo.

Descargar herramienta
  • check_attack_successful: YES si el ataque a la IP Pública de la máquina virtual fue exitoso. Solo con las opciones de línea de comandos -r y -a.