Skip to main content

Docker Engine HTTP API enumeration helpers for env vars, secrets, and images.

Project description

Docker API Enumeration Tools

These scripts query the Docker Engine HTTP API to collect information about containers and secrets.
They are designed for security assessments and administrative auditing, providing quick insights into environment variables, secrets, and general engine configuration.

Warning: Exposing the Docker Engine API without TLS or authentication is a serious security risk.
Use these scripts only against environments you are authorized to assess.

Install

From pip:

pip install docker-enumsensitive

From github:

git clone https://github.com/DefensiveOrigins/DockerEngineAPI-EnumSensitive.git

Scripts

docker-enum-envvars / EnumEnvVars.py`

Enumerates running and stopped containers, extracts their environment variables, and prints them to the console.
Can also save the results in structured JSON.

docker-enum-secrets / EnumSecrets.py

Enumerates Secrets from Docker Swarm mode, attempting to read their values if specified. Can also save the results in structured JSON.

docker-enum-images / EnumImages.py

Inspects the contents of images for sensitive information such as tokens, keys, etc.

Usage

Environment Variables Enumeration
# Local Docker API (default: http://localhost:2375)
python EnumEnvVars.py
docker-enum-envvars

# Remote engine and save to file
python EnumEnvVars.py --url http://docker-host:2375 --out results.json
docker-enum-envvars --url http://docker-host:2375 --out results.json


# Include full /info JSON
python EnumEnvVars.py --show-info-json
docker-enum-envvars --show-info-json
Secrets Enumeration
# Local secrets enumeration
python EnumSecrets.py
docker-enum-secrets

# Remote engine, attempt values, save to file
python EnumSecrets.py --url http://docker-host:2375 --attempt-values --out secrets.json
docker-enum-secrets --url http://docker-host:2375 --attempt-values --out secrets.json

# Include full /info JSON
python EnumSecrets.py --show-info-json
docker-enum-secrets --show-info-json

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docker_enumsensitive-0.1.6.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docker_enumsensitive-0.1.6-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file docker_enumsensitive-0.1.6.tar.gz.

File metadata

  • Download URL: docker_enumsensitive-0.1.6.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for docker_enumsensitive-0.1.6.tar.gz
Algorithm Hash digest
SHA256 3e462ac626acb94e2c5e8660baa9645818225420dbdc7dfaa093e5c5d286acfe
MD5 aca68c351450c57c34dcf0f2871c6d87
BLAKE2b-256 ed78f61c29e61e4754859189cded7625bbaf6fc9965b25842516cc7923f44fe6

See more details on using hashes here.

File details

Details for the file docker_enumsensitive-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for docker_enumsensitive-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 96883a564da82ec5e4cfd189fe452b3512a354438aac99a1640f0e62e085908f
MD5 c74019773576a6a6959839b3b80b2359
BLAKE2b-256 2cbe97169038c616e5bc529fa140490f6a246907347f560b891d0c8517320fc8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page