← Übersicht

F11 Credentials, Rechnungsdateien und Aufbewahrung absichern

Credentials, Rechnungsdateien und Aufbewahrung absichern

Finding: F11 Priorität: P0 Status: AUSGESCHLOSSEN Stand: 2026-07-16

Problembeschreibung

  • Echte Wetell-/Lexoffice-Credentials liegen im Projekt mit 0664, world-readable; externe DB-Credentials sind 0640.
  • CLI fällt ohne APP_CREDENTIALS_DIR auf Projekt-Credentials zurück (run-rechnung.php:76).
  • PDFs/State/Metadaten sind 0664 mit personenbezogenen Daten/Remote-IDs.
  • Retention, Löschung, Backup/Restore fehlen.

Ziel

Secrets/Rechnungsdaten sind nur für Serviceaccount lesbar, außerhalb publizierter Bereiche und folgen geprüfter Retention.

Aufgabe

  1. Projektsecrets entfernen/rotieren; nur Examples.
  2. Fallback entfernen, Env fail-closed.
  3. Umask/ACL 0750/0640 oder strenger.
  4. Retention/Backup/Restore/Löschung/Redaction definieren.

Scope

  • In Scope: alle unter Code Blast genannten Komponenten, Daten, Verträge und Tests.
  • Out of Scope: neue Features und produktive externe Mutation ohne separate Freigabe.

Harte Spezifikation

  • MUST: keine Prod-Secrets unter Root.
  • MUST: APP_CREDENTIALS_DIR Pflicht plus Modeprüfung.
  • MUST: PDF/State/Logs nie world-readable.
  • MUST: bekannte Secrets rotieren.

Harte Quality Gateways

  • Find zeigt nur Credential-Examples.
  • Permissiontest maximal 0640/0750.
  • Start ohne Env vor Netzwerk beendet.
  • Secretscan Projekt/DB/History 0; Restore-/Löschtest grün.
  • Global: PHPStan Level 8 und PHPUnit liefern 0 Fehler; kein Ignore oder Baseline.

Code Blast

  • Direkt: CLI, Credentials, Storage, State, Logger, Deploy.
  • Rotation betrifft WEtell/Lexware und ACL/Backup.

Code-Impact-Analyse

  • Strenger Start braucht korrekte Env.
  • Rotation muss koordiniert werden.

Risikoanalyse

| Risiko | Eintritt | Schaden | |---|---|---| | Credential-Diebstahl/PII | hoch | kritisch | | Rotation sperrt Prozess | mittel | hoch |

Strategie zur Risikonullierung

  1. Prevent: externe Secrets/ACL.
  2. Detect: Scans.
  3. Contain: Serviceidentität.
  4. Recover: Rotation/Restore.

Abschlussnachweis

Erledigt erst, wenn alle MUST-Spezifikationen implementiert, alle Gateways mit unveränderlicher Evidenz grün und Restrisiken technisch ausgeschlossen oder ausdrücklich fachlich akzeptiert sind.

Umsetzungsstatus

  • Durch explizite Zielabgrenzung des Auftraggebers vollständig ausgeschlossen.
  • Credentials, Credential-Pfade, Secrets, Dateirechte und Rotation wurden nicht verändert.
  • Dieser Task blockiert die Zielerreichung nicht.

Frühere Versionen

VersionZeitpunktOperation
29 2026-07-16 19:02:06.159231+02 UPDATE