Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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
aws-recon — Herramienta de recolección de inventario de AWS multi-hilo con enfoque en recursos y metadatos relevantes para la seguridad. | Kitploit
Herramientas/GitHubGitHub/joshlarsen/aws-recon
Seguridad de Infraestructura en la NubeReconocimientoAnálisis de VulnerabilidadesScripting y AutomatizaciónAuditoría de ConfiguraciónRecopilación de InformaciónSeguridad en la NubeDevSecOpsArchived
GitHubjoshlarsen/aws-recon

aws-recon

Herramienta de recolección de inventario de AWS multi-hilo con enfoque en recursos y metadatos relevantes para la seguridad.

5585033hace 1 añoRevisado por Kitploit
Ver Repositorio

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

Docker Pulls Gem Version GitHub Workflow Status (branch) AWS Service Regions

AWS Recon

Una herramienta de recolección de inventario de AWS orientada a la seguridad y con múltiples hilos, escrita en Ruby.

Esta herramienta se creó para facilitar la recolección eficiente de una gran cantidad de atributos y metadatos de recursos de AWS. Su objetivo es recopilar casi todo lo relevante para la configuración de seguridad y la postura de un entorno AWS.

Las herramientas existentes (por ejemplo, AWS Config) que realizan algún tipo de recolección de recursos carecen de la cobertura y especificidad necesarias para medir con precisión la postura de seguridad (p. ej., datos detallados de atributos de recursos, documentos de política completamente analizados y relaciones anidadas entre recursos).

AWS Recon maneja la recolección de cuentas grandes aprovechando reintentos automáticos (ya sea por confiabilidad de red o limitación de API), paginación automática de respuestas grandes (> 100 recursos por llamada API) y solicitudes paralelas con múltiples hilos para acelerar la recolección.

Objetivos del proyecto

  • Cobertura de recursos más completa que las herramientas disponibles (especialmente para ECS y EKS)
  • Detalle de recursos más granular, incluidos los recursos relacionados anidados en la salida
  • Salida flexible (consola, líneas JSON, JSON plano, archivo, bucket S3 y salida estándar)
  • Eficiente (multihilo, limitado por tasa, reintentos automáticos y paginación automática de resultados)
  • Fácil de mantener y ampliar

Empresas increíbles que usan AWS Recon**

  • Netflix
  • HashiCorp
  • Workday
  • Stripe
  • PayPal
  • Typeform
  • Amazon Web Services
  • Plaid
  • Expel
  • Mozilla
  • Bugcrowd
  • Dropbox
  • Pinterest
  • HackerOne
  • MuleSoft
  • Slack
  • Drata
  • Google
  • Sophos
  • Sumo Logic
  • Coalfile
  • Xero

** el uso no implica respaldo

Configuración

Requisitos

AWS Recon necesita un rol de cuenta AWS o credenciales con ReadOnlyAccess. El acceso completo de AdministratorAccess es demasiado privilegiado, pero también funcionará. La política SecurityAudit no es suficiente, ya que omite el acceso a muchos servicios.

Ejecución mediante Docker

Use la versión 19.x o superior de Docker para ejecutar la imagen preconstruida sin necesidad de instalar nada.

Ejecución local mediante Ruby

Si ya tiene Ruby instalado (2.6.x o 2.7.x), es posible que desee instalar la gema de Ruby.

Instalación

AWS Recon se puede ejecutar localmente a través de un contenedor Docker o instalando la gema de Ruby.

Para ejecutarlo mediante un contenedor Docker, pase las credenciales AWS necesarias al comando run de Docker. Por ejemplo:

$ docker run -t --rm \
  -e AWS_REGION \
  -e AWS_ACCESS_KEY_ID \
  -e AWS_SECRET_ACCESS_KEY \
  -e AWS_SESSION_TOKEN \
  -v $(pwd)/output.json:/recon/output.json \
  darkbitio/aws_recon:latest \
  aws_recon -v -s EC2 -r global,us-east-1,us-east-2

Para ejecutarlo localmente, primero instale la gema:

