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.2.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.2-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: docker_enumsensitive-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 90dcd80fb422020b7841ffa3376ef6c368a8ef91277dc523230d02618b116dd0
MD5 69205740a755d31ba4d8241d02c813fe
BLAKE2b-256 c9af4af07eaf016c89330d7ff3aae23646c0c2b96a02fd89f91ac5cc98e73d19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for docker_enumsensitive-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 41a6d6d0e5adc0d50f12d6acdf57377f90d4e7fb237d7df2dc3feeed85e13e3d
MD5 a9a8bc8eb8bac9945146908a58c55e6d
BLAKE2b-256 3d19665015f517033fa49bfa0ef2e1fc8fb5c75a0f1ed4ceaa16c02888031913

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