{
    "schema": "https://saferpage.de/schemas/operator-action-plan.v1",
    "generated_at": "2026-06-08T21:05:19+00:00",
    "domain": "ihk.de",
    "scan": {
        "id": "c484528e-34bf-4dcf-980c-d3c97e9a9b7d",
        "checked_at": "2026-06-08 07:47:27.510899+02"
    },
    "summary": "ihk.de Betreiber-Board: 8 Ticket(s), 8 sofort, 12 priorisierte Guide(s). Nach jeder Umsetzung erneut scannen; bei hoher Priorität innerhalb von 7 Tagen.",
    "status": "sofort handeln",
    "score": 4,
    "metrics": {
        "ticket_count": 8,
        "open_count": 8,
        "urgent_count": 8,
        "guide_count": 12,
        "team_count": 3,
        "scan_score": 0,
        "target_score": 40,
        "gap_to_target": 40
    },
    "links": {
        "report": "https://saferpage.de/ihk.de",
        "operator_board": "https://saferpage.de/betreiber/ihk.de",
        "domain_verification": "https://saferpage.de/betreiber/ihk.de/verifizierung",
        "release_gate": "https://saferpage.de/release-gate/ihk.de",
        "json": "https://saferpage.de/betreiber/ihk.de/massnahmen",
        "csv": "https://saferpage.de/betreiber/ihk.de/massnahmen-csv",
        "tickets_markdown": "https://saferpage.de/betreiber/ihk.de/tickets",
        "consent_evidence": "https://saferpage.de/consent/ihk.de/nachweise",
        "vendor_service_cards": "https://saferpage.de/anbieter/ihk.de/servicekarten",
        "trust_center": "https://saferpage.de/trust/ihk.de",
        "guides": "https://saferpage.de/guides",
        "rescan": "https://saferpage.de/"
    },
    "tickets": [
        {
            "ticket_id": "SP-001",
            "title": "CSP erlaubt unsafe-inline für Skripte",
            "area": "BSI/Security-Header",
            "owner": "Technik",
            "team": "Developer/Ops",
            "priority": "hoch",
            "priority_score": 82,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Inline-Skripte über Nonces oder Hashes statt unsafe-inline freigeben.",
            "acceptance_criterion": "Security-Header/TLS-Check ist im Wiederholungsscan ohne kritischen Befund.",
            "evidence": "Inline-Skripte über Nonces oder Hashes statt unsafe-inline freigeben.",
            "guide_url": "/guides/security-header-setzen"
        },
        {
            "ticket_id": "SP-002",
            "title": "CSP erlaubt eval-nahe Skriptausführung",
            "area": "BSI/Security-Header",
            "owner": "Technik",
            "team": "Developer/Ops",
            "priority": "hoch",
            "priority_score": 82,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "unsafe-eval aus script-src entfernen oder betroffene Bibliotheken ersetzen.",
            "acceptance_criterion": "Security-Header/TLS-Check ist im Wiederholungsscan ohne kritischen Befund.",
            "evidence": "unsafe-eval aus script-src entfernen oder betroffene Bibliotheken ersetzen.",
            "guide_url": "/guides/security-header-setzen"
        },
        {
            "ticket_id": "SP-003",
            "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
            "area": "DSGVO/Art. 13 Transparenz",
            "owner": "Datenschutz",
            "team": "Legal/Datenschutz",
            "priority": "hoch",
            "priority_score": 82,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Datenschutzerklärung sollte zentrale Pflichtinformationen vollständig abdecken.",
            "acceptance_criterion": "Datenschutzerklärung nennt beobachtete Anbieter, Zwecke, Rechtsgrundlagen und Speicherfristen.",
            "evidence": "Datenschutzerklärung sollte zentrale Pflichtinformationen vollständig abdecken.",
            "guide_url": "/guides/datenschutzerklaerung-verbessern"
        },
        {
            "ticket_id": "SP-004",
            "title": "Sensible URL-Schlüssel im Drittanbieter-Kontext",
            "area": "PII-Datenleck",
            "owner": "Datenschutz",
            "team": "Legal/Datenschutz",
            "priority": "hoch",
            "priority_score": 82,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Sensible URL-Parameter aus Drittanbieter-Requests und Referrern entfernen.",
            "acceptance_criterion": "Drittanbieter ist dokumentiert, rechtlich bewertet und im Scan als erwarteter Dienst nachvollziehbar.",
            "evidence": "Sensible URL-Parameter aus Drittanbieter-Requests und Referrern entfernen.",
            "guide_url": "/guides/referrer-und-url-leaks-vermeiden"
        },
        {
            "ticket_id": "SP-005",
            "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
            "area": "TDDDG/ePrivacy",
            "owner": "Datenschutz/Marketing",
            "team": "GTM/CMP",
            "priority": "hoch",
            "priority_score": 78,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Nicht notwendige Cookies vor Einwilligung prüfen und blockieren.",
            "acceptance_criterion": "Wiederholungsscan zeigt keine nicht erforderlichen Cookies/Tags vor Einwilligung oder nach Ablehnung.",
            "evidence": "Nicht notwendige Cookies vor Einwilligung prüfen und blockieren.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "ticket_id": "SP-006",
            "title": "Cookie-Hinweis ohne klare Ablehnen-Option",
            "area": "TDDDG/ePrivacy",
            "owner": "Datenschutz/Marketing",
            "team": "GTM/CMP",
            "priority": "hoch",
            "priority_score": 78,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Ablehnen muss gleichwertig erreichbar sein.",
            "acceptance_criterion": "Wiederholungsscan zeigt keine nicht erforderlichen Cookies/Tags vor Einwilligung oder nach Ablehnung.",
            "evidence": "Ablehnen muss gleichwertig erreichbar sein.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "ticket_id": "SP-007",
            "title": "Consent wirkt wie Nur-Akzeptieren",
            "area": "TDDDG/ePrivacy",
            "owner": "Datenschutz/Marketing",
            "team": "GTM/CMP",
            "priority": "hoch",
            "priority_score": 78,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Consent darf nicht wie reine Akzeptieren-Abfrage wirken.",
            "acceptance_criterion": "Wiederholungsscan zeigt keine nicht erforderlichen Cookies/Tags vor Einwilligung oder nach Ablehnung.",
            "evidence": "Consent darf nicht wie reine Akzeptieren-Abfrage wirken.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "ticket_id": "SP-008",
            "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
            "area": "Tracking-Pixel",
            "owner": "Datenschutz/Marketing",
            "team": "GTM/CMP",
            "priority": "hoch",
            "priority_score": 78,
            "sla": "7_tage",
            "status": "sofort_starten",
            "next_step": "Pixel- und Bild-Tracking vor Einwilligung prüfen und begrenzen.",
            "acceptance_criterion": "Befund ist im Wiederholungsscan behoben oder fachlich dokumentiert begründet.",
            "evidence": "Pixel- und Bild-Tracking vor Einwilligung prüfen und begrenzen.",
            "guide_url": "/guides/tracking-pixel-und-beacons-begrenzen"
        }
    ],
    "tasks": [
        {
            "id": "",
            "title": "CSP erlaubt unsafe-inline für Skripte",
            "area": "BSI/Security-Header",
            "priority": "hoch",
            "priority_score": 82,
            "owner": "Technik",
            "team_route": "Developer/Ops",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel",
            "status": "offen",
            "action": "Inline-Skripte über Nonces oder Hashes statt unsafe-inline freigeben.",
            "evidence": "",
            "guide_url": "/guides/security-header-setzen"
        },
        {
            "id": "",
            "title": "CSP erlaubt eval-nahe Skriptausführung",
            "area": "BSI/Security-Header",
            "priority": "hoch",
            "priority_score": 82,
            "owner": "Technik",
            "team_route": "Developer/Ops",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel",
            "status": "offen",
            "action": "unsafe-eval aus script-src entfernen oder betroffene Bibliotheken ersetzen.",
            "evidence": "",
            "guide_url": "/guides/security-header-setzen"
        },
        {
            "id": "",
            "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
            "area": "DSGVO/Art. 13 Transparenz",
            "priority": "hoch",
            "priority_score": 82,
            "owner": "Datenschutz",
            "team_route": "Legal/Datenschutz",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "niedrig bis mittel",
            "status": "offen",
            "action": "Datenschutzerklärung sollte zentrale Pflichtinformationen vollständig abdecken.",
            "evidence": "",
            "guide_url": "/guides/datenschutzerklaerung-verbessern"
        },
        {
            "id": "",
            "title": "Sensible URL-Schlüssel im Drittanbieter-Kontext",
            "area": "PII-Datenleck",
            "priority": "hoch",
            "priority_score": 82,
            "owner": "Datenschutz",
            "team_route": "Legal/Datenschutz",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel",
            "status": "offen",
            "action": "Sensible URL-Parameter aus Drittanbieter-Requests und Referrern entfernen.",
            "evidence": "",
            "guide_url": "/guides/referrer-und-url-leaks-vermeiden"
        },
        {
            "id": "",
            "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
            "area": "TDDDG/ePrivacy",
            "priority": "hoch",
            "priority_score": 78,
            "owner": "Datenschutz/Marketing",
            "team_route": "GTM/CMP",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel bis hoch",
            "status": "offen",
            "action": "Nicht notwendige Cookies vor Einwilligung prüfen und blockieren.",
            "evidence": "",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "",
            "title": "Cookie-Hinweis ohne klare Ablehnen-Option",
            "area": "TDDDG/ePrivacy",
            "priority": "hoch",
            "priority_score": 78,
            "owner": "Datenschutz/Marketing",
            "team_route": "GTM/CMP",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel bis hoch",
            "status": "offen",
            "action": "Ablehnen muss gleichwertig erreichbar sein.",
            "evidence": "",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "",
            "title": "Consent wirkt wie Nur-Akzeptieren",
            "area": "TDDDG/ePrivacy",
            "priority": "hoch",
            "priority_score": 78,
            "owner": "Datenschutz/Marketing",
            "team_route": "GTM/CMP",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel bis hoch",
            "status": "offen",
            "action": "Consent darf nicht wie reine Akzeptieren-Abfrage wirken.",
            "evidence": "",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "",
            "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
            "area": "Tracking-Pixel",
            "priority": "hoch",
            "priority_score": 78,
            "owner": "Datenschutz/Marketing",
            "team_route": "GTM/CMP",
            "deadline": "innerhalb von 7 Tagen",
            "effort": "mittel bis hoch",
            "status": "offen",
            "action": "Pixel- und Bild-Tracking vor Einwilligung prüfen und begrenzen.",
            "evidence": "",
            "guide_url": "/guides/tracking-pixel-und-beacons-begrenzen"
        }
    ],
    "guide_playbook": [
        {
            "slug": "tracking-und-consent-reparieren",
            "title": "Tracking Und Consent Reparieren",
            "guide_url": "/guides/tracking-und-consent-reparieren",
            "area": "Consent & Tracking",
            "owner": "Marketing/IT/Datenschutz",
            "effort": "mittel",
            "retest": "Erstaufruf, Ablehnen, Akzeptieren und GPC getrennt scannen.",
            "evidence_required": "Consent-Screenshot, Cookie-Tabelle, Request-Liste, CMP-Konfiguration.",
            "affected_count": 10,
            "task_count": 3,
            "ticket_count": 3,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "pre_consent_nonessential_cookies",
                    "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
                    "detail": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
                    "source": "finding"
                },
                {
                    "id": "consent_no_reject_option",
                    "title": "Cookie-Hinweis ohne klare Ablehnen-Option",
                    "detail": "Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren.",
                    "source": "finding"
                },
                {
                    "id": "consent_accept_only",
                    "title": "Consent wirkt wie Nur-Akzeptieren",
                    "detail": "Cookie-Auswahl und Ablehnen-Option sichtbar anbieten.",
                    "source": "finding"
                },
                {
                    "id": "pre_consent_nonessential_cookies",
                    "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
                    "detail": "Nicht notwendige Cookies vor Einwilligung prüfen und blockieren.",
                    "source": "task"
                },
                {
                    "id": "consent_no_reject_option",
                    "title": "Cookie-Hinweis ohne klare Ablehnen-Option",
                    "detail": "Ablehnen muss gleichwertig erreichbar sein.",
                    "source": "task"
                }
            ]
        },
        {
            "slug": "datenschutzerklaerung-verbessern",
            "title": "Datenschutzerklaerung Verbessern",
            "guide_url": "/guides/datenschutzerklaerung-verbessern",
            "area": "Transparenz",
            "owner": "Datenschutz/Content",
            "effort": "mittel",
            "retest": "Datenschutzhinweis gegen Cookies, Anbieter, Formulare und Zwecke abgleichen.",
            "evidence_required": "Versionierter Datenschutzhinweis, Änderungsdatum, Freigabeprotokoll.",
            "affected_count": 5,
            "task_count": 1,
            "ticket_count": 1,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "privacy_policy_required_items_missing",
                    "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                    "detail": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.",
                    "source": "finding"
                },
                {
                    "id": "privacy_policy_update_date_missing",
                    "title": "Stand der Datenschutzerklärung nicht klar erkennbar",
                    "detail": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.",
                    "source": "finding"
                },
                {
                    "id": "privacy_policy_dpo_contact_missing",
                    "title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
                    "detail": "Nennen Sie einen Datenschutzkontakt oder erklären Sie nachvollziehbar, wie Datenschutzanfragen gestellt werden können.",
                    "source": "finding"
                },
                {
                    "id": "privacy_policy_required_items_missing",
                    "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                    "detail": "Datenschutzerklärung sollte zentrale Pflichtinformationen vollständig abdecken.",
                    "source": "task"
                },
                {
                    "id": "SP-003",
                    "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                    "detail": "Datenschutzerklärung sollte zentrale Pflichtinformationen vollständig abdecken.",
                    "source": "ticket"
                }
            ]
        },
        {
            "slug": "referrer-und-url-leaks-vermeiden",
            "title": "Referrer Und Url Leaks Vermeiden",
            "guide_url": "/guides/referrer-und-url-leaks-vermeiden",
            "area": "Referrer & URL Hygiene",
            "owner": "Webentwicklung/IT",
            "effort": "klein",
            "retest": "Referrer-Header und Query-Parameter in Request-Samples kontrollieren.",
            "evidence_required": "Referrer-Policy, Tag-Konfiguration, URL-Parameter-Regel.",
            "affected_count": 5,
            "task_count": 1,
            "ticket_count": 1,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "third_party_sensitive_query_leak",
                    "title": "Sensible URL-Schlüssel im Drittanbieter-Kontext",
                    "detail": "Sensible Parameter wie E-Mail, Name, Token oder Session-IDs aus URLs entfernen und Drittanbieter-Tags auf solchen Seiten blockieren.",
                    "source": "finding"
                },
                {
                    "id": "third_party_page_url_parameter",
                    "title": "Seiten-URL wird in Drittanbieter-Requests übertragen",
                    "detail": "Tracking-/Tag-Parameter für Anbieter wie ihk24.epccm19.com, etracker.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden.",
                    "source": "finding"
                },
                {
                    "id": "third_party_sensitive_query_leak",
                    "title": "Sensible URL-Schlüssel im Drittanbieter-Kontext",
                    "detail": "Sensible URL-Parameter aus Drittanbieter-Requests und Referrern entfernen.",
                    "source": "task"
                },
                {
                    "id": "SP-004",
                    "title": "Sensible URL-Schlüssel im Drittanbieter-Kontext",
                    "detail": "Sensible URL-Parameter aus Drittanbieter-Requests und Referrern entfernen.",
                    "source": "ticket"
                },
                {
                    "id": "referrer_url_leaks",
                    "title": "Referrer & URL-Leaks",
                    "detail": "Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren.",
                    "source": "module"
                }
            ]
        },
        {
            "slug": "tracking-pixel-und-beacons-begrenzen",
            "title": "Tracking Pixel Und Beacons Begrenzen",
            "guide_url": "/guides/tracking-pixel-und-beacons-begrenzen",
            "area": "Pixel & Beacons",
            "owner": "Marketing/IT",
            "effort": "mittel",
            "retest": "Pixel-, ping-, beacon- und keepalive-Ziele erneut exportieren.",
            "evidence_required": "Tag-Manager-Regeln, Zweckliste, Consent-Test, Request-Samples.",
            "affected_count": 3,
            "task_count": 1,
            "ticket_count": 1,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "tracking_pixel_detected",
                    "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
                    "detail": "Pixel von ihk24.epccm19.com erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen.",
                    "source": "finding"
                },
                {
                    "id": "tracking_pixel_detected",
                    "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
                    "detail": "Pixel- und Bild-Tracking vor Einwilligung prüfen und begrenzen.",
                    "source": "task"
                },
                {
                    "id": "SP-008",
                    "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
                    "detail": "Pixel- und Bild-Tracking vor Einwilligung prüfen und begrenzen.",
                    "source": "ticket"
                }
            ]
        },
        {
            "slug": "cookies-sicher-konfigurieren",
            "title": "Cookies Sicher Konfigurieren",
            "guide_url": "/guides/cookies-sicher-konfigurieren",
            "area": "Website Datenschutz",
            "owner": "Betreiber/Datenschutz/IT",
            "effort": "mittel",
            "retest": "Betroffene Seite erneut mit SaferPage prüfen.",
            "evidence_required": "Änderungsnachweis, Screenshot, Exportpaket und interne Freigabe.",
            "affected_count": 2,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "cookie_missing_secure",
                    "title": "Cookie ohne Secure-Flag",
                    "detail": "Cookies über HTTPS mit Secure-Flag setzen.",
                    "source": "finding"
                },
                {
                    "id": "cookie_missing_samesite",
                    "title": "Cookie ohne SameSite-Attribut",
                    "detail": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
                    "source": "finding"
                }
            ]
        },
        {
            "slug": "seo-spam-und-cloaking-bereinigen",
            "title": "Seo Spam Und Cloaking Bereinigen",
            "guide_url": "/guides/seo-spam-und-cloaking-bereinigen",
            "area": "Trust & Content Integrity",
            "owner": "Webbetrieb/SEO/Security",
            "effort": "hoch",
            "retest": "Normaler Browser, SaferPage-Crawler und Suchmaschinenansicht vergleichen.",
            "evidence_required": "Bereinigter Code, Malware-/Plugin-Prüfung, Search-Console-Status.",
            "affected_count": 2,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "external_canonical",
                    "title": "Canonical zeigt auf fremde Domain",
                    "detail": "Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden.",
                    "source": "finding"
                },
                {
                    "id": "seo_integrity",
                    "title": "SEO-Integrität & Cloaking",
                    "detail": "Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen.",
                    "source": "module"
                }
            ]
        },
        {
            "slug": "session-replay-und-fingerprinting-pruefen",
            "title": "Session Replay Und Fingerprinting Pruefen",
            "guide_url": "/guides/session-replay-und-fingerprinting-pruefen",
            "area": "Behavior Tracking",
            "owner": "Marketing/Datenschutz",
            "effort": "hoch",
            "retest": "Replay-/Fingerprinting-Skripte nach Ablehnen und GPC erneut prüfen.",
            "evidence_required": "Maskierungsregeln, Zweck, Consent-Kategorie, Anbieterfreigabe.",
            "affected_count": 1,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 100,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "browser_keystroke_listener_signals",
                    "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                    "detail": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
                    "source": "finding"
                }
            ]
        },
        {
            "slug": "security-header-setzen",
            "title": "Security Header Setzen",
            "guide_url": "/guides/security-header-setzen",
            "area": "Web Security",
            "owner": "IT/Security",
            "effort": "mittel",
            "retest": "Header, TLS, CSP und Referrer-Policy nach Deployment erneut scannen.",
            "evidence_required": "Nginx/Apache/CDN-Konfiguration, Header-Export, Rollback-Plan.",
            "affected_count": 15,
            "task_count": 2,
            "ticket_count": 2,
            "priority_score": 96,
            "status": "sofort",
            "sample_findings": [
                {
                    "id": "csp_unsafe_inline",
                    "title": "CSP erlaubt unsafe-inline für Skripte",
                    "detail": "Inline-Skripte über Nonces oder Hashes freigeben und unsafe-inline aus script-src entfernen.",
                    "source": "finding"
                },
                {
                    "id": "csp_unsafe_eval",
                    "title": "CSP erlaubt eval-nahe Skriptausführung",
                    "detail": "unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen.",
                    "source": "finding"
                },
                {
                    "id": "csp_permissive_script_sources",
                    "title": "CSP erlaubt sehr breite Skriptquellen",
                    "detail": "script-src auf konkrete HTTPS-Hosts, Nonces oder Hashes begrenzen.",
                    "source": "finding"
                },
                {
                    "id": "csp_missing_frame_ancestors",
                    "title": "Kein CSP-frame-ancestors oder X-Frame-Options",
                    "detail": "frame-ancestors 'none' oder 'self' setzen, alternativ X-Frame-Options als Basisschutz nutzen.",
                    "source": "finding"
                },
                {
                    "id": "csp_missing_object_src",
                    "title": "CSP ohne object-src",
                    "detail": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.",
                    "source": "finding"
                }
            ]
        },
        {
            "slug": "externe-skripte-und-sri-absichern",
            "title": "Externe Skripte Und Sri Absichern",
            "guide_url": "/guides/externe-skripte-und-sri-absichern",
            "area": "Browser Supply Chain",
            "owner": "IT/Webentwicklung",
            "effort": "mittel",
            "retest": "Externe Skripte, SRI, CSP und Consent-Auslösung erneut prüfen.",
            "evidence_required": "Skriptinventar, SRI-Hashes, CSP-Report-Only-Test.",
            "affected_count": 1,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 84,
            "status": "sprint",
            "sample_findings": [
                {
                    "id": "external_script_without_sri",
                    "title": "Externe Skripte ohne Subresource Integrity",
                    "detail": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.",
                    "source": "finding"
                }
            ]
        },
        {
            "slug": "drittanbieter-datenschutz-erklaeren",
            "title": "Drittanbieter Datenschutz Erklaeren",
            "guide_url": "/guides/drittanbieter-datenschutz-erklaeren",
            "area": "Drittanbieter",
            "owner": "Legal/Vendor Owner",
            "effort": "mittel",
            "retest": "Drittanbieter-Liste gegen neue Requests und Cookies abgleichen.",
            "evidence_required": "Anbieterregister, AVV/DPA-Status, Transferbewertung, Datenschutzhinweis.",
            "affected_count": 1,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 52,
            "status": "einplanen",
            "sample_findings": [
                {
                    "id": "browser_evidence",
                    "title": "Browser-Nachweis",
                    "detail": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.",
                    "source": "module"
                }
            ]
        },
        {
            "slug": "drittlandtransfer-und-anbieter-pruefen",
            "title": "Drittlandtransfer Und Anbieter Pruefen",
            "guide_url": "/guides/drittlandtransfer-und-anbieter-pruefen",
            "area": "Vendor & Transfer",
            "owner": "Legal/Datenschutz",
            "effort": "hoch",
            "retest": "US-/Drittlandhosts, Anbieterrolle und Transfergrundlage erneut prüfen.",
            "evidence_required": "DPA/AVV, SCC/TIA, Subprozessorenliste, TOM-Anlage.",
            "affected_count": 1,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 35,
            "status": "backlog",
            "sample_findings": [
                {
                    "id": "unknown_vendor_jurisdiction",
                    "title": "Anbieter-Jurisdiktion nicht klar ableitbar",
                    "detail": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.",
                    "source": "finding"
                }
            ]
        },
        {
            "slug": "datenschutz-webseiten-pruefkatalog",
            "title": "Datenschutz Webseiten Pruefkatalog",
            "guide_url": "/guides/datenschutz-webseiten-pruefkatalog",
            "area": "Programmsteuerung",
            "owner": "Programm-Owner/Datenschutz",
            "effort": "hoch",
            "retest": "Gesamten Scan nach Umsetzung der priorisierten Guides wiederholen.",
            "evidence_required": "Prioritätenliste, Owner, Exportpaket, Re-Scan und Freigabe.",
            "affected_count": 1,
            "task_count": 0,
            "ticket_count": 0,
            "priority_score": 20,
            "status": "backlog",
            "sample_findings": [
                {
                    "id": "site_coverage",
                    "title": "Seitenabdeckung & Crawl",
                    "detail": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.",
                    "source": "module"
                }
            ]
        }
    ],
    "team_routing": {
        "GTM/CMP": 4,
        "Developer/Ops": 2,
        "Legal/Datenschutz": 2
    },
    "retest_workflow": {
        "capture": "Scan-ID, Screenshot, Cookie-/Request-Zeilen und betroffene Guide-Links sichern.",
        "implementation": "Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Anbieterfreigabe oder Textversion dokumentieren.",
        "rescan": "Domain erneut prüfen und Ticket nur schließen, wenn SaferPage-Befund behoben oder begründet ist.",
        "archive": "JSON/CSV/XLSX oder ZIP-Nachweispaket im Trust Center ablegen und intern freigeben."
    },
    "disclaimer": "Automatisch aus SaferPage-Evidenz abgeleiteter Betreiber-Arbeitsplan. Umsetzung, interne Verantwortlichkeiten und rechtliche Freigabe liegen beim Website-Betreiber."
}