CORS und Cross-Origin-Zugriff
Wessen Skripte die Seiten dieser Website lesen dürfen. Ein gespiegelter Origin mit erlaubten Credentials lässt jede Seite, die ein angemeldeter Besucher öffnet, diese Website in seinem Namen lesen.
Browser verhindern, dass ein Skript auf einer Website Antworten einer anderen liest – es sei denn, diese erlaubt es per CORS-Header. Access-Control-Allow-Origin nennt, welche Origins lesen dürfen; Access-Control-Allow-Credentials: true erlaubt dabei die Cookies des Besuchers. Falsch gesetzt, lassen diese Header jede Website Ihre Seiten so lesen, wie ein angemeldeter Besucher sie sieht: persönliche Daten, Tokens, Kontodetails.
So prüft SiteScan
Der Scanner ruft die Startseite mit dem Origin einer erfundenen Website ab und wertet die Antwort aus:
- grün „Nur eigener Origin“: Die unbekannte Website erhält keine Erlaubnis;
- gelb
*: Jede Website darf die Seite lesen, aber ohne Cookies – üblich für öffentliche Dateien auf einem CDN, ungewöhnlich für eine Seite; - gelb „Jeder Origin (gespiegelt)“: Der Server gibt jeden anfragenden Origin zurück, ein getarnter Platzhalter;
- rot: Der Origin wird gespiegelt und Credentials sind erlaubt – jede Seite, die ein angemeldeter Besucher öffnet, kann Ihre Website in seinem Namen lesen.
So beheben Sie es
Führen Sie eine explizite Liste erlaubter Origins und vergleichen Sie den Origin der Anfrage damit; ohne Treffer senden Sie nichts. Kombinieren Sie einen gespiegelten Origin nie mit Allow-Credentials: true. Die meisten Seiten brauchen gar keine CORS-Header, nur APIs, die von anderen Domains aufgerufen werden. Die übrigen Zeilen der Gruppe erklärt die Seite zu den Security-Headern.
Prüfen Sie diesen Punkt auf Ihrer eigenen Website
Starten Sie einen kostenlosen Scan: Der Bericht zeigt diese Zeile für Ihre Domain zusammen mit den übrigen Prüfungen des Audits.
Mehr unter „Security-Header“
Was SiteScan prüft
TLS-Zertifikat
- Ablauf des SSL/TLS-Zertifikats
- Veraltete TLS-Versionen (1.0 und 1.1)
- TLS-Zertifikatskette
- Aussteller des TLS-Zertifikats
- Signaturalgorithmus des Zertifikats
Domain-Registrierung
- Ablauf der Domainregistrierung
- Registrierter Domainname
- Domain-Registrar
- Registrierungsdatum der Domain
- Letzte Änderung der Domain
- Domain-Statuscodes (EPP)
- Transfersperre der Domain
- Abuse-Kontakt des Registrars
- Datenquelle RDAP und WHOIS
Indexierung
- robots.txt-Datei
- In robots.txt gesperrtes CSS und JS
- XML-Sitemap (sitemap.xml)
- Sitemap-Index-Datei
- Fremde URLs in der Sitemap
- lastmod-Daten in der Sitemap
- Defekte URLs in der Sitemap
- RSS- und Atom-Feed
Adressen und Weiterleitungen
- Weiterleitung von HTTP auf HTTPS
- Weiterleitung zwischen www und ohne www
- Länge der Weiterleitungskette
- 404-Fehlerbehandlung und Soft 404
Security-Header
- HTTP-Security-Header und Note
- Strict-Transport-Security-Header (HSTS)
- Content-Security-Policy-Header (CSP)
- X-Content-Type-Options: nosniff
- X-Frame-Options und Clickjacking-Schutz
- Referrer-Policy-Header
- Permissions-Policy-Header
- HSTS-Preload-Liste
- CORS und Cross-Origin-Zugriff
- HTTP-Methode TRACE
Auslieferung und Reputation
- Cache-Control-Header für HTML
- Revalidierung mit ETag und Last-Modified
- HTTP/3- und QUIC-Unterstützung
- Softwareversionen in Server-Headern
- Prüfung auf DNS-Blocklisten (DNSBL)
Interne Links
Offenliegende Dateien
- Offenliegende Dateien wie .env und .git
- Aktiviertes Verzeichnis-Listing
- Öffentliche JavaScript-Source-Maps
- Offene WordPress-Endpunkte
Konventionsdateien
- Die Datei security.txt
- llms.txt für KI-Assistenten
- Die Datei llms-full.txt
- ads.txt für autorisierte Werbeverkäufer
- Die Datei humans.txt
- Well-known-Adresse change-password
DNS und E-Mail
- MX-Einträge (Mailserver)
- SPF-Eintrag
- DMARC-Eintrag und Policy
- DNSSEC-Signierung
- CAA-Eintrag
- Redundante Nameserver
- IPv6-Unterstützung (AAAA-Eintrag)
- MTA-STS-Policy
- TLS-RPT-Eintrag für Berichte
- BIMI-Eintrag (Logo im Postfach)
- Wildcard-DNS-Eintrag
- Verwaister CNAME und Subdomain-Übernahme
Datenschutz und Einwilligung
- Analyse- und Tracking-Skripte
- Cookie-Consent-Banner
- Datenschutzerklärung
- Nutzungsbedingungen und AGB
- Impressum
- Barrierefreiheitserklärung
Core Web Vitals
- Lighthouse-Performance-Score
- Largest Contentful Paint (LCP)
- Cumulative Layout Shift (CLS)
- Interaction to Next Paint (INP)
- CrUX-Felddaten und Labordaten