""" Compliance Risks Seed Data. Contains potential risks for Breakpilot PWA based on regulatory requirements. Each risk is assessed with likelihood (1-5) and impact (1-5). Risk Categories: - data_breach: Potential data breaches or unauthorized access - compliance_gap: Non-compliance with regulations - vendor_risk: Third-party/vendor related risks - operational: Operational and availability risks - legal: Legal and contractual risks - reputational: Reputation and trust risks """ from typing import List, Dict, Any # Likelihood Scale: # 1 = Very Unlikely (< 5% chance per year) # 2 = Unlikely (5-20% chance per year) # 3 = Possible (20-50% chance per year) # 4 = Likely (50-80% chance per year) # 5 = Very Likely (> 80% chance per year) # Impact Scale: # 1 = Negligible (< 1.000 EUR, no operational impact) # 2 = Minor (1.000-10.000 EUR, minor disruption) # 3 = Moderate (10.000-100.000 EUR, significant disruption) # 4 = Major (100.000-1.000.000 EUR, severe impact) # 5 = Critical (> 1.000.000 EUR, existential threat) RISKS_SEED: List[Dict[str, Any]] = [ # ======================================================================== # Datenschutz-Risiken (DSGVO) # ======================================================================== { "risk_id": "RISK-001", "title": "Unbefugter Zugriff auf Schueler-PII", "description": "Angreifer oder unbefugte Mitarbeiter koennten auf personenbezogene Daten von Schuelern zugreifen (Namen, Noten, Lernfortschritt). Dies wuerde eine meldepflichtige Datenpanne nach Art. 33 DSGVO darstellen.", "category": "data_breach", "likelihood": 2, "impact": 4, "mitigating_controls": ["IAM-001", "IAM-003", "CRYPTO-001", "OPS-001"], "owner": "Datenschutzbeauftragter", "treatment_plan": "RBAC strikt umsetzen, Mandantentrennung pruefen, regelmaessige Access Reviews durchfuehren, Logging aller Zugriffe auf PII.", "related_regulations": ["GDPR", "BDSG"], }, { "risk_id": "RISK-002", "title": "Fehlende oder ungueltige Einwilligungen", "description": "Verarbeitung von Daten ohne gueltige Einwilligung oder Rechtsgrundlage. Insbesondere bei minderjaehrigen Schuelern ist die Einwilligung der Erziehungsberechtigten erforderlich.", "category": "compliance_gap", "likelihood": 3, "impact": 3, "mitigating_controls": ["PRIV-001", "PRIV-003", "GOV-001"], "owner": "Datenschutzbeauftragter", "treatment_plan": "Consent-Management-System implementieren, Altersverifikation, Double-Opt-In fuer Eltern, Dokumentation aller Einwilligungen.", "related_regulations": ["GDPR", "TDDDG"], }, { "risk_id": "RISK-003", "title": "Unvollstaendige Betroffenenrechte-Umsetzung", "description": "Art. 15-22 DSGVO Anfragen (Auskunft, Loeschung, Berichtigung, Portabilitaet) werden nicht fristgerecht oder unvollstaendig beantwortet.", "category": "compliance_gap", "likelihood": 2, "impact": 3, "mitigating_controls": ["PRIV-004", "GOV-005"], "owner": "Datenschutzbeauftragter", "treatment_plan": "DSR-Workflow automatisieren, Fristen-Tracking implementieren, Export-Funktion fuer alle Nutzerdaten bereitstellen.", "related_regulations": ["GDPR"], }, { "risk_id": "RISK-004", "title": "PII in Logs und Fehlerberichten", "description": "Personenbezogene Daten werden versehentlich in Logs, Fehlerberichten oder Analytics-Daten erfasst und koennten durch Dritte eingesehen werden.", "category": "data_breach", "likelihood": 3, "impact": 2, "mitigating_controls": ["PRIV-007", "OPS-001", "SDLC-001"], "owner": "Engineering Lead", "treatment_plan": "PII-Redactor in allen Logging-Pipelines, SAST-Regeln fuer PII-Leaks, Log-Retention-Policy (max 30 Tage).", "related_regulations": ["GDPR"], }, # ======================================================================== # KI-Risiken (AI Act) # ======================================================================== { "risk_id": "RISK-005", "title": "Bias in KI-generierten Lerninhalten", "description": "KI-Modelle koennten verzerrte oder diskriminierende Inhalte generieren, die bestimmte Schuelergruppen benachteiligen.", "category": "compliance_gap", "likelihood": 3, "impact": 3, "mitigating_controls": ["AI-001", "AI-003", "AI-004"], "owner": "AI/ML Lead", "treatment_plan": "Bias-Monitoring implementieren, Human-in-the-Loop fuer alle KI-Outputs, regelmaessige Audits der Trainingsdaten.", "related_regulations": ["AIACT"], }, { "risk_id": "RISK-006", "title": "Fehlende KI-Transparenz gegenueber Nutzern", "description": "Nutzer werden nicht ausreichend darueber informiert, wenn KI-Systeme Entscheidungen treffen oder Inhalte generieren (Art. 13 AI Act).", "category": "compliance_gap", "likelihood": 2, "impact": 3, "mitigating_controls": ["AI-002", "AI-005", "GOV-001"], "owner": "Product Owner", "treatment_plan": "KI-Disclosure in UI implementieren, Model Cards erstellen, Transparenzbericht veroeffentlichen.", "related_regulations": ["AIACT"], }, { "risk_id": "RISK-007", "title": "Unzureichende KI-Risikobewertung", "description": "Bildungs-KI koennte als High-Risk nach AI Act klassifiziert werden, ohne dass die entsprechenden Anforderungen (Art. 9-15) erfuellt sind.", "category": "compliance_gap", "likelihood": 3, "impact": 4, "mitigating_controls": ["AI-005", "GOV-001", "AUD-001"], "owner": "Compliance Officer", "treatment_plan": "AI Act Impact Assessment durchfuehren, Risikoklassifizierung dokumentieren, Konformitaetsbewertung vorbereiten.", "related_regulations": ["AIACT"], }, # ======================================================================== # Cybersecurity-Risiken (CRA, NIS2) # ======================================================================== { "risk_id": "RISK-008", "title": "Schwachstellen in Abhaengigkeiten", "description": "Bekannte CVEs in Third-Party-Libraries werden nicht zeitnah gepatcht und koennten ausgenutzt werden.", "category": "operational", "likelihood": 4, "impact": 4, "mitigating_controls": ["SDLC-002", "SDLC-005", "OPS-004"], "owner": "Engineering Lead", "treatment_plan": "Trivy/Grype in CI/CD, automatische Dependency-Updates (Dependabot), SLA: Critical CVEs < 7 Tage patchen.", "related_regulations": ["CRA", "NIS2"], }, { "risk_id": "RISK-009", "title": "Fehlende SBOM fuer CRA-Compliance", "description": "Ohne Software Bill of Materials (SBOM) koennen Schwachstellen nicht effektiv verfolgt werden. CRA verlangt SBOM ab 2027.", "category": "compliance_gap", "likelihood": 2, "impact": 3, "mitigating_controls": ["CRA-001", "SDLC-005"], "owner": "Engineering Lead", "treatment_plan": "CycloneDX SBOM in CI generieren, SBOM-Repository aufbauen, VEX (Vulnerability Exploitability eXchange) implementieren.", "related_regulations": ["CRA"], }, { "risk_id": "RISK-010", "title": "Unzureichende Incident Response", "description": "Bei einem Sicherheitsvorfall fehlen klare Prozesse, was zu verzoegerter Reaktion und erhoehtem Schaden fuehrt.", "category": "operational", "likelihood": 2, "impact": 4, "mitigating_controls": ["GOV-005", "OPS-003"], "owner": "Security Lead", "treatment_plan": "Incident Response Plan dokumentieren, Runbooks erstellen, Tabletop-Uebungen durchfuehren, Notfall-Kontakte pflegen.", "related_regulations": ["NIS2", "GDPR"], }, { "risk_id": "RISK-011", "title": "Secrets in Code oder Logs", "description": "API-Keys, Passwoerter oder andere Secrets werden versehentlich ins Repository committed oder in Logs geschrieben.", "category": "data_breach", "likelihood": 3, "impact": 4, "mitigating_controls": ["SDLC-003", "CRYPTO-003"], "owner": "Engineering Lead", "treatment_plan": "Gitleaks/TruffleHog in Pre-Commit-Hooks, Vault fuer Secrets, automatische Key-Rotation.", "related_regulations": ["CRA"], }, # ======================================================================== # Vendor & Supply Chain Risiken # ======================================================================== { "risk_id": "RISK-012", "title": "Drittanbieter-Datenweitergabe ohne AVV", "description": "Personenbezogene Daten werden an Cloud-Provider oder Subunternehmer uebermittelt, ohne dass ein Auftragsverarbeitungsvertrag (AVV) vorliegt.", "category": "vendor_risk", "likelihood": 2, "impact": 3, "mitigating_controls": ["PRIV-005"], "owner": "Datenschutzbeauftragter", "treatment_plan": "Vendor-Register fuehren, AVVs mit allen Auftragsverarbeitern abschliessen, regelmaessige Ueberpruefung.", "related_regulations": ["GDPR"], }, { "risk_id": "RISK-013", "title": "US-Cloud-Dienste ohne angemessene Garantien", "description": "Nutzung von US-Cloud-Diensten ohne EU-US Data Privacy Framework Zertifizierung oder SCCs, was nach Schrems II problematisch ist.", "category": "vendor_risk", "likelihood": 2, "impact": 4, "mitigating_controls": ["PRIV-005", "GOV-001"], "owner": "Datenschutzbeauftragter", "treatment_plan": "Cloud-Provider auf DPF-Zertifizierung pruefen, Transfer Impact Assessment durchfuehren, EU-Hosting bevorzugen.", "related_regulations": ["GDPR", "SCC", "DPF"], }, { "risk_id": "RISK-014", "title": "LLM-Provider Datennutzung fuer Training", "description": "LLM-Anbieter (OpenAI, Anthropic) koennten Nutzerdaten zum Training verwenden, was ohne Einwilligung problematisch waere.", "category": "vendor_risk", "likelihood": 2, "impact": 3, "mitigating_controls": ["PRIV-005", "AI-001"], "owner": "AI/ML Lead", "treatment_plan": "Opt-Out fuer Training bei allen LLM-Providern, Enterprise-Agreements mit No-Training-Klausel, PII-Filtering vor API-Calls.", "related_regulations": ["GDPR", "AIACT"], }, # ======================================================================== # Betriebliche Risiken # ======================================================================== { "risk_id": "RISK-015", "title": "Datenverlust durch fehlende Backups", "description": "Kritische Daten gehen durch Hardware-Ausfall, Ransomware oder menschliches Versagen verloren.", "category": "operational", "likelihood": 2, "impact": 5, "mitigating_controls": ["OPS-002"], "owner": "DevOps Lead", "treatment_plan": "Taegliche automatische Backups, geografisch redundante Speicherung, regelmaessige Restore-Tests (quartalsweise).", "related_regulations": ["GDPR"], }, { "risk_id": "RISK-016", "title": "Verfuegbarkeitsausfall waehrend Unterricht", "description": "System ist waehrend des Unterrichts nicht verfuegbar, was den Lehrbetrieb stoert und Vertrauen beschaedigt.", "category": "operational", "likelihood": 3, "impact": 3, "mitigating_controls": ["OPS-005"], "owner": "DevOps Lead", "treatment_plan": "99.9% SLA definieren, Monitoring mit Alerting, Runbooks fuer haeufige Ausfaelle, Status-Page einrichten.", "related_regulations": [], }, # ======================================================================== # Rechtliche Risiken # ======================================================================== { "risk_id": "RISK-017", "title": "DSGVO-Bussgeld wegen Compliance-Verstoss", "description": "Aufsichtsbehoerde verhaengt Bussgeld wegen Datenschutzverstoss (bis zu 20 Mio EUR oder 4% Jahresumsatz).", "category": "legal", "likelihood": 1, "impact": 5, "mitigating_controls": ["PRIV-001", "PRIV-002", "PRIV-006", "GOV-001"], "owner": "Geschaeftsfuehrung", "treatment_plan": "Datenschutz-Audit jaehrlich, DPIA fuer neue Verarbeitungen, enge Zusammenarbeit mit DSB.", "related_regulations": ["GDPR"], }, { "risk_id": "RISK-018", "title": "Haftung bei KI-verursachten Schaeden", "description": "Neue Produkthaftungsrichtlinie macht Hersteller fuer KI-verursachte Schaeden haftbar (fehlerhafte Lerninhalte, falsche Bewertungen).", "category": "legal", "likelihood": 2, "impact": 4, "mitigating_controls": ["AI-003", "AI-004", "AUD-001"], "owner": "Geschaeftsfuehrung", "treatment_plan": "Human-in-the-Loop fuer kritische Entscheidungen, Disclaimer in UI, Haftpflichtversicherung pruefen.", "related_regulations": ["PLD", "AIACT"], }, # ======================================================================== # Barrierefreiheit # ======================================================================== { "risk_id": "RISK-019", "title": "Nicht barrierefreie Anwendung (EAA)", "description": "European Accessibility Act verlangt ab 2025 Barrierefreiheit. Nicht-konforme Software kann vom Markt ausgeschlossen werden.", "category": "compliance_gap", "likelihood": 3, "impact": 3, "mitigating_controls": ["GOV-001"], "owner": "Product Owner", "treatment_plan": "WCAG 2.1 AA Audit durchfuehren, Accessibility-Tests in CI, Screenreader-Kompatibilitaet sicherstellen.", "related_regulations": ["EAA"], }, # ======================================================================== # Reputationsrisiken # ======================================================================== { "risk_id": "RISK-020", "title": "Reputationsschaden durch Datenpanne", "description": "Oeffentlich bekannt gewordene Datenpanne fuehrt zu Vertrauensverlust bei Schulen, Eltern und Schuelern.", "category": "reputational", "likelihood": 2, "impact": 4, "mitigating_controls": ["GOV-005", "OPS-003"], "owner": "Geschaeftsfuehrung", "treatment_plan": "Kommunikationsplan fuer Krisenfaelle, transparente Kommunikation, schnelle Behebung und Information Betroffener.", "related_regulations": ["GDPR"], }, ] def get_risks_for_seeding() -> List[Dict[str, Any]]: """Return all risks for database seeding.""" return RISKS_SEED