Skip to content

Latest commit

 

History

History
354 lines (274 loc) · 16.1 KB

File metadata and controls

354 lines (274 loc) · 16.1 KB

ThemisDB Security Documentation

Stand: 7. Januar 2026
Version: v1.4.0-alpha


🎯 Schnellzugriff


📚 Dokumentations-Struktur

1. Threat Analysis & Risk Management

2. Security Architecture

📋 Übersicht

Das Security-Modul implementiert umfassende Sicherheitsfunktionen für ThemisDB, einschließlich Field-Level Encryption, Key Management, RBAC, PKI-Integration, Vector Encryption und Malware-Scanning.

Hauptkomponenten

Komponente Header Source Beschreibung
FieldEncryption encryption.h encryption.cpp AES-256-GCM
KeyProvider key_provider.h - Key Provider Interface
MockKeyProvider mock_key_provider.h mock_key_provider.cpp Test Provider
VaultKeyProvider vault_key_provider.h vault_key_provider.cpp HashiCorp Vault
HSMProvider hsm_provider.h hsm_provider_pkcs11.cpp PKCS#11 HSM
PKIKeyProvider pki_key_provider.h pki_key_provider.cpp PKI Integration
RBAC rbac.h rbac.cpp Role-Based Access
MalwareScanner malware_scanner.h malware_scanner.cpp Content Scanning
CMSSigning cms_signing.h cms_signing.cpp CMS Signatures
TimestampAuthority timestamp_authority.h timestamp_authority.cpp RFC 3161 TSA

Gesamt: 16 Header, 16 Source-Dateien, ~8,100 LOC


🛡️ Wissensgraphen-Schutz (NEU)

🔐 Schutz vor KI-Datendiebstahl (Januar 2026)

Neue Bedrohungen für Wissensgraphen und Vektor-Embeddings erfordern erweiterte Schutzmaßnahmen:

Dokumentation:

Kernthemen:

  • 🔍 Systematische Graphexfiltration
  • 📊 Embedding-Diebstahl
  • 🎯 Training Data Extraction
  • ⏱️ Temporal Data Mining

Empfohlene Maßnahmen:

  1. ✅ Phase 1 (Sofort): Erweiterte Audit-Logs, Rate Limits, Monitoring
  2. 📋 Phase 2 (3-6 Monate): Graph Watermarking, Embedding Fingerprinting
  3. 🔮 Phase 3 (6-12 Monate): Differenzielle Privacy, ML-Anomalieerkennung

✨ Features & Highlights

🆕 Vector Encryption (Phase 1 + 2) - VOLLSTÄNDIG IMPLEMENTIERT ✅

Schnellstart:

Benutzerhandbücher:

🔴 LLM & LoRa Adapter Sicherheit (v1.4.0+) - NEU ✅

Bedrohungsanalyse:

Hauptrisiken:

  • 🔴 Prompt Injection (Hoch)
  • 🔴 LoRa Model Poisoning (Hoch)
  • 🟠 Vector Embedding Manipulation (Mittel, durch Verschlüsselung geschützt)
  • 🟠 HNSW Index Poisoning (Mittel, durch Verschlüsselung geschützt)
  • 🟡 Adapter Weight Extraction (Niedrig)

Schutzmaßnahmen (Implementiert):

  • ⚠️ LoRASecurityValidator - Architektur und Tests (Signaturvalidierung: Stub)
  • ⚠️ PromptInjectionDetector - Pattern-basierte Injection-Erkennung (Produktionsreif)
  • ⚠️ EmbeddingAnomalyDetector - Statistische Anomalieerkennung (Produktionsreif)
  • ✅ Unit Tests in tests/test_lora_security.cpp

⚠️ HINWEIS: Die Signaturvalidierung für LoRa-Adapter ist derzeit als Prototyp implementiert und verwendet Stub-Code. Für Produktionsumgebungen muss die OpenSSL-Integration vervollständigt werden. Siehe LLM_LORA_ATTACK_VECTORS.md für Details.

Referenzen:

Implementierungsdetails:

Build & Test:

Performance & Optimierung:

Analysen:

Ergebnis:

  • ✅ 100% At-Rest Verschlüsselung für Vektoren
  • ✅ AES-256-GCM für RocksDB Vektoren und HNSW Index-Dateien
  • ✅ BSI C5 CRY-03 vollständig konform
  • ✅ 8 Integrationstests + 5 Beispiele
  • ✅ Migrations-Tool für bestehende Daten

