Secrets retained in container build artifacts
A build places confidential inputs in image history, layers or artifacts available outside their intended audience.
Candidate CWE: CWE-522
Test hypothesis#
Build only a reviewed fixture recipe with a synthetic marker in the suspected secret input. Inspect the resulting owned image history/layers and compare a build using the documented secret mechanism.
Evidence required#
Build recipe and commit, exact image digest, marker location, image-reader access and the secure build comparison.
Rule out false positives#
Fake sample strings, public non-secret build metadata, or a secret mount that is not persisted into the final accessible artifact.
Playbook and command references#
- Infrastructure configuration: from repository default to deployed impact — Trace IaC, charts, Compose and image packaging into supported deployments, including exposed services and sensitive artifacts.
Find the associated command snippets
Referenced by these target playbooks#
Report checklist#
- Capture the affected version, configuration, identities, and object ownership.
- Preserve a valid baseline and a negative control.
- Reproduce the forbidden data access, action, or state change on controlled fixtures.
- Explain the intended security rule and why the observed behavior violates it.
- State prerequisites, uncertainty, cleanup, and the smallest demonstrated impact.
Conditional ATT&CK mapping#
- T1552.001 · Unsecured Credentials: Credentials In Files — Only if: The tested path retrieves credentials from insufficiently protected configuration, source, log, archive, or other files; retain only redacted evidence and location details. Not established by: A high-entropy string, sample credential, or accessible file without authentication material is insufficient. Reading arbitrary non-secret data is a different behavior.