Raw config-to-env output (decrypted secrets) is echoed to pod logs on failure

Offen Anfängerfreundlich
#38 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
72/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
bash, shell
Bereich
security

Rechercherichtung

Lies scripts/docker-entrypoint.sh im Bereich der Zeilen 245 und 261 und verfolge dann, wie config_env_output und config_err_output erfasst werden. Prüfe die Fehlerpfade und Pfade ohne Export, um sicherzustellen, dass stdout mit Geheimnissen nicht protokolliert wird und aussagekräftiges, redigiertes stderr erhalten bleibt. Fertig, wenn diese Fehler den Exit-Code und sichere Diagnosen melden, ohne die Konfigurationsausgabe auszugeben.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

security

Finding (medium)

scripts/docker-entrypoint.sh:245 and :261: echo "[CONFIG] ERROR: Failed to load config (exit $config_exit): $config_env_output $config_err_output" >&2, and line 261 prints $config_env_output again. That variable is the stdout of npx @osaas/cli web config-to-env: export NAME=value lines including secret parameters decrypted with CONFIG_API_KEY. On non-zero exit or output with no matching export line, they go to stderr, Loki and anyone with log access. Line 97 redaction only covers git stderr (gh*_, Basic).

Fix: print only the exit code and a redacted $config_err_output. Sibling: Eyevinn/web-runner has the same line (filed separately); #26 introduced the fatal path without covering log content.

Low

The runner runs as root and OSC_ACCESS_TOKEN, GIT_TOKEN, GITHUB_TOKEN and CONFIG_API_KEY stay exported into pip install build hooks and the app; Dockerfile has curl | bash for NodeSource and unpinned pip install gradio.

Lessons

Found by the Weekly Security Audit (2026-11-04); static read of a shallow clone, not reproduced live.

🤖 Generated with Claude Code

Co-Authored-By: Claude [email protected]

Vorherrschende Sprache
Shell
Sterne
0
Forks
2
Ø Merge
40 Min.
Gemergte PRs (30 T.)
5

Entwicklungsumgebung

  • Enthält ein Dockerfile oder eine Docker-Compose-Datei
  • Keine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Ähnliche Issues

Weitere Issues zu Shell/Bash

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.