Sicherheit, klar formuliert
Keine Buzzwords. Hier steht, was wir tun — und was wir nicht behaupten — um deine Sites, Kunden und Umsätze zu schützen.
Verschlüsselung in der Übertragung
Jede Verbindung nutzt TLS 1.3. HSTS preloaded. TLS 1.0 / 1.1 und schwache Cipher-Suites lehnen wir ab. Keine Ausnahmen für Legacy-Clients.
Verschlüsselung im Ruhezustand
Datenbank-Volumes und S3-Buckets sind AES-256-verschlüsselt. Backups sind verschlüsselt, bevor sie das Produktionsnetz verlassen.
Zwei-Faktor-Authentifizierung
TOTP-basierte 2FA in jedem Plan enthalten, mit optionalem E-Mail-OTP-Fallback. 8 Einmal-Recovery-Codes pro Nutzer. Admins müssen sie aktivieren.
Hosting nur in der EU
Primäre Region: Frankfurt. Sekundär: Stockholm. Daten gehen nie in Jurisdiktionen außerhalb des EWR ohne dokumentierte Standardvertragsklausel.
Tenant-Isolation
Jede Kunden-Site läuft in ihrem eigenen DB-Scope. Plugins laufen in einer Sandbox mit disable_functions + open_basedir-Profil — ein Tenant kann keinen anderen beeinträchtigen.
Rate-Limiting + Audit-Log
Pro-IP-Rate-Limits auf jedem öffentlichen Formular. Jede Admin-Aktion wird im Activity-Log mit Subjekt, Actor, IP und vollem Diff der geänderten Felder protokolliert.
Praktiken, die wir befolgen
Jährlicher externer Pen-Test
Unabhängiges EU-Unternehmen. Kritische Findings werden vor Abnahme des Berichts behoben.
SAST in CI
Jeder PR durchläuft statische Analyse (Psalm + Larastan). PRs werden nicht gemergt bei Security-Severity > mittel.
Dependency-Monitoring
Composer- und npm-Dependencies werden täglich gescannt. Kritische CVEs lösen ein Same-Day-Patch-Release aus.
Secrets-Management
Keine Secrets im Repo. Produktions-Secrets liegen in HashiCorp Vault mit quartalsweiser Rotation.
Backups + Restore-Drills
Tägliche verschlüsselte Snapshots, 30 Tage aufbewahrt. Vollständige Restore-Drills einmal pro Quartal.
Incident-Response
Dokumentiertes Runbook. Severity-1-Incidents bekommen innerhalb von 14 Tagen ein öffentliches Post-Mortem unter /blog.
Signierte Webhooks
Ausgehende Webhooks mit HMAC-SHA256 signiert. Kunden verifizieren pro Request, um Fälschungen zu verhindern.
Passwort-Hashing
bcrypt mit Cost 12 (konfigurierbar). Kein Passwort verlässt jemals ungehasht die Request-Grenze.
Verantwortungsvolle Offenlegung
Eine Schwachstelle gefunden? Schreib an security@radcms.io mit Reproduktionsschritten. Für sensible Findings verschlüsselt mit unserem PGP-Schlüssel.
Unsere Zusage
- Bestätigung deines Berichts innerhalb von 48 Stunden.
- Triage-Entscheidung innerhalb von 5 Werktagen (in Scope / out of Scope / Duplikat).
- Wir halten dich auf dem Laufenden, bis das Issue gelöst ist.
- Öffentliche Nennung (wenn du es möchtest), sobald der Fix ausgeliefert ist.
- Bounty für gültige kritische/hohe Findings (Einzelfallentscheidung, aktuell bis €5.000).
Bitte teste nicht gegen Kundendaten, führe keine automatisierten Scanner mit hohem Volumen aus und gib uns angemessene Zeit zur Behebung, bevor du veröffentlichst.
Audit läuft · Ziel 2026
Verfügbar für Enterprise-Pläne