{
    "id": "20260624-171247-mail.djswiss.ch-2132280a",
    "type": "scan_report",
    "created_at": "2026-06-24T17:12:47+00:00",
    "scan": {
        "tool": "DJSWISS Safe Site Checker Pro",
        "version": "3.0-sales-ready",
        "mode": "defensive_passive_authorized",
        "started_at": "2026-06-24T17:12:46+00:00",
        "finished_at": "2026-06-24T17:12:47+00:00",
        "target": {
            "input_url": "https://mail.djswiss.ch/",
            "normalized_url": "https://mail.djswiss.ch/",
            "effective_url": "https://mail.djswiss.ch/",
            "host": "mail.djswiss.ch",
            "http_status": 200
        },
        "score": {
            "points": 97,
            "grade": "A"
        },
        "summary": {
            "critical": 0,
            "high": 0,
            "medium": 0,
            "low": 1,
            "info": 4
        },
        "meta": {
            "dns_targets": [
                "148.251.1.89"
            ],
            "http_redirect_effective_url": "https://mail.djswiss.ch/",
            "tls": {
                "subject": "mail.djswiss.ch",
                "issuer": "Let's Encrypt",
                "valid_to": "2026-09-22T16:13:28+00:00",
                "days_left": 89
            },
            "dns": {
                "txt": [
                    "v=spf1 mx ip4:148.251.1.89 ip4:148.251.1.79 -all"
                ],
                "dmarc": "v=DMARC1; p=quarantine; rua=mailto:postmaster@djswiss.ch; ruf=mailto:postmaster@djswiss.ch; fo=1",
                "mx": [],
                "caa_count": 0
            }
        },
        "findings": [
            {
                "severity": "low",
                "category": "Niedrig",
                "title": "CSP erlaubt unsafe-inline",
                "evidence": "default-src 'self' https: data: blob:; img-src 'self' data: https:; style-src 'self' 'unsafe-inline' https:; script-src 'self' 'unsafe-inline' 'unsafe-eval' https:; font-src 'self' data: https:; connect-src 'self' https:; frame-ancestors 'self'; base-uri 'self'; form-action 'self'",
                "fix": "Inline-Skripte reduzieren; Nonce/Hash-Strategie verwenden."
            },
            {
                "severity": "info",
                "category": "Info",
                "title": "Cross-Origin-Opener-Policy fehlt",
                "evidence": "COOP Header nicht gefunden",
                "fix": "Optional: Cross-Origin-Opener-Policy: same-origin für isolierte Browser-Kontexte prüfen."
            },
            {
                "severity": "info",
                "category": "Info",
                "title": "Technologie-Information sichtbar: server",
                "evidence": "Apache",
                "fix": "Versionen und Framework-Banner soweit möglich ausblenden; wichtiger: Systeme aktuell halten."
            },
            {
                "severity": "info",
                "category": "Info",
                "title": "Keine MX Records gefunden",
                "evidence": "djswiss.ch",
                "fix": "Falls die Domain E-Mail empfängt, MX Records prüfen."
            },
            {
                "severity": "info",
                "category": "Info",
                "title": "CAA Record fehlt",
                "evidence": "djswiss.ch",
                "fix": "Optional CAA setzen, um Zertifizierungsstellen einzuschränken."
            }
        ],
        "recommendations": [
            "Status ist gut. Monatliches Monitoring und Change-Erkennung aktivieren.",
            "CSP und Mail-DNS weiter härten, falls relevant."
        ],
        "sales_hint": {
            "package": "Security Monitoring",
            "suggested_price_chf": "99/Monat oder 290/Jahr",
            "reason": "Guter Zustand; sinnvoll ist regelmässige Überwachung."
        },
        "note": "This tool identifies visible weaknesses and safe fix guidance. It does not exploit, bypass authentication, brute-force, or provide intrusion steps."
    },
    "ai": null,
    "report_text": null
}