$ gem install aws_recon
Fetching aws_recon-0.5.17.gem
Fetching aws-sdk-3.0.1.gem
Fetching parallel-1.20.1.gem
...
Successfully installed aws-sdk-3.0.1
Successfully installed parallel-1.20.1
Successfully installed aws_recon-0.5.17

O agréguela a su Gemfile usando bundle:

$ bundle add aws_recon
Fetching gem metadata from https://rubygems.org/
Resolving dependencies...
...
Using aws-sdk 3.0.1
Using parallel-1.20.1
Using aws_recon 0.5.17

Uso

AWS Recon aprovechará cualquier credencial AWS (consulte requisitos) disponible actualmente en el entorno donde se ejecuta. Si está recolectando de varias cuentas, es posible que desee usar algo como aws-vault para gestionar diferentes credenciales.

$ aws-vault exec profile -- aws_recon

Las variables de entorno simples también funcionarán bien.

$ AWS_PROFILE=<profile> aws_recon

Para ejecutar desde un contenedor Docker usando credenciales gestionadas por aws-vault (salida a stdout):

$ aws-vault exec <vault_profile> -- docker run -t --rm \
  -e AWS_REGION \
  -e AWS_ACCESS_KEY_ID \
  -e AWS_SECRET_ACCESS_KEY \
  -e AWS_SESSION_TOKEN \
  darkbitio/aws_recon:latest \
  aws_recon -j -s EC2 -r global,us-east-1,us-east-2

Para ejecutar desde un contenedor Docker usando credenciales gestionadas por aws-vault y salida a un archivo, deberá cumplir con un par de requisitos. Primero, Docker necesita acceso para montar en enlace la ruta que especifique (o una ruta superior). Segundo, debe crear un archivo vacío para guardar la salida (por ejemplo, output.json). Esto se debe a que solo ese archivo se monta en el contenedor Docker en tiempo de ejecución. Por ejemplo:

Cree un archivo vacío.

$ touch output.json

Ejecute el contenedor aws_recon, especificando el archivo de salida.

$ aws-vault exec <vault_profile> -- docker run -t --rm \
  -e AWS_REGION \
  -e AWS_ACCESS_KEY_ID \
  -e AWS_SECRET_ACCESS_KEY \
  -e AWS_SESSION_TOKEN \
  -v $(pwd)/output.json:/recon/output.json \
  darkbitio/aws_recon:latest \
  aws_recon -s EC2 -v -r global,us-east-1,us-east-2

Es posible que desee usar la bandera -v o --verbose inicialmente para ver el estado y la actividad mientras se ejecuta la recolección.

En modo verbose, la salida de la consola mostrará:

<thread>.<region>.<service>.<operation>

El prefijo t indica qué hilo está ejecutando una solicitud en particular. Región, servicio y operación indican qué operación de solicitud está actualmente en curso y dónde.

$ aws_recon -v

t0.global.EC2.describe_account_attributes
t2.global.S3.list_buckets
t3.global.Support.describe_trusted_advisor_checks
t2.global.S3.list_buckets.acl
t5.ap-southeast-1.WorkSpaces.describe_workspaces
t6.ap-northeast-1.Lightsail.get_instances
...
t2.us-west-2.WorkSpaces.describe_workspaces
t1.us-east-2.Lightsail.get_instances
t4.ap-southeast-1.Firehose.list_delivery_streams
t7.ap-southeast-1.Lightsail.get_instances
t0.ap-south-1.Lightsail.get_instances
t1.us-east-2.Lightsail.get_load_balancers
t7.ap-southeast-2.WorkSpaces.describe_workspaces
t2.eu-west-3.SageMaker.list_notebook_instances
t3.eu-west-2.SageMaker.list_notebook_instances

Finalizado en 46 segundos. Guardando recursos en output.json.

Opciones de línea de comandos de ejemplo

# recolectar recursos globales de S3 y EC2, así como us-east-1 y us-east-2

$ AWS_PROFILE=<profile> aws_recon -s S3,EC2 -r global,us-east-1,us-east-2
# recolectar recursos globales de S3 y EC2, así como us-east-1 y us-east-2

$ AWS_PROFILE=<profile> aws_recon --services S3,EC2 --regions global,us-east-1,us-east-2
# guardar salida en un bucket S3
Descargar herramienta