Sign inSign up

platinumvoid/evidence-pack-generator

By platinumvoid

•Updated 3 months ago

Audit-ready security evidence packs from findings, metadata, and evidence files.

Image
Developer tools
1

136

platinumvoid/evidence-pack-generator repository overview

⁠evidence-pack-generator

Generate audit-ready security evidence packs from structured findings, files, and screenshots.

A reproducible internal container for generating consistent audit and security evidence packs across SDLC, vulnerability management, penetration testing, and regulatory assurance workflows.

The first milestone is not perfect reporting. It is proving that the organisation can run the same container and get the same structured output every time.

⁠MVP Scope

Input layout:

input/
├── findings.csv
├── evidence/
│   ├── screenshot1.png
│   └── nessus-summary.txt
└── metadata.json

Output layout:

output/
├── evidence-pack.html
├── findings-normalised.json
└── manifest.json

⁠Local CLI Usage

python -m app.cli generate --input ./examples/basic --output ./output

⁠Docker Usage (Windows CMD/PowerShell style)

Build image:

docker build -t evidence-pack-generator .

Run generator:

docker run --rm \
  -v "%cd%/examples/basic:/input" \
  -v "%cd%/output:/output" \
  evidence-pack-generator generate \
  --input /input \
  --output /output

Run API server:

docker run --rm -p 8000:8000 evidence-pack-generator

The image uses an entrypoint launcher:

  • ENTRYPOINT ["/entrypoint.sh"]
  • CMD ["api"]

This allows both API default startup and explicit CLI mode (generate) in the same image.

Expected files:

  • output/evidence-pack.html
  • output/findings-normalised.json
  • output/manifest.json

⁠Metadata Example

{
  "project": "Payments API",
  "owner": "Security Engineering",
  "control_set": "DORA",
  "version": "0.1.0",
  "git_commit": "abc1234"
}

⁠Notes

  • Findings CSV supports flexible column names and normalises into a consistent JSON schema.
  • Manifest includes SHA-256 hashes for all input and output files.
  • Simple control mapping is included for PCI DSS, DORA, and ISO 27001.
  • PDF generation is intentionally deferred to a later milestone.

⁠API Endpoints (MVP)

  • GET /health: service status
  • GET /control-sets: supported control mapping sets
  • POST /generate/path: generate from mounted input/output paths
  • POST /generate/upload: upload metadata.json, findings.csv, and optional evidence files

⁠Docker Compose Usage

Run API service (default):

docker compose up --build

Run a one-off batch generation job:

docker compose --profile batch run --rm evidence-pack-generator

Container hardening highlights:

  • Non-root runtime user in image
  • Healthcheck on /health
  • Read-only root filesystem and tmpfs /tmp in compose
  • no-new-privileges security option

⁠License

MIT License

Copyright (c) 2026 Internal Security Engineering

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Tag summary

Content type

Image

Digest

sha256:46546a841…

Size

50.3 MB

Last updated

3 months ago

docker pull platinumvoid/evidence-pack-generator