Files
aza/AzA march 2026/security/handovers/STEP_03_SUMMARY.md
2026-03-25 22:03:39 +01:00

55 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# STEP 3 FORMELLE GAP-ANALYSE (HIN vs. AZA)
# Status: ABGESCHLOSSEN
---
## Ziel des Schrittes
Formale Gegenüberstellung des HIN Security Stacks mit dem aktuellen
AZA/MedWork-Sicherheitszustand. Nur faktenbasierter Vergleich,
keine Empfehlungen, keine Implementierung.
## Konkrete Änderungen
- NEU: /security/handovers/STEP_03_GAP_ANALYSE.md (vollständige Gap-Analyse)
## Betroffene Dateien
Keine Dateien geändert. Nur Analyse-Dokument erstellt.
Analysierte Quelldateien:
- basis14.py (Passwort-Hashing, Login)
- aza_email.py (SMTP/IMAP, Mail-Sicherheit)
- aza_email_config.json (Credential-Speicherung)
- aza_config.py (Supabase-Zugriff)
- backend_main.py (API-Token, User-Header)
- todo_server.py (HTTP-Server, Firewall)
- transcribe_server.py (kein TLS)
- workforce_planner/api/auth.py (JWT, bcrypt)
- workforce_planner/config.py (Secret Key)
- workforce_planner/core/enums.py (Rollen)
- workforce_planner/core/models.py (Employee-Modell)
## Sicherheitsauswirkung
29 Lücken identifiziert, alle 5 Bereiche mit Kritikalität HIGH:
- Transport: 5 Lücken (kein S/MIME, kein verschlüsselter App-Kanal, HTTP-Server)
- Netzwerk: 6 Lücken (kein Perimeter, kein VPN, kein DDoS-Schutz)
- PKI: 5 Lücken (keine CA, keine Zertifikate, kein Schlüsselmanagement)
- Authentifizierung: 7 Lücken (keine 2FA, SHA-256 ohne Salt, hardcoded Secret)
- Mail: 6 Lücken (keine Verschlüsselung, Klartext-Passwörter in Config)
## Offene Punkte
- 9 Vergleichspunkte nicht vollständig bewertbar (HIN-Dokumentation fehlt)
- Supabase-Sicherheitskonfiguration nicht im Scope
- Python-Default-TLS-Verhalten systemabhängig
## Risiken
- Alle 5 Bereiche zeigen fundamentale Lücken zum HIN-Standard
- Besonders kritisch: Klartext-Passwörter in aza_email_config.json
- Besonders kritisch: SHA-256 ohne Salt in basis14.py
- Besonders kritisch: Hardcoded Secret Key "dev-secret-change-in-production"
- Besonders kritisch: HTTP-Server ohne TLS (todo_server, transcribe_server, backend)