Schwachstelle melden
security@webcounter.ca
Wenn Sie ein Sicherheitsproblem im Dashboard, Tracking-Skript oder in der API finden, senden Sie eine E-Mail an security@webcounter.ca und geben Sie die Seite oder den Endpunkt, Schritte zur Reproduktion und das erwartete Ergebnis an. Verschlüsselung ist optional.
Bitte melden Sie Sicherheitsprobleme vertraulich und lassen Sie vor einer öffentlichen Offenlegung Zeit für die Untersuchung. Wir bemühen uns, Meldungen innerhalb weniger Werktage zu bestätigen und während der Bearbeitung über den Fortschritt zu informieren.
Schutzregelung
Sicherheitsforschung in gutem Glauben ist zulässig
Für Forschung, die dieser Richtlinie entspricht, werden wir keine rechtlichen Schritte einleiten. Wir arbeiten mit Ihnen zusammen, um ein gemeldetes Problem zu verstehen und zu beheben.
- Verwenden Sie Konten und Websites, die Sie zu Testzwecken erstellt haben oder für deren Test Sie ausdrücklich berechtigt sind. Greifen Sie nicht auf Daten anderer Kunden zu.
- Beenden Sie die Prüfung und melden Sie das Problem, sobald Sie ausreichende Belege haben, um es nachzuweisen; extrahieren Sie keine weiteren Daten, sobald die Auswirkung festgestellt wurde.
- Setzen Sie keine automatisierten Scanner ein und führen Sie keine Lasttests oder anderen Aktivitäten durch, die den Dienst beeinträchtigen könnten. Die üblichen Ratenbegrenzungen gelten auch für Forschungs-Traffic.
- Versuchen Sie nicht, sich physischen Zugang zu verschaffen oder Social Engineering beziehungsweise Phishing gegen Betreiber oder Kunden von Counter einzusetzen.
- Geben Sie uns Gelegenheit, das Problem zu beheben, bevor Sie es öffentlich besprechen.
Webcounter.ca hat kein bezahltes Bug-Bounty-Programm. Nach Bereitstellung einer Korrektur können wir Sie nennen, falls Sie öffentliche Anerkennung wünschen.
Geltungsbereich
Was diese Richtlinie abdeckt
Im Geltungsbereich: webcounter.ca und seine Dashboard-, Konto- und API-Oberflächen; das /c.js Erfassungs-Snippet und die /api/collect//c.gif//badge.svg von ihm aufgerufenen Endpunkte; die öffentlichen Seiten für freigegebene Berichte und das Netzwerkverzeichnis.
Außerhalb des Geltungsbereichs: Denial-of-Service-Tests und Dienste, die Counter nicht betreibt, einschließlich Diensten für Transaktions-E-Mails und OpenStreetMap-Kachelhosts.
Kontosicherheit
Passwörter, Sitzungen und Multi-Faktor-Authentifizierung
Passwörter werden vor der Speicherung mit bcrypt gehasht; das Klartextpasswort wird nirgends gespeichert. Anmeldeprüfungen führen unabhängig davon, ob die E-Mail-Adresse existiert, einen festen Vergleich aus, sodass die Antwortzeit nicht zum Ermitteln vorhandener Konten genutzt werden kann. Anmeldeversuche werden pro Adresse ratenbegrenzt.
Jedes Konto kann optional eine Multi-Faktor-Authentifizierung mit einem 30-Sekunden-Code aus einer Authenticator-App und einmal verwendbaren Wiederherstellungscodes aktivieren. MFA-Geheimnisse werden verschlüsselt, Wiederherstellungscodes als Einweg-Hashes gespeichert. Eine Passwortänderung widerruft andere Sitzungen und ausstehende Links zum Zurücksetzen des Passworts.
E-Mail-Links zur Verifizierung, zum Zurücksetzen des Passworts und zur Adressänderung öffnen einen Bestätigungsbildschirm. Die Aktion erfolgt erst nach dem Absenden, sodass ein automatisierter E-Mail-Scanner sie nicht allein durch Aufrufen des Links auslösen kann.
API-Schlüssel
Einmal angezeigt und als Hash gespeichert
API- und Geheimschlüssel werden bei der Erstellung einmal angezeigt. Counter speichert nur einen SHA-256-Hash, sodass ein funktionsfähiger Schlüssel später nicht wiederhergestellt werden kann. Widerrufen und ersetzen Sie einen verlorenen Schlüssel.
Datenschutz
Datenschutz
Besucherkennungen verwenden einen rotierenden, schlüsselbasierten Hash; rohe Besucher-IP-Adressen werden nicht in Analyseereignissen gespeichert. Endpunkte von Web Push-Abonnements sind im Ruhezustand verschlüsselt. Nächtliche Datenbanksicherungen werden mit einem öffentlichen Schlüssel verschlüsselt, und automatisierte Wiederherstellungsprüfungen verifizieren jede Sicherung.
Auf der Seite zur Datenaufbewahrung erfahren Sie, wie lange die einzelnen Datenarten genau aufbewahrt werden, und im Datenschutzhinweis finden Sie die vollständige Richtlinie.
Transport & Isolation
HTTPS, Sicherheitsheader und Mandantentrennung
Dashboard, Konto und API verwenden HTTPS, HSTS, Content Security Policy sowie Framing-, Referrer- und Berechtigungsheader. Erfassungsendpunkte (/c.js, /api/collect, /c.gif, /badge.svg) lassen ursprungsübergreifende Anfragen zu, da Kundenwebsites sie laden müssen. Sie geben dieselbe leere Antwort zurück, unabhängig davon, ob eine Anfrage akzeptiert oder abgelehnt wird, und legen keine sensiblen Daten offen.
Dashboard und API verwenden einen gemeinsamen Autorisierungspfad für den Websitezugriff. Ein Benutzer oder Schlüssel, dessen Geltungsbereich auf eine Website beschränkt ist, kann durch Erraten einer Kennung nicht auf ein anderes Konto zugreifen. Produktion und Staging verwenden außerdem getrennte Datenbankzugangsdaten; dem Staging wird der Zugriff auf Produktionsdaten verweigert.