Zum Hauptinhalt springen

Security

StoreStash nimmt Sicherheit ernst. Hier sind die implementierten Maßnahmen und Empfehlungen.

Implementierte Maßnahmen

Backend

  • Secret Key Validierung — App startet nicht ohne gesetzten SECRET_KEY
  • Input-Validierung — Pydantic Schemas mit max_length auf allen Textfeldern
  • SQL-Injection — SQLAlchemy ORM + LIKE-Escape
  • Referenz-ID Prüfung — Ungültige UUIDs geben 400 statt 500

Nginx

  • CSP — Content Security Policy für XSS-Schutz
  • Security Headers — X-Content-Type-Options, X-Frame-Options, Referrer-Policy
  • Rate-Limiting — 30 req/s pro IP, Burst 20
  • Body-Size-Limit — Max. 2 MB Requests
  • Swagger blockiert/docs, /redoc, /openapi.json in Produktion nicht erreichbar

Docker

  • Non-root Container — Alle Services laufen als unprivilegierter User
  • Rootless Docker — Vollständig kompatibel
  • DB nicht exponiert — PostgreSQL nur im Docker-Netzwerk erreichbar
  • Kein Port-Mapping für DB und Backend

Frontend

  • Kein {@html} mit User-Input (XSS-Schutz)
  • SvelteKit Auto-Escaping — Templates escapen standardmäßig

Bekannte Einschränkungen

Keine Authentifizierung (bis v0.10.0)

Alle API-Endpoints sind aktuell ohne Auth erreichbar. StoreStash nicht ohne zusätzlichen Schutz (VPN, IP-Whitelist) im öffentlichen Internet betreiben.

Security Audits

VersionTypDokument
v0.4.0Standarddocs/SECURITY_AUDIT_v0.4.0.md
v0.7.2Standarddocs/SECURITY_AUDIT_v0.7.2.md
v0.10.1Auth-FokusGeplant
v1.0.0-rcVoll-AuditGeplant

Siehe SECURITY_PLAN.md für den vollständigen Audit-Plan.

Sicherheitslücke melden

Ab v1.0.0: SECURITY.md im Repository mit Kontaktinformationen für Responsible Disclosure.