/** * DSFA Risikokatalog - Vordefinierte Risikoszenarien * * ~40 Risiken gegliedert nach Vertraulichkeit, Integritaet, Verfuegbarkeit, * Rechte & Freiheiten, Drittlandtransfer und Automatisierung. * * Quellen: EG 75 DSGVO, Art. 32 DSGVO, Art. 28/46 DSGVO, Art. 22 DSGVO, * Baseline-DSFA Katalog, SDM V2.0 */ import type { DSFARiskCategory } from './types' import type { SDMGoal } from './types' // ============================================================================= // TYPES // ============================================================================= export interface CatalogRisk { id: string category: DSFARiskCategory sdmGoal: SDMGoal title: string description: string impactExamples: string[] typicalLikelihood: 'low' | 'medium' | 'high' typicalImpact: 'low' | 'medium' | 'high' wp248Criteria: string[] applicableTo: string[] mitigationIds: string[] } // ============================================================================= // RISIKOKATALOG // ============================================================================= export const RISK_CATALOG: CatalogRisk[] = [ // ========================================================================= // VERTRAULICHKEIT (Confidentiality) // ========================================================================= { id: 'R-CONF-01', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Unbefugte Offenlegung durch Fehlkonfiguration', description: 'Personenbezogene Daten werden durch fehlerhafte Systemkonfiguration (z.B. offene APIs, fehlerhafte Zugriffsrechte, oeffentliche Cloud-Speicher) unbefugt zugaenglich.', impactExamples: ['Identitaetsdiebstahl', 'Reputationsschaden', 'Diskriminierung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K4', 'K5'], applicableTo: ['cloud_storage', 'web_application', 'api_service'], mitigationIds: ['M-CONF-01', 'M-CONF-02', 'M-CONF-03'], }, { id: 'R-CONF-02', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Account Takeover / Credential Stuffing', description: 'Angreifer uebernehmen Benutzerkonten durch gestohlene Zugangsdaten, Brute-Force-Angriffe oder Phishing und erlangen Zugriff auf personenbezogene Daten.', impactExamples: ['Kontrollverlust ueber eigene Daten', 'Finanzieller Schaden', 'Missbrauch der Identitaet'], typicalLikelihood: 'high', typicalImpact: 'high', wp248Criteria: ['K4', 'K7'], applicableTo: ['identity', 'web_application', 'email_service'], mitigationIds: ['M-ACC-01', 'M-ACC-02'], }, { id: 'R-CONF-03', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Unbefugter Zugriff durch Support-/Administrationspersonal', description: 'Administratoren oder Support-Mitarbeiter greifen ohne dienstliche Notwendigkeit auf personenbezogene Daten zu (Insider-Bedrohung).', impactExamples: ['Verletzung der Privatsphaere', 'Datenmissbrauch', 'Vertrauensverlust'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K4'], applicableTo: ['identity', 'crm', 'cloud_storage', 'support_system'], mitigationIds: ['M-CONF-04', 'M-CONF-05', 'M-INT-02'], }, { id: 'R-CONF-04', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Datenleck durch unzureichende Verschluesselung', description: 'Personenbezogene Daten werden bei Uebertragung oder Speicherung nicht oder unzureichend verschluesselt und koennen abgefangen werden.', impactExamples: ['Man-in-the-Middle-Angriff', 'Datendiebstahl bei Speichermedien-Verlust'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K4', 'K8'], applicableTo: ['cloud_storage', 'email_service', 'mobile_app', 'api_service'], mitigationIds: ['M-CONF-06', 'M-CONF-07'], }, { id: 'R-CONF-05', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Unkontrollierte Datenweitergabe an Dritte', description: 'Personenbezogene Daten werden ohne Rechtsgrundlage oder ueber das vereinbarte Mass hinaus an Dritte weitergegeben (z.B. durch Tracking, Analyse-Tools, Sub-Auftragsverarbeiter).', impactExamples: ['Unerwuenschte Werbung', 'Profiling ohne Wissen', 'Kontrollverlust'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K1', 'K6'], applicableTo: ['web_application', 'analytics', 'marketing', 'crm'], mitigationIds: ['M-NONL-01', 'M-TRANS-01'], }, { id: 'R-CONF-06', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Social Engineering / Phishing gegen Betroffene', description: 'Betroffene werden durch manipulative Kommunikation dazu verleitet, personenbezogene Daten preiszugeben oder Zugriff zu gewaehren.', impactExamples: ['Identitaetsdiebstahl', 'Finanzieller Schaden', 'Uebernahme von Konten'], typicalLikelihood: 'high', typicalImpact: 'medium', wp248Criteria: ['K7'], applicableTo: ['email_service', 'web_application', 'identity'], mitigationIds: ['M-ACC-01', 'M-ORG-01'], }, { id: 'R-CONF-07', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Unbeabsichtigte Offenlegung in Logs/Debugging', description: 'Personenbezogene Daten gelangen in Protokolldateien, Fehlermeldungen oder Debug-Ausgaben und werden dort nicht geschuetzt.', impactExamples: ['Zugriff durch Unbefugte auf Logdaten', 'Langzeitspeicherung ohne Rechtsgrundlage'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K4'], applicableTo: ['api_service', 'web_application', 'cloud_storage'], mitigationIds: ['M-CONF-08', 'M-DMIN-01'], }, // ========================================================================= // INTEGRITAET (Integrity) // ========================================================================= { id: 'R-INT-01', category: 'integrity', sdmGoal: 'integritaet', title: 'Datenmanipulation durch externen Angriff', description: 'Personenbezogene Daten werden durch einen Cyberangriff (SQL-Injection, API-Manipulation) veraendert, ohne dass dies erkannt wird.', impactExamples: ['Falsche Entscheidungen auf Basis manipulierter Daten', 'Rufschaedigung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K4', 'K8'], applicableTo: ['api_service', 'web_application', 'database'], mitigationIds: ['M-INT-01', 'M-INT-02', 'M-INT-03'], }, { id: 'R-INT-02', category: 'integrity', sdmGoal: 'integritaet', title: 'Fehlerhafte Synchronisation zwischen Systemen', description: 'Bei der Synchronisation personenbezogener Daten zwischen verschiedenen Systemen kommt es zu Inkonsistenzen, Duplikaten oder Datenverlust.', impactExamples: ['Falsche Kontaktdaten', 'Doppelte Verarbeitung', 'Falsche Auskuenfte'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K6'], applicableTo: ['crm', 'cloud_storage', 'erp', 'identity'], mitigationIds: ['M-INT-04', 'M-INT-05'], }, { id: 'R-INT-03', category: 'integrity', sdmGoal: 'integritaet', title: 'Backup-Korruption oder fehlerhafte Wiederherstellung', description: 'Backups personenbezogener Daten sind beschaedigt, unvollstaendig oder veraltet, sodass eine zuverlaessige Wiederherstellung nicht moeglich ist.', impactExamples: ['Datenverlust bei Wiederherstellung', 'Veraltete Datenbasis', 'Compliance-Verstoss'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K5'], applicableTo: ['database', 'cloud_storage', 'erp'], mitigationIds: ['M-AVAIL-01', 'M-AVAIL-02'], }, { id: 'R-INT-04', category: 'integrity', sdmGoal: 'integritaet', title: 'Unbemerkte Aenderung von Zugriffsrechten', description: 'Zugriffsberechtigungen werden unbefugt oder fehlerhaft geaendert, wodurch unberechtigte Personen Zugang zu personenbezogenen Daten erhalten.', impactExamples: ['Privilege Escalation', 'Unbefugter Datenzugriff'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K4'], applicableTo: ['identity', 'cloud_storage', 'api_service'], mitigationIds: ['M-INT-02', 'M-CONF-04'], }, { id: 'R-INT-05', category: 'integrity', sdmGoal: 'integritaet', title: 'Fehlende Nachvollziehbarkeit von Datenveraenderungen', description: 'Aenderungen an personenbezogenen Daten werden nicht protokolliert, sodass Manipulationen oder Fehler nicht erkannt oder nachvollzogen werden koennen.', impactExamples: ['Unmoeglich festzustellen wer/wann Daten geaendert hat', 'Audit-Versagen'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K3'], applicableTo: ['database', 'crm', 'erp', 'web_application'], mitigationIds: ['M-INT-02', 'M-TRANS-02'], }, // ========================================================================= // VERFUEGBARKEIT (Availability) // ========================================================================= { id: 'R-AVAIL-01', category: 'availability', sdmGoal: 'verfuegbarkeit', title: 'Ransomware-Angriff mit Datenverschluesselung', description: 'Schadsoftware verschluesselt personenbezogene Daten und macht sie unzugaenglich. Die Wiederherstellung erfordert entweder Loesegeldzahlung oder Backup-Restore.', impactExamples: ['Verlust des Zugangs zu eigenen Daten', 'Betriebsunterbrechung', 'Loesegeld-Erpressung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K5', 'K8'], applicableTo: ['cloud_storage', 'database', 'erp', 'web_application'], mitigationIds: ['M-AVAIL-01', 'M-AVAIL-02', 'M-AVAIL-03'], }, { id: 'R-AVAIL-02', category: 'availability', sdmGoal: 'verfuegbarkeit', title: 'Provider-Ausfall / Cloud-Service Nichtverfuegbarkeit', description: 'Der Cloud-/Hosting-Provider faellt aus, was den Zugang zu personenbezogenen Daten verhindert. Betroffene koennen ihre Rechte nicht ausueben.', impactExamples: ['Keine Auskunft moeglich', 'Vertragsverletzung', 'Geschaeftsunterbrechung'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K5', 'K9'], applicableTo: ['cloud_storage', 'web_application', 'api_service'], mitigationIds: ['M-AVAIL-04', 'M-AVAIL-05'], }, { id: 'R-AVAIL-03', category: 'availability', sdmGoal: 'verfuegbarkeit', title: 'Datenverlust durch fehlende oder ungetestete Backups', description: 'Personenbezogene Daten gehen unwiederbringlich verloren, weil keine ausreichenden Backups existieren oder Restore-Prozesse nicht getestet werden.', impactExamples: ['Unwiderruflicher Datenverlust', 'Verlust von Beweismitteln', 'Compliance-Verstoss'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K5'], applicableTo: ['database', 'cloud_storage', 'erp'], mitigationIds: ['M-AVAIL-01', 'M-AVAIL-02'], }, { id: 'R-AVAIL-04', category: 'availability', sdmGoal: 'verfuegbarkeit', title: 'DDoS-Angriff auf oeffentliche Dienste', description: 'Ein Distributed-Denial-of-Service-Angriff verhindert den Zugang zu Systemen, die personenbezogene Daten verarbeiten.', impactExamples: ['Betroffene koennen Rechte nicht ausueben', 'Geschaeftsausfall'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K5', 'K9'], applicableTo: ['web_application', 'api_service'], mitigationIds: ['M-AVAIL-06', 'M-AVAIL-04'], }, { id: 'R-AVAIL-05', category: 'availability', sdmGoal: 'verfuegbarkeit', title: 'Vendor Lock-in mit Kontrollverlust', description: 'Abhaengigkeit von einem einzelnen Anbieter erschwert oder verhindert den Zugang zu personenbezogenen Daten bei Vertragsbeendigung oder Anbieterwechsel.', impactExamples: ['Datenexport nicht moeglich', 'Erzwungene Weiternutzung', 'Datenverlust bei Kuendigung'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K9'], applicableTo: ['cloud_storage', 'erp', 'crm'], mitigationIds: ['M-AVAIL-05', 'M-INTERV-01'], }, // ========================================================================= // RECHTE & FREIHEITEN (Rights & Freedoms) // ========================================================================= { id: 'R-RIGHTS-01', category: 'rights_freedoms', sdmGoal: 'nichtverkettung', title: 'Diskriminierung durch automatisierte Verarbeitung', description: 'Automatisierte Entscheidungssysteme fuehren zu einer diskriminierenden Behandlung bestimmter Personengruppen aufgrund von Merkmalen wie Alter, Geschlecht, Herkunft oder Gesundheitszustand.', impactExamples: ['Benachteiligung bei Kreditvergabe', 'Ausschluss von Dienstleistungen', 'Ungleichbehandlung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K1', 'K2', 'K7'], applicableTo: ['ai_ml', 'scoring', 'identity'], mitigationIds: ['M-AUTO-01', 'M-AUTO-02', 'M-TRANS-03'], }, { id: 'R-RIGHTS-02', category: 'rights_freedoms', sdmGoal: 'nichtverkettung', title: 'Unzulaessiges Profiling ohne Einwilligung', description: 'Nutzerverhalten wird systematisch analysiert und zu Profilen zusammengefuehrt, ohne dass eine Rechtsgrundlage oder Einwilligung vorliegt.', impactExamples: ['Persoenlichkeitsprofile ohne Wissen', 'Gezielte Manipulation', 'Filterblase'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K1', 'K3', 'K6'], applicableTo: ['analytics', 'marketing', 'web_application', 'ai_ml'], mitigationIds: ['M-NONL-01', 'M-NONL-02', 'M-TRANS-01'], }, { id: 'R-RIGHTS-03', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Systematische Ueberwachung von Betroffenen', description: 'Betroffene werden systematisch ueberwacht (z.B. durch Standorttracking, E-Mail-Monitoring, Videoueberwachung), ohne angemessene Transparenz oder Rechtsgrundlage.', impactExamples: ['Einschuechterungseffekt (Chilling Effect)', 'Verletzung der Privatsphaere', 'Vertrauensverlust'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K3', 'K4', 'K7'], applicableTo: ['monitoring', 'hr_system', 'mobile_app'], mitigationIds: ['M-TRANS-01', 'M-TRANS-04', 'M-NONL-01'], }, { id: 'R-RIGHTS-04', category: 'rights_freedoms', sdmGoal: 'nichtverkettung', title: 'Re-Identifizierung pseudonymisierter Daten', description: 'Pseudonymisierte oder anonymisierte Daten werden durch Zusammenfuehrung mit anderen Datenquellen re-identifiziert, wodurch der Schutz der Betroffenen aufgehoben wird.', impactExamples: ['Verlust der Anonymitaet', 'Unerwuenschte Identifizierung', 'Zweckentfremdung'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K1', 'K6', 'K8'], applicableTo: ['analytics', 'ai_ml', 'research'], mitigationIds: ['M-NONL-03', 'M-NONL-04', 'M-DMIN-02'], }, { id: 'R-RIGHTS-05', category: 'rights_freedoms', sdmGoal: 'intervenierbarkeit', title: 'Hinderung bei Ausuebung von Betroffenenrechten', description: 'Betroffene werden an der Ausuebung ihrer Rechte (Auskunft, Loeschung, Berichtigung, Widerspruch) gehindert — z.B. durch fehlende Prozesse, technische Huerden oder Verzoegerungen.', impactExamples: ['Keine Loeschung moeglich', 'Verzoegerte Auskunft', 'Bussgeld gem. Art. 83'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K9'], applicableTo: ['web_application', 'crm', 'identity', 'cloud_storage'], mitigationIds: ['M-INTERV-01', 'M-INTERV-02', 'M-INTERV-03'], }, { id: 'R-RIGHTS-06', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Fehlende oder unzureichende Informationspflichten', description: 'Betroffene werden nicht oder unzureichend ueber die Verarbeitung ihrer Daten informiert (Verstoss gegen Art. 13/14 DSGVO).', impactExamples: ['Keine informierte Einwilligung moeglich', 'Vertrauensverlust', 'Bussgeld'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K9'], applicableTo: ['web_application', 'mobile_app', 'marketing'], mitigationIds: ['M-TRANS-01', 'M-TRANS-05'], }, { id: 'R-RIGHTS-07', category: 'rights_freedoms', sdmGoal: 'datenminimierung', title: 'Uebermassige Datenerhebung (Verstoss Datenminimierung)', description: 'Es werden mehr personenbezogene Daten erhoben als fuer den Verarbeitungszweck notwendig (Verstoss gegen Art. 5 Abs. 1 lit. c DSGVO).', impactExamples: ['Unnoetige Risikoexposition', 'Hoeherer Schaden bei Datenpanne'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K5'], applicableTo: ['web_application', 'mobile_app', 'crm', 'hr_system'], mitigationIds: ['M-DMIN-01', 'M-DMIN-02', 'M-DMIN-03'], }, // ========================================================================= // DRITTLANDTRANSFER // ========================================================================= { id: 'R-TRANS-01', category: 'rights_freedoms', sdmGoal: 'vertraulichkeit', title: 'Zugriff durch Drittland-Behoerden (FISA/CLOUD Act)', description: 'Behoerden eines Drittlandes (z.B. USA) greifen auf personenbezogene Daten zu, die bei einem Cloud-Provider in der EU oder im Drittland gespeichert sind.', impactExamples: ['Ueberwachung ohne Wissen', 'Kein Rechtsschutz', 'Schrems-II-Risiko'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K4', 'K5', 'K7'], applicableTo: ['cloud_storage', 'email_service', 'crm', 'analytics'], mitigationIds: ['M-TRANS-06', 'M-TRANS-07', 'M-CONF-06'], }, { id: 'R-TRANS-02', category: 'rights_freedoms', sdmGoal: 'vertraulichkeit', title: 'Unzureichende Schutzgarantien bei Drittlandtransfer', description: 'Personenbezogene Daten werden in Drittlaender uebermittelt, ohne dass angemessene Garantien (SCC, BCR, Angemessenheitsbeschluss) vorhanden sind.', impactExamples: ['Rechtswidriger Transfer', 'Bussgeld', 'Untersagung der Verarbeitung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K5', 'K7'], applicableTo: ['cloud_storage', 'email_service', 'crm', 'analytics'], mitigationIds: ['M-TRANS-06', 'M-TRANS-07', 'M-LEGAL-01'], }, { id: 'R-TRANS-03', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Intransparente Sub-Auftragsverarbeiter-Kette', description: 'Die Kette der Sub-Auftragsverarbeiter ist nicht transparent. Betroffene und Verantwortliche wissen nicht, wo ihre Daten tatsaechlich verarbeitet werden.', impactExamples: ['Unkontrollierte Datenweitergabe', 'Unbekannter Verarbeitungsort'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K5'], applicableTo: ['cloud_storage', 'crm', 'analytics'], mitigationIds: ['M-TRANS-01', 'M-LEGAL-02'], }, // ========================================================================= // AUTOMATISIERUNG / KI // ========================================================================= { id: 'R-AUTO-01', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'KI-Fehlentscheidung mit erheblicher Auswirkung', description: 'Ein KI-System trifft eine fehlerhafte automatisierte Entscheidung (z.B. Ablehnung, Sperrung, Bewertung), die erhebliche Auswirkungen auf eine betroffene Person hat.', impactExamples: ['Unrechtmaessige Ablehnung', 'Falsche Risikoeinstufung', 'Benachteiligung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K1', 'K2', 'K8'], applicableTo: ['ai_ml', 'scoring', 'hr_system'], mitigationIds: ['M-AUTO-01', 'M-AUTO-02', 'M-AUTO-03'], }, { id: 'R-AUTO-02', category: 'rights_freedoms', sdmGoal: 'nichtverkettung', title: 'Algorithmischer Bias in Trainingsdaten', description: 'KI-Modelle spiegeln Vorurteile in den Trainingsdaten wider und treffen diskriminierende Entscheidungen bezueglich geschuetzter Merkmale.', impactExamples: ['Diskriminierung nach Geschlecht/Herkunft', 'Systematische Benachteiligung'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K1', 'K2', 'K7', 'K8'], applicableTo: ['ai_ml', 'scoring'], mitigationIds: ['M-AUTO-01', 'M-AUTO-04'], }, { id: 'R-AUTO-03', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Fehlende Erklaerbarkeit automatisierter Entscheidungen', description: 'Automatisierte Entscheidungen koennen den Betroffenen nicht erklaert werden ("Black Box"), sodass der Anspruch auf aussagekraeftige Informationen (Art. 22 Abs. 3) nicht erfuellt wird.', impactExamples: ['Keine Anfechtbarkeit', 'Vertrauensverlust', 'Verstoss gegen Art. 22'], typicalLikelihood: 'high', typicalImpact: 'medium', wp248Criteria: ['K2', 'K8'], applicableTo: ['ai_ml', 'scoring'], mitigationIds: ['M-AUTO-02', 'M-TRANS-03'], }, { id: 'R-AUTO-04', category: 'rights_freedoms', sdmGoal: 'intervenierbarkeit', title: 'Fehlende menschliche Aufsicht bei KI-Entscheidungen', description: 'Automatisierte Entscheidungen werden ohne menschliche Ueberpruefung oder Interventionsmoeglichkeit getroffen, obwohl dies erforderlich waere.', impactExamples: ['Keine Korrekturmoeglichkeit', 'Eskalation von Fehlern'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K2', 'K8'], applicableTo: ['ai_ml', 'scoring', 'hr_system'], mitigationIds: ['M-AUTO-03', 'M-INTERV-04'], }, { id: 'R-AUTO-05', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Datenleck durch KI-Training mit personenbezogenen Daten', description: 'Personenbezogene Daten, die fuer das Training von KI-Modellen verwendet werden, koennen durch das Modell reproduziert oder extrahiert werden (Model Inversion, Membership Inference).', impactExamples: ['Offenlegung von Trainingsdaten', 'Re-Identifizierung'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K4', 'K8'], applicableTo: ['ai_ml'], mitigationIds: ['M-CONF-06', 'M-NONL-03', 'M-AUTO-04'], }, // ========================================================================= // ORGANISATORISCHE RISIKEN // ========================================================================= { id: 'R-ORG-01', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Fehlende oder fehlerhafte Auftragsverarbeitungsvertraege', description: 'Mit Auftragsverarbeitern existieren keine oder unzureichende Vertraege gemaess Art. 28 DSGVO, sodass Pflichten und Rechte nicht geregelt sind.', impactExamples: ['Keine Kontrolle ueber Verarbeiter', 'Bussgeld', 'Datenmissbrauch durch Verarbeiter'], typicalLikelihood: 'medium', typicalImpact: 'medium', wp248Criteria: ['K5'], applicableTo: ['cloud_storage', 'crm', 'analytics', 'email_service'], mitigationIds: ['M-LEGAL-02', 'M-LEGAL-03'], }, { id: 'R-ORG-02', category: 'rights_freedoms', sdmGoal: 'datenminimierung', title: 'Fehlende Loeschprozesse / Ueberschreitung von Aufbewahrungsfristen', description: 'Personenbezogene Daten werden laenger als notwendig gespeichert, weil keine automatischen Loeschprozesse oder Aufbewahrungsfristen definiert sind.', impactExamples: ['Unnoetige Risikoexposition', 'Verstoss gegen Speicherbegrenzung', 'Bussgeld'], typicalLikelihood: 'high', typicalImpact: 'medium', wp248Criteria: ['K5'], applicableTo: ['database', 'cloud_storage', 'crm', 'erp', 'email_service'], mitigationIds: ['M-DMIN-03', 'M-DMIN-04'], }, { id: 'R-ORG-03', category: 'integrity', sdmGoal: 'integritaet', title: 'Unzureichende Schulung/Sensibilisierung der Mitarbeiter', description: 'Mitarbeiter sind nicht ausreichend im Umgang mit personenbezogenen Daten geschult und verursachen durch Unkenntnis Datenpannen oder Verarbeitungsfehler.', impactExamples: ['Versehentliche Datenweitergabe', 'Phishing-Erfolg', 'Fehlerhafte Verarbeitung'], typicalLikelihood: 'high', typicalImpact: 'medium', wp248Criteria: ['K5', 'K7'], applicableTo: ['hr_system', 'email_service', 'crm', 'web_application'], mitigationIds: ['M-ORG-01', 'M-ORG-02'], }, { id: 'R-ORG-04', category: 'rights_freedoms', sdmGoal: 'transparenz', title: 'Fehlende Datenpannen-Erkennung und -Meldung', description: 'Datenpannen werden nicht rechtzeitig erkannt oder nicht innerhalb der 72-Stunden-Frist (Art. 33 DSGVO) an die Aufsichtsbehoerde gemeldet.', impactExamples: ['Verspaetete Meldung', 'Bussgeld', 'Verzoegerte Benachrichtigung Betroffener'], typicalLikelihood: 'medium', typicalImpact: 'high', wp248Criteria: ['K5'], applicableTo: ['web_application', 'cloud_storage', 'database', 'api_service'], mitigationIds: ['M-ORG-03', 'M-ORG-04', 'M-INT-02'], }, // ========================================================================= // BESONDERE DATENKATEGORIEN // ========================================================================= { id: 'R-SPEC-01', category: 'confidentiality', sdmGoal: 'vertraulichkeit', title: 'Kompromittierung besonderer Datenkategorien (Art. 9)', description: 'Besonders schutzwuerdige Daten (Gesundheit, Religion, Biometrie, Gewerkschaftszugehoerigkeit) werden offengelegt oder missbraucht.', impactExamples: ['Schwerwiegende Diskriminierung', 'Existenzielle Bedrohung', 'Soziale Ausgrenzung'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K4', 'K7'], applicableTo: ['hr_system', 'health_system', 'identity'], mitigationIds: ['M-CONF-06', 'M-CONF-01', 'M-CONF-04'], }, { id: 'R-SPEC-02', category: 'rights_freedoms', sdmGoal: 'intervenierbarkeit', title: 'Verarbeitung von Kinderdaten ohne angemessenen Schutz', description: 'Daten von Minderjaehrigen werden verarbeitet, ohne die besonderen Schutzmassnahmen fuer Kinder (Art. 8, EG 38 DSGVO) zu beachten.', impactExamples: ['Langzeitfolgen fuer Minderjaehrige', 'Einschraenkung der Entwicklung', 'Manipulation'], typicalLikelihood: 'low', typicalImpact: 'high', wp248Criteria: ['K4', 'K7'], applicableTo: ['web_application', 'mobile_app', 'education'], mitigationIds: ['M-LEGAL-04', 'M-DMIN-01', 'M-TRANS-01'], }, ] // ============================================================================= // HELPER FUNCTIONS // ============================================================================= export function getRisksByCategory(category: DSFARiskCategory): CatalogRisk[] { return RISK_CATALOG.filter(r => r.category === category) } export function getRisksBySDMGoal(goal: SDMGoal): CatalogRisk[] { return RISK_CATALOG.filter(r => r.sdmGoal === goal) } export function getRisksByWP248Criterion(criterionCode: string): CatalogRisk[] { return RISK_CATALOG.filter(r => r.wp248Criteria.includes(criterionCode)) } export function getRisksByComponent(component: string): CatalogRisk[] { return RISK_CATALOG.filter(r => r.applicableTo.includes(component)) } export function getCatalogRiskById(id: string): CatalogRisk | undefined { return RISK_CATALOG.find(r => r.id === id) } export const RISK_CATEGORY_LABELS: Record = { confidentiality: 'Vertraulichkeit', integrity: 'Integritaet', availability: 'Verfuegbarkeit', rights_freedoms: 'Rechte & Freiheiten', } export const COMPONENT_FAMILY_LABELS: Record = { identity: 'Identitaet & Zugang', cloud_storage: 'Cloud-Speicher', web_application: 'Web-Anwendung', api_service: 'API-Service', email_service: 'E-Mail-Dienst', mobile_app: 'Mobile App', database: 'Datenbank', crm: 'CRM-System', erp: 'ERP-System', analytics: 'Analyse/Tracking', marketing: 'Marketing', ai_ml: 'KI / Machine Learning', scoring: 'Scoring / Bewertung', hr_system: 'HR-System', health_system: 'Gesundheitssystem', monitoring: 'Ueberwachungssystem', support_system: 'Support-System', education: 'Bildungsplattform', research: 'Forschung', }