🏆 BSI C5 Compliance - Kryptographie

➡️ BSI C5 Column Encryption Compliance Report
Comprehensive analysis of column encryption implementation against BSI C5 requirements (CRY-01 to CRY-06).
Compliance Score: 95% → 100% (with new documentation)

➡️ BSI C5 Multi-Model Encryption AnalysisNEU
Detaillierte Analyse der Verschlüsselung über alle Datenmodell-Schichten: Relational, Vector, Graph, Geo, Timeline, Process.
Ergebnis: Unified Storage Architecture sichert konsistente Verschlüsselung über alle Modelle

Formale Dokumentation (Dezember 2025):

🛡️ Implementierungsstatus (Dezember 2025)

Komponente Status Implementierung
RBAC/ABAC Policy Engine ✅ Produktionsreif Ranger-kompatibel
Apache Ranger Integration ✅ Produktionsreif src/server/ranger_adapter.cpp
VaultKeyProvider (KMS) ✅ Produktionsreif src/security/vault_key_provider.cpp
HSMProvider (PKCS#11) ✅ Produktionsreif src/security/hsm_provider_pkcs11.cpp
PKI Client (OpenSSL) ✅ Produktionsreif src/utils/pki_client.cpp
Audit Logging ✅ Produktionsreif Hash-Chain, PKI-Signaturen
Field Encryption ✅ Produktionsreif AES-256-GCM
Timestamp Authority ✅ Produktionsreif RFC 3161 via OpenSSL

🚀 Schnellstart

Vector Encryption aktivieren

// Initialize encryption
auto key_provider = std::make_shared<KeyProvider>();
auto field_encryption = std::make_shared<FieldEncryption>(key_provider);
EncryptedField<std::vector<float>>::setFieldEncryption(field_encryption);

// Enable encryption
VectorIndexManager vim(db);
vim.init("documents", 768);
vim.setVectorEncryptionEnabled(true);

// Add vectors - automatically encrypted!
BaseEntity entity("doc1");
entity.setField("embedding", std::vector<float>(768, 0.5f));
vim.addEntity(entity);

Field Encryption verwenden

// Encrypt sensitive field
FieldEncryption encryption(keyProvider);
auto blob = encryption.encrypt("sensitive data", "user_pii");
entity.setField("email_encrypted", blob.toBase64());

// Decrypt
auto decrypted = encryption.decrypt(EncryptedBlob::fromBase64(encrypted_value));

RBAC konfigurieren

RBAC rbac;
rbac.createRole("analyst", {{"data", "read"}, {"reports", "read"}});
rbac.assignRole("user@example.com", "analyst");

// Check permission
if (rbac.authorize("user@example.com", "data", "read")) {
    // Access granted
}

📖 Detaillierte Dokumentation

🔒 Encryption

3. Encryption & Key Management

🛡️ Security Operations

📜 Compliance & Policies

🔐 Authentication & Authorization

4. Authentication & Authorization

5. HSM Integration

6. Audit & Compliance

7. PII & Data Protection

8. Operational Security

9. Advanced Topics

10. Reports & Summaries


🚨 Für Sicherheitsvorfälle

  1. Vulnerability melden: GitHub Security Advisories
  2. Incident Response: Siehe security_incident_response.md
  3. Security Contact: security@themisdb.example.com

📊 Aktuelle Sicherheitslage (v1.4.0-alpha)

Implementierungsstatus:

  • ✅ RBAC/ABAC (Apache Ranger)
  • ✅ Encryption (AES-256-GCM)
  • ✅ Key Management (Vault/HSM)
  • ✅ Audit Logging (65+ Event Types)
  • ✅ TLS 1.2/1.3
  • ✅ Rate Limiting
  • ⚠️ MFA (geplant für v1.5.0)
  • ⚠️ LLM Prompt Injection Protection (in Entwicklung)

Top Prioritäten:

  1. Admin-API-Schutz (MFA, IP-Whitelisting)
  2. TLS-Enforcement (1.3 only)
  3. LLM-Sicherheit (Prompt Injection, Output Filtering)
  4. Supply Chain Security (SBOM, Dependency Scanning)

Siehe ANGRIFFSVEKTOREN_ANALYSE.md für detaillierte Handlungsempfehlungen.


Letzte Aktualisierung: 2026-01-07
Maintained by: Security Team