{
    "schema": "https://saferpage.de/schemas/operator-fix-guide-package.v1",
    "generated_at": "2026-06-19T23:10:59+00:00",
    "domain": "arbeit.wfbb.de",
    "available": true,
    "scan": {
        "id": "43659f7c-2d79-41e7-996d-58c2051c765b",
        "checked_at": "2026-06-19 21:34:47.632583+02"
    },
    "summary": "arbeit.wfbb.de: 6 priorisierte Fixpfad-Gruppe(n) aus 14 Befund(en).",
    "metrics": {
        "issue_count": 14,
        "guide_count": 6,
        "high_priority_count": 2,
        "medium_priority_count": 2,
        "tracker_task_count": 1,
        "remediation_ticket_count": 15,
        "remediation_ticket_fingerprint_count": 15,
        "remediation_ticket_duplicate_count": 0,
        "high_ticket_count": 2,
        "acceptance_count": 18,
        "source_count": 13,
        "platform_playbook_count": 1,
        "platform_playbook_step_count": 4,
        "platform_playbook_acceptance_count": 3,
        "platform_playbook_boundary_count": 1,
        "platform_playbook_evidence_url_count": 1,
        "quality_review_row_count": 6,
        "quality_review_acceptance_count": 6,
        "quality_review_boundary_count": 6,
        "quality_review_evidence_url_count": 6,
        "quality_review_guide_url_count": 6,
        "quality_review_form_count": 4,
        "quality_review_form_page_count": 4,
        "evidence_first_measured_count": 4,
        "evidence_first_operator_context_count": 4,
        "evidence_first_do_not_claim_count": 4
    },
    "guide_streams": [
        {
            "guide_slug": "ssl-zertifikat-reparieren",
            "guide_url": "https://saferpage.de/guides/ssl-zertifikat-reparieren",
            "title": "SSL-Zertifikat reparieren",
            "intro": "Beheben Sie abgelaufene, falsche oder unvollständige HTTPS-Zertifikate, damit Nutzer keine Browserwarnung sehen.",
            "priority": "hoch",
            "impact_score": 86,
            "phase": "0-7 Tage",
            "area": "TLS",
            "owner": "IT/Webbetrieb",
            "effort": "klein",
            "issue_count": 1,
            "issues": [
                {
                    "id": "certificate_expires_soon",
                    "area": "tls",
                    "title": "TLS-Zertifikat läuft bald ab",
                    "priority": "hoch",
                    "impact_score": 86,
                    "evidence": "",
                    "operator_action": "Zertifikat rechtzeitig erneuern; bei weniger als 7 Tagen sofort prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "ssl-zertifikat-reparieren",
                    "guide_url": "https://saferpage.de/guides/ssl-zertifikat-reparieren",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Prüfen Sie, ob das Zertifikat exakt zur Domain und zu allen verwendeten Hostnamen passt, zum Beispiel example.de und www.example.de.",
                "Erneuern Sie abgelaufene Zertifikate und aktivieren Sie automatische Erneuerung, etwa über certbot oder den Hosting-Anbieter.",
                "Stellen Sie sicher, dass der Webserver das richtige Zertifikat im passenden Nginx-/Apache-vHost ausliefert.",
                "Deaktivieren Sie alte TLS-Versionen und testen Sie danach Domain und www-Variante erneut."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "IT/Webbetrieb",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "IT/Webbetrieb",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Domain und www-Variante per HTTPS erneut prüfen.",
                    "evidence": "Zertifikatskette, Erneuerungsjob, Nginx-/CDN-vHost."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Domain und www-Variante per HTTPS erneut prüfen.",
            "sources": [
                {
                    "label": "BSI Mindeststandard TLS 2.3",
                    "url": "https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Mindeststandards/Mindeststandard_BSI_TLS_Version_2_3.pdf?__blob=publicationFile&v=4"
                },
                {
                    "label": "BSI IT-Grundschutz APP.3.2 Webserver",
                    "url": "https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/IT-GS-Kompendium_Einzel_PDFs_2023/06_APP_Anwendungen/APP_3_2_Webserver_Edition_2023.pdf?__blob=publicationFile&v=3"
                }
            ]
        },
        {
            "guide_slug": "barrierefreiheit-cookie-banner-formulare",
            "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
            "title": "Barrierefreiheit bei Bannern und Formularen prüfen",
            "intro": "Cookie-Banner und Formulare sind typische Bruchstellen fuer Datenschutz, Usability und Barrierefreiheit. SaferPage kann sichtbare Labels, Button-Namen, Viewport-Signale und einfache WCAG-/BFSG-nahe Hinweise liefern; eine vollstaendige Barrierefreiheitspruefung braucht zusaetzlich Tastatur-, Screenreader- und manuelle Flow-Tests.",
            "priority": "hoch",
            "impact_score": 86,
            "phase": "0-7 Tage",
            "area": "Usability & BITV",
            "owner": "UX/Content/IT",
            "effort": "mittel",
            "issue_count": 4,
            "issues": [
                {
                    "id": "button_name_missing",
                    "area": "accessibility",
                    "title": "Buttons ohne erkennbaren Namen",
                    "priority": "hoch",
                    "impact_score": 86,
                    "evidence": "",
                    "operator_action": "Buttons mit sichtbarem Text oder aria-label beschriften.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "barrierefreiheit-cookie-banner-formulare",
                    "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "source": "finding"
                },
                {
                    "id": "module_accessibility_usability",
                    "area": "Audit-Modul",
                    "title": "Barrierefreiheit & Usability",
                    "priority": "mittel",
                    "impact_score": 44,
                    "evidence": "5 Bild(er) ohne alt, 0 Formularfeld(er) ohne Beschriftung, 4 Button(s) ohne Namen.",
                    "operator_action": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "barrierefreiheit-cookie-banner-formulare",
                    "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "source": "audit_module"
                },
                {
                    "id": "accessibility_gap",
                    "area": "Barrierefreiheit",
                    "title": "Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
                    "priority": "mittel",
                    "impact_score": 44,
                    "evidence": "15 Bild(er), 1 Formularfeld(er), 21 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.",
                    "operator_action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
                    "owner": "UX/IT",
                    "guide_slug": "barrierefreiheit-cookie-banner-formulare",
                    "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "source": "accessibility"
                },
                {
                    "id": "image_alt_missing",
                    "area": "accessibility",
                    "title": "Bilder ohne Alternativtext",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "barrierefreiheit-cookie-banner-formulare",
                    "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Pruefen Sie Cookie-Banner mit Tastatur, Screenreader und Mobilgerät: Fokus muss im Dialog nachvollziehbar sein, Bedienelemente brauchen Namen und Ablehnen/Akzeptieren/Einstellungen muessen erreichbar bleiben.",
                "Blockieren Sie Datenschutz, Impressum, Kontakt und Hauptinhalt nicht dauerhaft durch Banner, Modals, Paywalls oder Sticky-Elemente.",
                "Versehen Sie Formularfelder mit sichtbaren Labels, programmatischen Namen, Fehlermeldungen, Hilfetexten und passenden Autocomplete-Attributen.",
                "Pruefen Sie Kontrast, Fokuszustand, Tab-Reihenfolge, Tastaturfalle, Skip-Link, Landmark-Struktur, Button-Namen und Linktexte.",
                "Testen Sie Fehlerszenarien: Pflichtfelder, falsches Format, Captcha, Datei-Upload, Newsletter-Double-Opt-in, Login und Zahlungs-/Checkout-Schritte.",
                "Erfassen Sie betroffene Templates, Komponenten, Consent-Zustaende, Viewport-Groessen, Re-Scan-ID und manuelle Pruefnotizen als Betreiber-Nachweis.",
                "Fuehren Sie nach Theme-, CMP-, Formular-, Plugin- oder Checkout-Aenderungen einen Re-Scan plus Tastatur-/Screenreader-Stichprobe durch."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "UX/Content/IT",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "UX/Content/IT",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Tastatur, Screenreader, Kontrast und Mobilansicht manuell prüfen.",
                    "evidence": "Testprotokoll, Screenshots, bekannte Einschränkungen."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Tastatur, Screenreader, Kontrast und Mobilansicht manuell prüfen.",
            "sources": [
                {
                    "label": "BITV 2.0",
                    "url": "https://www.gesetze-im-internet.de/bitv_2_0/"
                },
                {
                    "label": "BFIT Bund",
                    "url": "https://www.bfit-bund.de/DE/Home/home_node.html"
                },
                {
                    "label": "Google Search Central: Page Experience",
                    "url": "https://developers.google.com/search/docs/appearance/page-experience"
                }
            ]
        },
        {
            "guide_slug": "session-replay-und-fingerprinting-pruefen",
            "guide_url": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
            "title": "Session-Replay und Fingerprinting prüfen",
            "intro": "Fingerprinting, Session-Replay und Eingabeaufzeichnung sind besonders erklärungsbedürftig, weil Nutzer sie beim Seitenbesuch kaum erkennen können.",
            "priority": "niedrig",
            "impact_score": 55,
            "phase": "quartalsweise",
            "area": "Behavior Tracking",
            "owner": "Marketing/Datenschutz",
            "effort": "hoch",
            "issue_count": 1,
            "issues": [
                {
                    "id": "browser_keystroke_listener_signals",
                    "area": "privacy",
                    "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "session-replay-und-fingerprinting-pruefen",
                    "guide_url": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Laden Sie Session-Replay-, Heatmap- und Verhaltenstracking-Skripte erst nach aktiver Einwilligung.",
                "Maskieren Sie Formularfelder, Suchfelder, Checkout, Login und Freitextbereiche konsequent; sensible Eingaben dürfen nicht in Replay-Daten landen.",
                "Prüfen Sie Canvas-, WebGL- und AudioContext-Zugriffe: entfernen Sie unnötige Bibliotheken oder dokumentieren Sie den konkreten Zweck.",
                "Nennen Sie Anbieter, Zwecke, Speicherdauer, Empfänger und Widerruf verständlich in Datenschutzerklärung und Consent-Oberfläche.",
                "Testen Sie Ablehnen und GPC separat: nach Ablehnung sollten Replay- und Fingerprinting-Skripte nicht neu geladen werden."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "Marketing/Datenschutz",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "Marketing/Datenschutz",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Replay-/Fingerprinting-Skripte nach Ablehnen und GPC erneut prüfen.",
                    "evidence": "Maskierungsregeln, Zweck, Consent-Kategorie, Anbieterfreigabe."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Replay-/Fingerprinting-Skripte nach Ablehnen und GPC erneut prüfen.",
            "sources": [
                {
                    "label": "DSK Orientierungshilfe Digitale Dienste",
                    "url": "https://www.datenschutzkonferenz-online.de/media/oh/OH_Digitale_Dienste.pdf"
                },
                {
                    "label": "BfDI: Cookies und Tracking-Technologien",
                    "url": "https://www.bfdi.bund.de/DE/Buerger/Inhalte/Telemedien/Cookies.html"
                },
                {
                    "label": "EDPB Guidelines 05/2020 Consent",
                    "url": "https://www.edpb.europa.eu/sites/default/files/files/file1/edpb_guidelines_202005_consent_en.pdf"
                },
                {
                    "label": "EDPB Guidelines 2/2023 ePrivacy Art. 5(3)",
                    "url": "https://www.edpb.europa.eu/system/files/2024-10/edpb_guidelines_202302_technical_scope_art_53_eprivacydirective_v2_en_0.pdf"
                }
            ]
        },
        {
            "guide_slug": "datenschutzerklaerung-verbessern",
            "guide_url": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
            "title": "Datenschutzerklärung verbessern",
            "intro": "Eine gute Datenschutzerklärung erklärt Ihren Besuchern verständlich, welche Daten verarbeitet werden und warum.",
            "priority": "niedrig",
            "impact_score": 55,
            "phase": "quartalsweise",
            "area": "Transparenz",
            "owner": "Datenschutz/Content",
            "effort": "mittel",
            "issue_count": 1,
            "issues": [
                {
                    "id": "privacy_policy_stale",
                    "area": "privacy",
                    "title": "Datenschutzerklärung wirkt veraltet",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Prüfen Sie die Erklärung gegen aktuelle Cookies, Drittanbieter, Consent-Einstellungen und Formulare.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "datenschutzerklaerung-verbessern",
                    "guide_url": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Verlinken Sie die Datenschutzerklärung gut sichtbar im Footer und in Formularnähe.",
                "Nennen Sie Zwecke, Rechtsgrundlagen, Empfänger/Drittanbieter, Speicherdauer und Betroffenenrechte.",
                "Erklären Sie Cookies, Tracking, Kontaktformulare, Newsletter und Zahlungsanbieter konkret statt nur allgemein.",
                "Pflegen Sie ein sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach neuen Tools, Cookies oder Formularen erneut.",
                "Nennen Sie einen Datenschutzkontakt oder den Datenschutzbeauftragten-Hinweis so, dass Besucher Anfragen ohne Suchen stellen können.",
                "Strukturieren Sie lange Absätze mit klaren Zwischenüberschriften und kurzen Sätzen, damit auch nicht-juristische Nutzer die Hinweise verstehen."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "Datenschutz/Content",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "Datenschutz/Content",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Datenschutzhinweis gegen Cookies, Anbieter, Formulare und Zwecke abgleichen.",
                    "evidence": "Versionierter Datenschutzhinweis, Änderungsdatum, Freigabeprotokoll."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Datenschutzhinweis gegen Cookies, Anbieter, Formulare und Zwecke abgleichen.",
            "sources": [
                {
                    "label": "DSK Orientierungshilfe Digitale Dienste",
                    "url": "https://www.datenschutzkonferenz-online.de/media/oh/OH_Digitale_Dienste.pdf"
                },
                {
                    "label": "DSK Orientierungshilfe Telemedien",
                    "url": "https://www.datenschutzkonferenz-online.de/media/oh/20221205_oh_Telemedien_2021_Version_1_1_Vorlage_104_DSK_final.pdf"
                },
                {
                    "label": "BfDI: Cookies und Tracking-Technologien",
                    "url": "https://www.bfdi.bund.de/DE/Buerger/Inhalte/Telemedien/Cookies.html"
                }
            ]
        },
        {
            "guide_slug": "security-header-setzen",
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "title": "Security-Header setzen",
            "intro": "Security-Header sind eine Betreiberaufgabe an Webserver, CDN oder Hosting-Panel. Der SaferPage-Befund zeigt nur, welche Header im passiven Abruf sichtbar waren; die Umsetzung muss kontrolliert ausgerollt, getestet und bei CSP schrittweise gehärtet werden.",
            "priority": "niedrig",
            "impact_score": 55,
            "phase": "quartalsweise",
            "area": "Web Security",
            "owner": "IT/Security",
            "effort": "mittel",
            "issue_count": 6,
            "issues": [
                {
                    "id": "csp_missing_object_src",
                    "area": "security_headers",
                    "title": "CSP ohne object-src",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                },
                {
                    "id": "csp_missing_base_uri",
                    "area": "security_headers",
                    "title": "CSP ohne base-uri",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                },
                {
                    "id": "missing_cross_origin_embedder_policy",
                    "area": "security_headers",
                    "title": "Cross-Origin-Embedder-Policy fehlt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                },
                {
                    "id": "missing_cross_origin_opener_policy",
                    "area": "security_headers",
                    "title": "Cross-Origin-Opener-Policy fehlt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                },
                {
                    "id": "missing_cross_origin_resource_policy",
                    "area": "security_headers",
                    "title": "Cross-Origin-Resource-Policy fehlt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                },
                {
                    "id": "missing_permissions_policy",
                    "area": "security_headers",
                    "title": "Permissions-Policy fehlt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "security-header-setzen",
                    "guide_url": "https://saferpage.de/guides/security-header-setzen",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Inventarisieren Sie zuerst den Ist-Stand aus SaferPage-Report, curl -I, Browser-DevTools, CDN-Regeln und Hosting-Panel. Widerspruechliche doppelte Header muessen vor der Haertung bereinigt werden.",
                "Setzen Sie als stabile Baseline Strict-Transport-Security, X-Content-Type-Options, Referrer-Policy und Permissions-Policy. Aktivieren Sie HSTS erst, wenn HTTPS fuer Domain, www-Variante und benoetigte Subdomains dauerhaft funktioniert.",
                "Starten Sie Content-Security-Policy zuerst als Content-Security-Policy-Report-Only. Sammeln Sie blockierte Quellen, ordnen Sie sie echten Funktionen zu und erzwingen Sie die CSP erst nach fachlicher Freigabe.",
                "Nutzen Sie fuer CSP mindestens default-src self, base-uri self, object-src none, frame-ancestors self und form-action self. Entfernen Sie unsafe-inline, unsafe-eval, Wildcards und reine http:-Quellen, sobald Nonces, Hashes oder konkrete Hosts funktionieren.",
                "Nutzen Sie frame-ancestors in der CSP oder X-Frame-Options: SAMEORIGIN, damit fremde Seiten Ihre Website nicht ungewollt einbetten.",
                "Rollen Sie Header an genau einer wirksamen Stelle aus: Nginx, Apache, CDN/Reverse Proxy oder Hosting-Panel. Der letzte Edge vor dem Besucher muss den gewollten Header sichtbar ausliefern.",
                "Dokumentieren Sie Rollback, Ausnahmen, betroffene Pfade, Verantwortlichkeit und Re-Scan-Nachweis. Besonders CSP kann Zahlungs-, Login-, Consent- oder Formularfunktionen brechen, wenn Quellen zu hart blockiert werden."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "IT/Security",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "IT/Security",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Header, TLS, CSP und Referrer-Policy nach Deployment erneut scannen.",
                    "evidence": "Nginx/Apache/CDN-Konfiguration, Header-Export, Rollback-Plan."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Header, TLS, CSP und Referrer-Policy nach Deployment erneut scannen.",
            "sources": [
                {
                    "label": "BSI IT-Grundschutz APP.3.1 Webanwendungen",
                    "url": "https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/IT-GS-Kompendium_Einzel_PDFs_2023/06_APP_Anwendungen/APP_3_1_Webanwendungen_und_Webservices_Edition_2023.pdf?__blob=publicationFile&v=3"
                },
                {
                    "label": "BSI IT-Grundschutz APP.3.2 Webserver",
                    "url": "https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/IT-GS-Kompendium_Einzel_PDFs_2023/06_APP_Anwendungen/APP_3_2_Webserver_Edition_2023.pdf?__blob=publicationFile&v=3"
                },
                {
                    "label": "MDN: Content Security Policy",
                    "url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP"
                }
            ]
        },
        {
            "guide_slug": "performance-und-mobile-usability-verbessern",
            "guide_url": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
            "title": "Performance und mobile Nutzbarkeit verbessern",
            "intro": "Langsame oder mobil schlecht nutzbare Seiten wirken fuer Besucher weniger vertrauenswuerdig. SaferPage kann Antwortzeit, sichtbare Mobil-Signale, Header und grobe Asset-Hinweise zeigen; Core-Web-Vitals-Felddaten, reale Nutzergeraete und Business-Auswirkungen muessen Betreiber separat messen.",
            "priority": "niedrig",
            "impact_score": 55,
            "phase": "quartalsweise",
            "area": "Performance & Mobile",
            "owner": "Webentwicklung/UX",
            "effort": "mittel",
            "issue_count": 1,
            "issues": [
                {
                    "id": "compression_missing",
                    "area": "performance",
                    "title": "Komprimierung nicht erkannt",
                    "priority": "niedrig",
                    "impact_score": 55,
                    "evidence": "",
                    "operator_action": "Brotli oder gzip für HTML/CSS/JS aktivieren.",
                    "owner": "Website-Betrieb/Datenschutz",
                    "guide_slug": "performance-und-mobile-usability-verbessern",
                    "guide_url": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
                    "source": "finding"
                }
            ],
            "guide_steps": [
                "Trennen Sie Laborsignale, SaferPage-Response-Zeit, Browser-DevTools, PageSpeed/Lighthouse und echte Core-Web-Vitals-Felddaten. Ein einzelner Kurzscan beweist keine reale Nutzererfahrung.",
                "Pruefen Sie LCP, INP und CLS fuer Startseite, Report-/Landingpages, Formularseiten, Login, Checkout und mobile Hauptpfade getrennt.",
                "Aktivieren Sie Brotli oder gzip fuer HTML, CSS, JavaScript, SVG und JSON; pruefen Sie Cache-Control, ETag, CDN und serverseitige Antwortzeit.",
                "Reduzieren Sie blockierende Skripte, ungenutzte Bibliotheken, grosse Inline-Daten, Render-Blocking-CSS, Tag-Manager-Last und Drittanbieter-Widgets.",
                "Optimieren Sie Bilder mit festen Abmessungen, responsive srcset/sizes, lazy loading, passenden Formaten und 160x150-Preview-Grenzen fuer kleine Reportvorschauen.",
                "Setzen Sie den Viewport-Meta-Tag, ausreichende Tap-Ziele, lesbare Schriftgroessen, stabile Layoutflaechen und testen Sie wichtige Seiten auf echten Mobilgeraeten.",
                "Dokumentieren Sie Vorher/Nachher-Werte, betroffene Templates, Deployment-Zeitpunkt, Rollback und Re-Scan-Nachweis."
            ],
            "fix_steps": [
                {
                    "phase": "Befund reproduzieren",
                    "owner": "Webentwicklung/UX",
                    "action": "SaferPage-Report, betroffene URL, Consent-Zustand und Request-/Cookie-/Header-Evidence sichern.",
                    "evidence": "Scan-ID, Screenshot, Exportzeile, betroffener Hintergrundlink."
                },
                {
                    "phase": "Ursache beheben",
                    "owner": "Webentwicklung/UX",
                    "action": "Konfiguration, Tag, Inhalt, Anbieter, Header oder Formular anhand der Hintergrundseite ändern und Änderung versionieren.",
                    "evidence": "Nachweisposition, Konfigurationsdiff, CMS-/Tag-Manager-Änderung, Freigabe."
                },
                {
                    "phase": "Nutzertext aktualisieren",
                    "owner": "Datenschutz/Content",
                    "action": "Datenschutzhinweis, Cookie-Liste, Anbieterregister oder Trust-Dokumentation an die reale Technik anpassen.",
                    "evidence": "Versionierter Text, Änderungsdatum, Verantwortlicher."
                },
                {
                    "phase": "Re-Test und Abschluss",
                    "owner": "Compliance/IT",
                    "action": "Mobilansicht, Asset-Größen und Ladeverhalten erneut prüfen.",
                    "evidence": "Performance-Messung, Asset-Liste, Mobile-Screenshot."
                }
            ],
            "acceptance": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "evidence_exports": [
                "JSON/CSV/XLSX-Export für Rohbefunde und Audit-Tabellen",
                "ZIP-Nachweispaket mit Screenshot, Evidence Manifest und Hintergrundverweisen",
                "Trust Documentation Library für öffentliche, sanitisierte und interne Nachweise"
            ],
            "retest": "Mobilansicht, Asset-Größen und Ladeverhalten erneut prüfen.",
            "sources": [
                {
                    "label": "Google Search Central: Page Experience",
                    "url": "https://developers.google.com/search/docs/appearance/page-experience"
                },
                {
                    "label": "Google Search Central: Core Web Vitals",
                    "url": "https://developers.google.com/search/docs/appearance/core-web-vitals"
                }
            ]
        }
    ],
    "remediation_tickets": [
        {
            "id": "remediation_button_name_missing",
            "type": "befund_fix",
            "title": "Buttons ohne erkennbaren Namen",
            "priority": "hoch",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "accessibility",
            "evidence": "",
            "action": "Buttons mit sichtbarem Text oder aria-label beschriften.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "7 Tage",
            "fingerprint": "7a893dfe1de83df2fea9b1ad216acfe048f07cc346013ff73626b3b804dfa488",
            "duplicate_group_count": 1,
            "deduplicated_duplicate_count": 0
        },
        {
            "id": "remediation_certificate_expires_soon",
            "type": "befund_fix",
            "title": "TLS-Zertifikat läuft bald ab",
            "priority": "hoch",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "tls",
            "evidence": "",
            "action": "Zertifikat rechtzeitig erneuern; bei weniger als 7 Tagen sofort prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/ssl-zertifikat-reparieren",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "7 Tage",
            "fingerprint": "b037dc12aafe7118bdd09ac578223506ba1e3f50ed0d9d92cf092267bc263733",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_module_accessibility_usability",
            "type": "befund_fix",
            "title": "Barrierefreiheit & Usability",
            "priority": "mittel",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "Audit-Modul",
            "evidence": "5 Bild(er) ohne alt, 0 Formularfeld(er) ohne Beschriftung, 4 Button(s) ohne Namen.",
            "action": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "audit_module",
            "sla": "30 Tage",
            "fingerprint": "1026c2b67a84af392d50b900a2ea641b698d2cae99409c869a4b3856edcb4eda",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_accessibility_gap",
            "type": "befund_fix",
            "title": "Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
            "priority": "mittel",
            "owner": "UX/IT",
            "area": "Barrierefreiheit",
            "evidence": "15 Bild(er), 1 Formularfeld(er), 21 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.",
            "action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "accessibility",
            "sla": "30 Tage",
            "fingerprint": "7a8369f52a72ec2984b6781c7700a646db41d52954975acd803c068312ed8ae5",
            "duplicate_group_count": 1
        },
        {
            "id": "mapping_baseline_tracker_mapping",
            "type": "service_mapping",
            "title": "Service- und Tracker-Mapping",
            "priority": "mittel",
            "owner": "Marketing/IT/Datenschutz",
            "area": "Tracker- und Service-Mapping",
            "evidence": "Keine einzelnen Tracker-Zeilen im gespeicherten Check verfügbar.",
            "action": "Nach nächstem Scan Cookies, Requests und Anbieter in Servicekarten überführen.",
            "acceptance_criteria": [
                "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
            ],
            "guide_url": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
            "evidence_url": "https://saferpage.de/anbieter/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "tracker_mapping",
            "sla": "30 Tage",
            "fingerprint": "f818dda36ce3b448ef2ac5e4c979bbdd38ebfc406e938a8de67d40c7603d3a9d",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_image_alt_missing",
            "type": "befund_fix",
            "title": "Bilder ohne Alternativtext",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "accessibility",
            "evidence": "",
            "action": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "2097cbe784632eb31f2e46dfcf154ca529693584dd73e3ab0cb954940feece3d",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_csp_missing_base_uri",
            "type": "befund_fix",
            "title": "CSP ohne base-uri",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "f0c22c1849650c30c549a5a081b182a133c743c66e203617931a13a9fd8d0a3a",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_csp_missing_object_src",
            "type": "befund_fix",
            "title": "CSP ohne object-src",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "3e9b74a14087aaf39ee626d59cf820a1fd60979b597c921d2051fc72fe02c130",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_missing_cross_origin_embedder_policy",
            "type": "befund_fix",
            "title": "Cross-Origin-Embedder-Policy fehlt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "c8d36072d81b63f9103982e29875cec130c514c20f982ffe6c35212cdfa0cee0",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_missing_cross_origin_opener_policy",
            "type": "befund_fix",
            "title": "Cross-Origin-Opener-Policy fehlt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "65a210c101429beda44d9f7dd2dea20bd40109b87783a2562d331f8251ffa332",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_missing_cross_origin_resource_policy",
            "type": "befund_fix",
            "title": "Cross-Origin-Resource-Policy fehlt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "d51f4623a35c3ae334a5dd59a43e462672f815eac1b654d30d0f2e2a74564176",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_privacy_policy_stale",
            "type": "befund_fix",
            "title": "Datenschutzerklärung wirkt veraltet",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "privacy",
            "evidence": "",
            "action": "Prüfen Sie die Erklärung gegen aktuelle Cookies, Drittanbieter, Consent-Einstellungen und Formulare.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "3fe25b1e42eef344e5c358c21d9402f7b48905ab6c9913c8ad255a5782307149",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_compression_missing",
            "type": "befund_fix",
            "title": "Komprimierung nicht erkannt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "performance",
            "evidence": "",
            "action": "Brotli oder gzip für HTML/CSS/JS aktivieren.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "5c52929504c3ee1ef4abfb74a217c372d580e79d0a97695e2017808caefee05c",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_missing_permissions_policy",
            "type": "befund_fix",
            "title": "Permissions-Policy fehlt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "security_headers",
            "evidence": "",
            "action": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/security-header-setzen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "801cc01c5ceeafba6584ae88b9416fcb3428613a45932329f1a56f23c62277b5",
            "duplicate_group_count": 1
        },
        {
            "id": "remediation_browser_keystroke_listener_signals",
            "type": "befund_fix",
            "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
            "priority": "niedrig",
            "owner": "Website-Betrieb/Datenschutz",
            "area": "privacy",
            "evidence": "",
            "action": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
            "acceptance_criteria": [
                "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
            ],
            "guide_url": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
            "evidence_url": "https://saferpage.de/befunde/arbeit.wfbb.de",
            "rescan_url": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
            "source": "finding",
            "sla": "quartalsweise",
            "fingerprint": "699c62fca2f30036dc4e3d50445a202304be3eb29fcfa464113eb2e5a0d23006",
            "duplicate_group_count": 1
        }
    ],
    "tracker_mapping_tasks": [
        {
            "id": "baseline_tracker_mapping",
            "label": "Service- und Tracker-Mapping",
            "type": "process",
            "status": "vorbereiten",
            "evidence": "Keine einzelnen Tracker-Zeilen im gespeicherten Check verfügbar.",
            "action": "Nach nächstem Scan Cookies, Requests und Anbieter in Servicekarten überführen.",
            "guide_slug": "servicekarte-und-anbieterinventar-aufbauen",
            "guide_url": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
            "target_url": "https://saferpage.de/anbieter/arbeit.wfbb.de"
        }
    ],
    "platform_playbooks": [
        {
            "id": "drupal",
            "platform": "Drupal",
            "summary": "Drupal-Module, Theme-Libraries, Consent-Module und Aggregation/Caches können Datenschutzsignale verändern.",
            "steps": [
                "Drupal Core und contrib-Module aktualisieren; Security Advisories und Composer-Lockfile prüfen.",
                "Libraries, Theme Attachments und Blöcke auf externe Skripte, Fonts, Maps, Videos und Pixel prüfen.",
                "Consent- und Cookie-Module mit Erstaufruf/Ablehnen/Akzeptieren/GPC gegen SaferPage testen.",
                "Cache-, CDN- und Reverse-Proxy-Regeln nach Änderungen invalidieren und Header erneut prüfen."
            ],
            "acceptance": [
                "Keine unsupported/stale Technology-Hinweise.",
                "Drittanbieter sind im Anbieterregister erklärt.",
                "Re-Scan und Exportpaket sind abgelegt."
            ],
            "owner": "Webbetrieb/IT/Datenschutz",
            "guide_url": "https://saferpage.de/guides/cms-plugin-patchstand-nachweisen",
            "technology_evidence_url": "https://saferpage.de/technik/arbeit.wfbb.de/export",
            "rescan_url": "https://saferpage.de/?url=arbeit.wfbb.de",
            "boundary": "Passiv abgeleitet: SaferPage behauptet nur sichtbare CMS-/Shop-/Deployment-Signale. Betreiber müssen Plattform, Versionen, Plugins, Apps und interne Deployments bestätigen."
        }
    ],
    "quality_review_playbook": {
        "summary": "Betreiber-Review-Playbook gegen typische Fehlalarme: Consent-/Paywall-Grenzen, Google-Consent-Anwendbarkeit, Formular-Coverage, Cookie-Kontext und Score-Wording.",
        "rows": [
            {
                "id": "consent_wall_paywall_review",
                "label": "Consent-Wall, Paywall oder Overlay einordnen",
                "review_question": "Hat der automatische Lauf ein Overlay, eine PUR-/Abo-Wall, Geoblocking oder eine Login-Grenze gesehen?",
                "operator_action": "Wenn Overlay, Login, PUR-/Abo-Wall oder Geoblocking Inhalte verdeckt, Befunde zu Impressum, Formularen, Cookies und verstecktem Text manuell prüfen.",
                "acceptance": "Manuelle Prüfung ist mit Screenshot, Pfad, Entscheidung und Re-Scan-Vermerk dokumentiert.",
                "boundary": "Ein verdeckter Footer oder Paywall-Text ist kein automatischer Nachweis für fehlende Betreibertransparenz.",
                "evidence_url": "https://saferpage.de/arbeit.wfbb.de",
                "guide_url": "https://saferpage.de/methodik",
                "status": "bei Bedarf prüfen"
            },
            {
                "id": "google_consent_applicability_review",
                "label": "Google Consent Mode nur bei Google-Evidenz fordern",
                "review_question": "Wurden GTM, gtag, Analytics, Ads oder eine Google-Tracking-ID wirklich gesehen?",
                "operator_action": "Keinen Google-Consent-Mode-Fix verlangen, solange keine GTM-/Analytics-/Ads-/ID-Evidence vorliegt; bei späterem Einbau erneut scannen.",
                "acceptance": "Top-Fixes enthalten keinen Google-Consent-Fehlalarm ohne Google-Evidence.",
                "boundary": "Diese Bewertung gilt nur für die gespeicherte Scan-Evidence; spätere Tag-Manager-Änderungen brauchen Re-Scan.",
                "evidence_url": "https://saferpage.de/arbeit.wfbb.de/top-fixes-json",
                "guide_url": "https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden",
                "status": "nicht erforderlich"
            },
            {
                "id": "form_coverage_review",
                "label": "Formular-Coverage gegen Startseiten-Sample abgleichen",
                "review_question": "Gibt es Formulare auf Startseite oder direkt gecrawlten Unterseiten?",
                "operator_action": "Alle 4 Formular(e) auf 4 geprüften Seite(n) mit Zweck, Pflichtfeldern, Datenschutzlink, Tracking und Referrer-Kontext prüfen.",
                "acceptance": "Formularzweck, Pflichtfelder, Datenschutzhinweis und Consent-/Tracking-Kontext sind pro Formularseite nachvollziehbar.",
                "boundary": "SaferPage sendet keine Formulare ab und kennt keine internen Rechtsgrundlagen oder nachgelagerte Verarbeitung. Die Zählung basiert auf gespeicherter Crawl- und Formular-Evidence.",
                "evidence_url": "https://saferpage.de/abdeckung/arbeit.wfbb.de/export",
                "guide_url": "https://saferpage.de/guides/formulare-datenschutzkonform-absichern",
                "status": "Crawl-Evidence vorhanden"
            },
            {
                "id": "cookie_context_review",
                "label": "Cookies nach Zweck statt pauschal bewerten",
                "review_question": "Sind Cookies vor Einwilligung technisch notwendig oder Tracking/Marketing?",
                "operator_action": "Cookie-Liste mit Zweck, Anbieter, Laufzeit, Consent-Kategorie und Auslösezeitpunkt pflegen; Funktionscookies von Tracking-Cookies trennen.",
                "acceptance": "Cookie-Erklärung und CMP zeigen dieselben Kategorien; Re-Scan belegt keine ungeklärten Trackingkontakte vor Einwilligung.",
                "boundary": "Load-Balancing, Sicherheit und Consent-Speicherung können notwendig sein; die Einordnung braucht Betreiberkontext.",
                "evidence_url": "https://saferpage.de/cookies/arbeit.wfbb.de",
                "guide_url": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                "status": "Baseline dokumentieren"
            },
            {
                "id": "score_wording_review",
                "label": "Score und Warntexte als Priorisierung formulieren",
                "review_question": "Wird aus dem automatischen Score ein pauschales Seriositäts- oder Rechtsurteil?",
                "operator_action": "Report-Quality-Smoke, Kurzreport und Management-Text prüfen: harte Aussagen wie zertifiziert, rechtssicher oder grundsätzlich gefährlich vermeiden.",
                "acceptance": "Bericht trennt Beobachtung, Betreibermaßnahme, Grenze und Re-Scan; keine nicht belegten Zertifikats- oder Rechtsclaims.",
                "boundary": "Score ist eine technische Priorisierung und kein abschließendes Urteil über Rechtmäßigkeit, Seriosität oder Sicherheit.",
                "evidence_url": "https://saferpage.de/evidence/report-quality-smoke.json",
                "guide_url": "https://saferpage.de/methodik",
                "status": "immer prüfen"
            },
            {
                "id": "statement_boundary_review",
                "label": "Aussage-Ampel und Claim-Grenzen übernehmen",
                "review_question": "Trennt der Report klar zwischen automatisch belegter Evidence, manueller Betreiberprüfung und Aussagen, die nicht behauptet werden dürfen?",
                "operator_action": "Aussage-Ampel im Report prüfen und in internen Nachweispositionen übernehmen: automatisch belegt, manuell prüfen und nicht behaupten getrennt dokumentieren.",
                "acceptance": "Nachweispositionen, Betreiberfreigabe und Re-Scan-Notiz enthalten keine DSGVO-Freigabe, kein pauschales Seriositätsurteil und keine nicht belegten Sicherheitsclaims.",
                "boundary": "Die Aussage-Ampel ist eine Kommunikations- und Abnahmehilfe; sie ersetzt keine Rechtsberatung, keine Betreiberfreigabe und keine vollständige Prüfung hinter Login, Paywall oder Geoblocking.",
                "evidence_url": "https://saferpage.de/arbeit.wfbb.de",
                "guide_url": "https://saferpage.de/methodik",
                "status": "immer prüfen"
            }
        ],
        "metrics": {
            "row_count": 6,
            "acceptance_count": 6,
            "boundary_count": 6,
            "evidence_url_count": 6,
            "guide_url_count": 6,
            "privacy_relevant_domain_count": 0,
            "pre_consent_cookie_count": 0,
            "form_count": 4,
            "form_page_count": 4,
            "google_evidence_count": 0
        }
    },
    "evidence_first_boundary": {
        "available": true,
        "summary": "Fixpfade trennen Scan-Evidence, Betreiberkontext und Nicht-behaupten-Grenzen, bevor Betreiber Nachweispositionen prüfen oder externe Aussagen ableiten.",
        "measured_evidence": [
            {
                "id": "report_scan_facts",
                "label": "Gespeicherter Kurzreport",
                "evidence": "Scan-ID, Zeitpunkt, Score, Befunde, Screenshot, HTTP/TLS/Header und direkte Test-URLs.",
                "url": "https://saferpage.de/arbeit.wfbb.de"
            },
            {
                "id": "crawl_form_coverage",
                "label": "Formular-Coverage",
                "evidence": "Crawl-Evidence: 4 Formular(e) auf 4 geprüften Seite(n).",
                "url": "https://saferpage.de/abdeckung/arbeit.wfbb.de/export"
            },
            {
                "id": "browser_contacts",
                "label": "Browserkontakte und Cookies",
                "evidence": "37 Request(s), 0 Drittanbieter-Domain(s), 0 Cookie(s) vor Einwilligung.",
                "url": "https://saferpage.de/cookies/arbeit.wfbb.de"
            },
            {
                "id": "google_applicability",
                "label": "Google-Consent-Anwendbarkeit",
                "evidence": "Keine GTM-/Analytics-/Ads-/ID-Evidence im gespeicherten Lauf; kein Google-Consent-Mode-Fix ohne neue Evidence.",
                "url": "https://saferpage.de/arbeit.wfbb.de/top-fixes-json"
            }
        ],
        "operator_context_not_scanned": [
            "Rechtsgrundlagen, Zwecke, Pflichtfelder, Löschfristen und Empfänger je Formular.",
            "Interne Systeme, CRM-/Support-Flüsse, Login-, Checkout-, Paywall- und nachgelagerte Verarbeitung.",
            "AVV/DPA, TOMs, Transfer Impact Assessments, Anbieterakten und interne Freigaben.",
            "Spätere CMP-, Tag-Manager-, Release- oder Content-Änderungen nach dem gespeicherten Scan."
        ],
        "do_not_claim": [
            "Keine DSGVO-Konformität, Rechtsfreigabe oder Zertifizierung behaupten.",
            "Keinen Google-Consent-Mode-Fehler behaupten, wenn keine Google-Tag-Evidence vorliegt.",
            "Keine fehlende Betreibertransparenz als Tatsache behaupten, wenn Consent-Wall, Paywall, Login oder Geoblocking den Scan begrenzen.",
            "Keine Formularübermittlung, Zahlungsprüfung oder Backend-Validierung behaupten; SaferPage sendet keine Formulare ab."
        ],
        "metrics": {
            "measured_evidence_count": 4,
            "operator_context_count": 4,
            "do_not_claim_count": 4,
            "form_count": 4,
            "form_page_count": 4,
            "google_consent_required": 0,
            "scan_limit_present": 0
        },
        "claim_boundary": "Diese Betreiberseite ist ein Fixpfad- und Review-Index. Konkrete Findings bleiben an Scan-Evidence gebunden; allgemeine Betreiberaufgaben sind Kontext und müssen fachlich freigegeben werden.",
        "guide_url": "https://saferpage.de/guides/betreiber-datenschutz-checkliste",
        "report_quality_url": "https://saferpage.de/evidence/report-quality-smoke.json"
    },
    "phases": [
        {
            "id": "triage",
            "label": "Triage",
            "timebox": "0-48 Stunden",
            "action": "Hoch priorisierte Befunde reproduzieren, Verantwortlichkeit bestätigen, Exportpaket sichern."
        },
        {
            "id": "fix",
            "label": "Fix umsetzen",
            "timebox": "0-14 Tage",
            "action": "Consent-, Anbieter-, Notice-, Cookie-, Formular- oder Header-Änderungen umsetzen und versionieren."
        },
        {
            "id": "content",
            "label": "Nutzertexte synchronisieren",
            "timebox": "parallel",
            "action": "Datenschutzhinweis, Cookie-Erklärung, Anbieterregister und TrustHub an reale Technik anpassen."
        },
        {
            "id": "rescan",
            "label": "Re-Scan und Freigabe",
            "timebox": "nach Deployment",
            "action": "Erstaufruf, Ablehnen, Akzeptieren, GPC, Mobilansicht und priorisierte Unterseiten erneut prüfen."
        }
    ],
    "links": {
        "fix_guides": "https://saferpage.de/fix-guides/arbeit.wfbb.de",
        "json": "https://saferpage.de/fix-guides/arbeit.wfbb.de/export",
        "csv": "https://saferpage.de/fix-guides/arbeit.wfbb.de/export-csv",
        "markdown": "https://saferpage.de/fix-guides/arbeit.wfbb.de/playbook-md",
        "tickets_html": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets",
        "tickets_json": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets-json",
        "tickets_csv": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets-csv",
        "tickets_markdown": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets-md",
        "tickets_delivery_json": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets-delivery-json",
        "tickets_delivery_csv": "https://saferpage.de/fix-guides/arbeit.wfbb.de/tickets-delivery-csv",
        "findings": "https://saferpage.de/befunde/arbeit.wfbb.de",
        "operator_board": "https://saferpage.de/betreiber/arbeit.wfbb.de",
        "privacy_hub": "https://saferpage.de/datenschutz-hub/arbeit.wfbb.de",
        "scan_operations": "https://saferpage.de/scanbetrieb/arbeit.wfbb.de",
        "guides_index": "https://saferpage.de/guides",
        "report": "https://saferpage.de/arbeit.wfbb.de"
    },
    "competitor_references": [
        {
            "title": "Cookiebot Scan Report",
            "url": "https://support.cookiebot.com/hc/en-us/articles/5007079527580-Understanding-the-scan-report",
            "note": "Scanreports verbinden Cookie-/Prior-Consent-Befunde mit Betreiberaktionen."
        },
        {
            "title": "Usercentrics Handling Trackers",
            "url": "https://support.usercentrics.com/hc/en-us/articles/18579668393372-Handling-trackers",
            "note": "Tracker-Ergebnisse werden gemappt, blockiert oder bewusst manuell verwaltet."
        },
        {
            "title": "Osano Compliance Check",
            "url": "https://www.osano.com/features/compliance-check",
            "note": "Compliance Checks priorisieren Lücken und geben Hinweise zur schnellen Behebung."
        }
    ],
    "disclaimer": "Automatisch aus SaferPage-Scan-Evidenz und Hintergrundseiten abgeleitet. Betreiber müssen Umsetzung, Rechtsgrundlagen, interne Systeme und Re-Scan-Nachweise fachlich freigeben."
}
