55 lines
1.9 KiB
Markdown
55 lines
1.9 KiB
Markdown
|
|
# 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)
|