- Add SECURITY.md establishing Responsible Disclosure policy, SLA (48h/5d/90d), scope, and contact channels (security@pansi.eu) - Configure deny.toml for cargo-deny (advisories, bans, licenses, sources) - Audit with cargo audit (0 vulnerabilities) and cargo deny (all ok) - Scan entire git history with gitleaks (101 commits, no secrets leaked) - Baseline harmless unit-test mock tokens in .gitleaksignore - Document automated auditing in SECURITY_AUDIT.md and link in README.md
6.5 KiB
Sicherheitsrichtlinie & Responsible Disclosure (SECURITY.md)
Die Sicherheit von Sanctum und der Schutz der Daten unserer Anwender haben höchste Priorität. Dieses Dokument definiert die Sicherheitsrichtlinie, den Geltungsbereich und den formalen Prozess zur vertraulichen Meldung von Sicherheitslücken (Responsible Disclosure).
1. Unterstützte Versionen
Sicherheitsupdates und Patches werden jeweils für die neueste Version von Sanctum bereitgestellt. Ältere Versionen werden nicht separat gepflegt; Anwendern wird dringend empfohlen, stets die aktuellste Version einzusetzen (automatisch prüfbar via sanctum upgrade --check).
| Version | Status | Sicherheits-Support |
|---|---|---|
| v0.9.x | Aktiv (Aktuell: v0.9.2) | Vollständig unterstützt |
| <= v0.8.x | Veraltet | Nicht mehr unterstützt (Upgrade empfohlen) |
2. Geltungsbereich (Scope)
2.1 Im Geltungsbereich (In Scope)
Schwachstellen in folgenden Kernbereichen fallen unter diese Richtlinie:
- Kryptografische Kernfunktionen:
- Schlüsselableitung (
Argon2id, KDF-Parametervalidierung, Salt-Erzeugung). - Verschlüsselung, Integrität und Replay-Schutz (
AES-256-GCM, 24-Byte Generation-AAD K-02, Inode-Metadaten-MAC K-01). - Steganografisches Carrier-Format V2 (Paged Manifest, Superblock-Konsistenz C-02, Dirty-Tracking C-03).
- Schlüsselableitung (
- Speicher- und Prozesssicherheit:
- Schlüsselisolation im Arbeitsspeicher (
Zeroize,VirtualLock/mlock). - Schutz vor Auslagerung in Swap/Pagefile oder temporäre Absturz-Dumps.
- Schlüsselisolation im Arbeitsspeicher (
- Netzwerk- und Dienst-Sicherheit:
- Lokaler WebDAV-Endpunkt (zwingende
127.0.0.1Loopback-Beschränkung, Host-Header-Validierung). - Session-Token-Schutz (dynamische Zufallserzeugung im RAM, keine Leaks über Prozessliste
argv, Pfade oder URLs).
- Lokaler WebDAV-Endpunkt (zwingende
- Anti-Forensik & Anti-Leak Shield:
- Unterdrückung von Windows-Explorer-Artefakten (
Thumbs.db,desktop.ini, ADS-Streams). - Transaktionales Schreddern von Datenblöcken mit CSPRNG-Rauschen vor dem Löschen.
- Unterdrückung von Windows-Explorer-Artefakten (
- Software-Integrität & Upgrade-Prozess:
- Signaturprüfung von Updates via Minisign (Ed25519) und Domain-Beschränkung.
- Disaster Recovery:
- BIP-39 Notfallschlüssel-Ableitung und Header-Wiederherstellung (R-NEW-1 MAC-Rebuild).
2.2 Außerhalb des Geltungsbereichs (Out of Scope)
Folgende Szenarien stellen keine Sicherheitslücke in Sanctum dar:
- Kompromittierter Host: Angriffe, die bereits uneingeschränkte Administrator-/Root-Rechte oder physischen Zugriff auf einen laufenden, entsperrten Rechner voraussetzen (z. B. Kernel-Treiber-Injection, Direct-Memory-Access via Hardware, Keylogger auf OS-Ebene).
- Physikalisches Flash-Wear-Leveling: Restfragmente gelöschter Blöcke auf Flash-Speichern (SSD, NVMe) infolge des Flash Translation Layers (FTL) der Hardware, sofern Sanctum die logischen Datenblöcke nachweislich kryptografisch geschreddert hat (siehe Hinweis in
README.mdundTHREAT_MODEL.md). - Social Engineering & Phishing: Angriffe, die darauf abzielen, das Master-Passwort oder den Notfallschlüssel direkt vom Anwender zu erpressen oder zu erschleichen.
- Lokales DoS durch Dateilöschung: Das manuelle Löschen der
.sanctum-Containerdatei durch einen Nutzer mit Schreibrechten auf dem Hostdateisystem.
3. Vertrauliche Meldung (Responsible Disclosure)
Wenn Sie eine potenzielle Sicherheitslücke in Sanctum identifiziert haben, bitten wir Sie eindringlich, diese nicht öffentlich (z. B. über GitHub/Gitea Public Issues, X/Twitter, Mastodon, Diskussionsforen oder Blogs) bekanntzugeben, bevor wir die Möglichkeit hatten, das Problem zu analysieren, zu beheben und ein Update bereitzustellen.
3.1 Kontaktwege
Bitte übermitteln Sie Ihren Bericht über einen der folgenden vertraulichen Kanäle:
-
Per E-Mail (Primär):
- Adresse:
security@pansi.eu(Fallback:harald@pansi.eu) - Betreff:
[SECURITY] Schwachstelle in Sanctum: <Kurzbeschreibung> - Wenn Sie sensible Details (z. B. PoC-Exploits) verschlüsseln möchten, fordern Sie bitte vorab per Mail einen PGP-Schlüssel an oder nutzen Sie den Gitea Security Advisory Kanal.
- Adresse:
-
Gitea Private Vulnerability Reporting (Web):
- Wenn Sie ein Gitea-Konto besitzen, können Sie unter folgender URL direkt einen vertraulichen Security Advisory erstellen:
- URL: https://gitea.pansi.eu/harald/sanctum/security/advisories
3.2 Erforderliche Informationen im Bericht
Um eine schnelle Untersuchung zu ermöglichen, sollte Ihre Meldung folgende Informationen enthalten:
- Zusammenfassung: Eine prägnante Beschreibung der Schwachstelle und der betroffenen Komponente.
- Version & Umgebung: Getestete Sanctum-Version (z. B. v0.9.2), Betriebssystem (Windows 11, Linux etc.) und Toolchain.
- Schritt-für-Schritt-Anleitung: Genaue Reproduktionsschritte oder ein minimales Proof of Concept (PoC).
- Schweregrad / Impact: Ihre Einschätzung der Auswirkung (z. B. Datenverlust, Umgehung der Verschlüsselung, Information Leak).
- Lösungsvorschlag (optional): Falls Sie bereits eine Idee oder einen Patch haben, freuen wir uns über Ihren Vorschlag.
4. Reaktionszeiten & Zeitplan (SLA)
Wir verpflichten uns zu einem transparenten und zügigen Ablauf:
| Phase | Maximale Reaktionszeit | Beschreibung |
|---|---|---|
| Eingangsbestätigung | Innerhalb von 48 Stunden | Wir bestätigen den Empfang Ihrer Meldung und benennen einen Ansprechpartner. |
| Erste Bewertung | Innerhalb von 5 Werktagen | Wir prüfen die Reproduzierbarkeit und bewerten den Schweregrad. |
| Status-Updates | Mindestens alle 7 Tage | Sie werden regelmäßig über den Fortschritt der Behebung informiert. |
| Embargo & Veröffentlichung | Standardmäßig 90 Tage | Gemeinsam stimmen wir den Veröffentlichungstermin ab (spätestens nach 90 Tagen oder unmittelbar nach Bereitstellung des Patches). |
5. Safe Harbor & Anerkennung
- Rechtlicher Schutz (Safe Harbor): Wenn Sie nach bestem Wissen und Gewissen im Rahmen dieser Richtlinie handeln (keine Daten Dritter kompromittieren, keine Systeme sabotieren und die Vertraulichkeitsfrist einhalten), werden wir keinerlei rechtliche Schritte gegen Sie einleiten.
- Anerkennung: Sofern von Ihnen gewünscht, nennen wir Sie namentlich (oder mit Alias/Handle) in den offiziellen Release Notes, im
SECURITY_AUDIT.mdsowie im Changelog als Entdecker der Schwachstelle.
Vielen Dank, dass Sie dazu beitragen, Sanctum für alle Anwender sicher zu halten!