Master Security Framework: mein mehrschichtiges Sicherheitsframework für moderne Anwendungen

Master Security Framework: mein mehrschichtiges Sicherheitsframework für moderne Anwendungen

18.05.2026

MSF

Zusammenfassung

Das Master Security Framework (MSF) ist ein umfassendes, mehrsprachiges und mehrschichtiges Sicherheitsframework, das zum Schutz moderner Anwendungen auf allen Ebenen des Technologie-Stacks entwickelt wurde. MSF ist in Python und TypeScript implementiert und bietet mehr als 350 Funktionen, verteilt auf 28 Module, die alles von Authentifizierung und Verschlüsselung bis hin zur Erkennung von Webangriffen, Netzwerkanalyse, Cloud-Sicherheit, Schutz durch künstliche Intelligenz, adaptiven Honeypots, aktiver Verteidigung und Unternehmens-Compliance abdecken. Dieser Artikel enthält eine detaillierte technische Analyse aller im Framework implementierten Module, Funktionen, Entwurfsmuster und Sicherheitsmechanismen.


1. Einführung

1.1. Das Problem

Moderne Anwendungen sind einem immer komplexeren Spektrum an Bedrohungen ausgesetzt. Ein einzelnes System kann auf mehreren Ebenen gleichzeitig angegriffen werden: Einschleusung von Eingabeaufforderungen in Sprachmodelle, Ausnutzung von Web-Schwachstellen (XSS, SQLi, SSRF), Port-Scanning, DDoS-Angriffe, Cloud-Fehlkonfigurationen, kompromittierte Container, anfällige Abhängigkeiten in der Software-Lieferkette und Verstöße gegen die Einhaltung gesetzlicher Vorschriften.

Der traditionelle Sicherheitsansatz – jedes Problem mit isolierten Tools zu lösen – schafft Verteidigungssilos, die Lücken zwischen den Ebenen hinterlassen. MSF wurde entwickelt, um dieses Problem zu lösen, indem es eine einheitliche Sicherheitsplattform bietet, die auf allen Ebenen der Anwendung funktioniert.

1.2. Was ist das Master Security Framework?

MSF ist ein Open-Source-Sicherheitsframework, das in zwei Sprachen implementiert ist: Python und TypeScript. Jedes Modul existiert in beiden Sprachen mit derselben Semantik, sodass mehrsprachige Teams unabhängig vom Technologie-Stack dieselben Sicherheitsfunktionen nutzen können.

Das Rahmenwerk gliedert sich in vier Säulen:

  1. Prävention: Eingabevalidierung, Bereinigung, Verschlüsselung, Konfigurationshärtung
  2. Erkennung: Analyse von Angriffsmustern, statistischen Anomalien, Malware-Signaturen und verdächtigem Verhalten
  3. Antwort: Autonome Warnungen, Quarantäne, Eindämmung, Selbstheilung
  4. Konformität: Automatische Überprüfung von LGPD, DSGVO, HIPAA, PCI-DSS

1.3. Projektmetriken

  • 243 automatisierte Tests bestanden (77 Python + 166 TypeScript)
  • 14 Python-Module mit über 180 Funktionen
  • 14 TypeScript-Module mit über 170 Funktionen
  • OpenTelemetry-Telemetrie in alle Funktionen integriert
  • Strukturierte Protokollierung (Pin in TypeScript, Loguru in Python)
  • In-Memory-Cache mit automatischer Ungültigmachung
  • Policy Engine für konfigurierbare Sicherheitsregeln
  • Event Bus für asynchrone Kommunikation zwischen Modulen

2. Framework-Architektur

2.1. Infrastrukturschicht (Kern)

Die MSF-Basis besteht aus sechs Infrastrukturkomponenten, die von allen anderen Modulen gemeinsam genutzt werden:

Globale Konfiguration: Ein zentralisiertes Konfigurationsobjekt, das Sicherheitsparameter, Schwellenwerte, erlaubte/gesperrte Listen und kryptografische Schlüssel speichert. Die Konfiguration kann in Echtzeit aus Umgebungsvariablen neu geladen werden, ohne die Anwendung neu zu starten.

Policy Engine: Ein Regelauswertungssystem, mit dem Sie Sicherheitsrichtlinien als strukturierte Anweisungen definieren können. Die Engine unterstützt logische Operatoren, zusammengesetzte Bedingungen und Durchsetzungsaktionen (Zulassen, Verweigern, Warnen, Protokollieren).

Event Bus: Ein asynchrones Pub/Sub-System, das es Modulen ermöglicht, Sicherheitsereignisse zu veröffentlichen und anderen Modulen das Abonnieren, um darauf zu reagieren. Der Ereignisbus umfasst einen Ereignisverlauf und eine Warteschlange für unzustellbare Nachrichten für Ereignisse, deren Verarbeitung fehlgeschlagen ist.

Metrikregister: Ein Metriksystem, das Zähler (für kumulative Zählungen), Messgeräte (für Momentanwerte) und Histogramme (für Verteilungen) unterstützt. Alle Discovery-Funktionen veröffentlichen automatisch Metriken.

Cache-Manager: Ein LRU-Cache (Least Recent Used) mit konfigurierbarer TTL (Time-To-Live), der zum Speichern teurer Validierungsergebnisse, IP-Blocklisten, Sitzungsfingerabdrücke und widerrufener Token verwendet wird.

OpenTelemetry: Vollständige Integration mit dem OpenTelemetry-Standard, wodurch verteilte Tracing-Spannen für jeden Sicherheitsvorgang generiert werden. Dies ermöglicht FarbeVerknüpfen Sie Sicherheitsereignisse mit Anforderungsspuren in Microservices-Architekturen.

Strukturierter Logger: Strukturierte Protokollierung im JSON-Format mit Pin (TypeScript) und Loguru (Python), einschließlich automatischem Kontext wie Trace-ID, Schweregrad, Modul und Sicherheitsmetadaten.

Ausnahmebehandlung: Eine Hierarchie von Sicherheitsausnahmen („SecurityError“, „ValidationError“, „AuthenticationError“, „EncryptionError“), die eine detaillierte Behandlung von Sicherheitsfehlern ermöglicht.

2.2. Schutzschicht

Was die Infrastruktur betrifft, organisiert MSF seine Sicherheitsmodule in drei Funktionsebenen:

Eingabeebene: Web, API, Authentifizierung – Anwendungseinstiegspunkte schützen Infrastrukturschicht: Netzwerk, Cloud, Datei – schützt die zugrunde liegende Infrastruktur Intelligente Schicht: KI, Überwachung, Verteidigung, Honeypot – schützen Sie mit Intelligenz und Anpassung


3. Authentifizierungsmodul (Auth)

Das Authentifizierungsmodul ist mit 30 Funktionen in Python und 7 in TypeScript das umfangreichste im Framework. Es deckt den gesamten Authentifizierungslebenszyklus ab: Token-Generierung und -Validierung, Sitzungsverwaltung, Angriffserkennung und erweiterte Methoden zur Identitätsüberprüfung.

3.1. JWT (JSON-Web-Tokens)

MSF implementiert ein vollständiges JWT-System, das über die einfache Generierung und Validierung hinausgeht:

– „generate_jwt“ erstellt Token mit Betreff, benutzerdefinierten Ansprüchen, konfigurierbarem Ablauf und Aussteller. Unterstützt die Algorithmen HS256, HS384, HS512, RS256, ES256. - „validate_jwt“ prüft Signatur, Ablauf, obligatorische Ansprüche und gibt die entschlüsselte Nutzlast zurück. Mit dem Parameter „verify_exp“ können Sie die Ablaufprüfung für bestimmte Fälle deaktivieren. – „revoke_jwt“ fügt die JTI (JWT-ID) des Tokens einer Sperr-Blacklist hinzu. Dies ist wichtig, um sich vor dem natürlichen Ablauf des Tokens abzumelden. - „rotate_jwt“ validiert das alte Token und stellt ein neues mit derselben Identität aus, wodurch eine stille Token-Rotation ohne Unterbrechung der Benutzersitzung ermöglicht wird. – „validate_refresh_token“ validiert Aktualisierungstoken mit Überprüfung der Zugehörigkeit zu einem bestimmten Benutzer und verhindert so, dass ein gestohlener Aktualisierungstoken von einem anderen Benutzer verwendet wird.

3.2. Sitzungsverwaltung

Das MSF-Sitzungssystem bietet Schutz vor Sitzungs-Hijacking:

  • „secure_session“ erstellt eine Sitzung, die Benutzer-ID, IP, Benutzeragent und Gerätefingerabdruck verknüpft. Dadurch können Sie verdächtige Änderungen im Sitzungskontext erkennen.
  • „validate_session“ prüft, ob die session_id zum Benutzer gehört und ob die aktuelle IP mit der beim Erstellen der Sitzung registrierten IP übereinstimmt.
  • „detect_session_hijack“ vergleicht die aktuelle IP und den Benutzeragenten mit historischen Sitzungsdaten. Wenn die IP in ein anderes Subnetz verschoben wurde oder sich der Benutzeragent erheblich geändert hat, gibt die Funktion „true“ zurück, was auf einen möglichen Hijacking hinweist.
  • „detect_token_replay“ zeichnet die bereits verwendeten Token auf. Wird ein Token mehr als einmal präsentiert, erkennt die Funktion den Replay-Angriff.

3.3. Erkennung von Authentifizierungsangriffen

MSF erkennt drei Haupttypen von Angriffen auf Authentifizierungssysteme:

  • „detect_credential_stuffing“ überwacht Anmeldeversuche von einer einzelnen IP für mehrere Benutzerkonten. Wenn eine IP innerhalb eines Zeitfensters viele verschiedene Benutzernamen ausprobiert, wird dies als Credential Stuffing gekennzeichnet.
  • „detect_bruteforce“ überwacht Anmeldeversuche für ein einzelnes Konto. Wenn die Anzahl der Versuche im Zeitfenster den Schwellenwert überschreitet, wird dies als Brute Force gekennzeichnet.
  • „detect_impossível_travel“ berechnet die Entfernung zwischen zwei aufeinanderfolgenden Anmeldeorten und vergleicht sie mit der verstrichenen Zeit. Wenn die für die Fahrt zwischen Punkten erforderliche Geschwindigkeit angemessene physikalische Grenzen überschreitet (z. B. 900 km/h), erkennt die Funktion, dass eine Fahrt nicht möglich ist.
  • „geo_velocity_check“ erweitert die Erkennung unmöglicher Reisen auf mehrere Standorte und berechnet die geografische Geschwindigkeit zwischen allen aufeinanderfolgenden Anmeldepunkten.

3.4. Adaptive und risikobasierte Authentifizierung

– „adaptive_auth“ passt die Authentifizierungsanforderungen basierend auf der Risikobewertung des Kontexts an. Für die Anmeldung von einem vertrauten Gerät an einem vertrauten Ort ist möglicherweise nur ein Passwort erforderlich, während für die Anmeldung von einem neuen Gerät in einem anderen Land möglicherweise zusätzliche MFA erforderlich ist. - „behavioral_auth“ verwendet Verhaltensbiometrie (Tippmuster, Mausbewegung, Browsing-Rhythmus), um die Identität des Benutzers anhand der registrierten Verhaltensbasislinie zu überprüfen. - „risk_based_auth“ berechnet eine zusammengesetzte Risikobewertung aus mehrerennach Faktoren: Standort, Gerät, Zeit, Verhalten, IP-Reputation und gibt eine Authentifizierungsentscheidung mit einem Konfidenzniveau zurück.

3.5. TOTP- und Backup-Codes

  • „generate_totp“ generiert zeitbasierte Einmalpasswortcodes gemäß RFC 6238 mit konfigurierbaren Ziffern und Punkten.
  • „validate_totp“ validiert TOTP-Tokens mit Taktabweichungstoleranz (Parameter „drift“) und gleicht die Desynchronisation zwischen dem Server und dem Gerät des Benutzers aus.
  • „verify_backup_code“ überprüft und nutzt Sicherungs-/Wiederherstellungscodes und entfernt sie nach der Verwendung aus der gültigen Liste, um eine Wiederverwendung zu verhindern.

3.6. WebAuthn und Passkeys

– „passkey_auth“ validiert FIDO2/WebAuthn-Authentifizierungen durch Überprüfung der kryptografischen Signatur des Authentifikators, der Authentifikatordaten und der JSON-Clientdaten. – „webauthn_verify“ führt eine vollständige WebAuthn-Assertionsprüfung durch, einschließlich der Validierung des Ursprungs, der RP-ID (Relying Party ID) und der kryptografischen Signatur anhand des registrierten öffentlichen Schlüssels. – „phishing_resistent_auth“ prüft, ob eine Authentifizierungsmethode resistent gegen Phishing ist und FIDO2 Level 2 oder höher mit verifizierter Bescheinigung erfordert.

3.7. Passwortsicherheit

  • „password_entropy“ berechnet die Shannon-Entropie eines Passworts und misst dessen Informationskomplexität in Bits. Passwörter mit einer Entropie unter 40 Bit gelten als schwach.
  • „detect_weak_password“ kombiniert Entropieanalyse mit der Prüfung anhand von Listen gängiger Passwörter (Rockyou, Top 10000 usw.).
  • „password_breach_check“ prüft, ob ein Passwort-Hash in einer Datenbank bekannter Verstöße erscheint (Have I Been Pwned und ähnliches).
  • „secure_password_hash“ erstellt Passwort-Hashes mit kryptografischem Salt und Key-Stretching (Iterationen) und unterstützt Algorithmen wie PBKDF2, bcrypt, scrypt und Argon2.
  • „verify_password_hash“ vergleicht ein Passwort mit einem gespeicherten Hash mithilfe eines sicheren Vergleichs mit konstanter Zeit.

3.8. Geräte- und Browser-Fingerprinting

  • „device_fingerprint“ generiert eine eindeutige Gerätekennung aus Attributen wie Benutzeragent, Bildschirmauflösung, Zeitzone, Sprachen und Plattform.
  • „browser_fingerprint“ verwendet fortschrittliche Fingerabdrucktechniken basierend auf Rendering-Eigenschaften: 2D-Canvas-Hash, WebGL-Hash, Audio-Kontext-Hash und Liste der installierten Schriftarten.
  • „biometrische_Validierung“ vergleicht biometrische Daten (Fingerabdruck, Gesichtserkennung, Iris) mit einer gespeicherten Vorlage mit konfigurierbarer Ähnlichkeitsschwelle.

4. Kryptographiemodul (Krypto)

Das Verschlüsselungsmodul implementiert moderne symmetrische, asymmetrische und Post-Quantum-Verschlüsselungsalgorithmen mit Schwerpunkt auf Authentifizierung und Integrität.

4.1. Authentifizierte Verschlüsselung

  • „encrypt_data“ verwendet authentifizierte Verschlüsselung mit zugehörigen Daten (AEAD) und unterstützt AES-256-GCM und ChaCha20-Poly1305. Mit Associated Data (AAD) können Sie unverschlüsselte Metadaten auf authentifizierte Weise mit Chiffretext verknüpfen.
  • „decrypt_data“ führt eine authentifizierte Entschlüsselung durch und überprüft das Authentifizierungs-Tag, bevor Klartext zurückgegeben wird. Wenn das Tag nicht übereinstimmt, schlägt die Entschlüsselung fehl, wodurch Oracle-Padding- und Chiffretext-Manipulationsangriffe verhindert werden.
  • „encrypt_file“ und „decrypt_file“ erweitern die authentifizierte Verschlüsselung auf Dateien auf der Festplatte und verwalten Nonce, Salt und Metadaten sicher.

4.2. Hybride Kryptographie

  • „hybrid_encrypt“ kombiniert asymmetrische Verschlüsselung (für den Schlüsselaustausch) mit symmetrischer Verschlüsselung (für die Nutzlast). Der symmetrische Schlüssel wird zufällig generiert, zur Verschlüsselung der Nutzdaten verwendet und anschließend mit dem öffentlichen Schlüssel des Empfängers verschlüsselt.
  • „hybrid_decrypt“ kehrt den Vorgang um: entschlüsselt den symmetrischen Schlüssel mit dem privaten Schlüssel und entschlüsselt dann die Nutzlast.

4.3. Postquantische Kryptographie

Das MSF implementiert die vom NIST standardisierten Post-Quantum-Algorithmen:

  • „pqc_encrypt“ und „pqc_decrypt“ verwenden ML-KEM (ehemals Kyber) für quantencomputerresistente Verschlüsselung.
  • „kyber_key_exchange“ implementiert das Kyber-Schlüsselaustauschprotokoll für die Post-Quantum-Shared-Key-Erstellung.
  • „dilithium_sign“ verwendet ML-DSA (ehemals Dilithium) für digitale Post-Quantum-Signaturen.
  • „sphincs_sign“ verwendet SPHINCS+, ein auf Hash-Funktionen basierendes Signaturschema, als zustandslose Post-Quantum-Alternative.
  • „falcon_sign“ verwendet Falcon, ein gitterbasiertes Signaturschema mit kompakten Signaturen.

4.4. HMAC und Signaturüberprüfung

  • „generate_hmac“ erzeugt einen Hash-bAuthentifizierungscode für Nachrichten mithilfe von HMAC-SHA256, HMAC-SHA384, HMAC-SHA512 oder HMAC-SHA3-256 erstellt.
  • „verify_hmac“ vergleicht den berechneten HMAC mit dem erwarteten HMAC unter Verwendung eines Konstantzeitvergleichs.
  • „verify_signature“ überprüft digitale Signaturen (Ed25519, ECDSA, RSA-PSS) anhand einer Nachricht und eines öffentlichen Schlüssels.

4.5. Kryptografische Dienstprogramme

  • „secure_random“ generiert kryptografisch sichere Bytes mit „os.urandom()“ (Python) oder „crypto.getRandomValues()“ (TypeScript). – „secure_memory_erase“ überschreibt Speicherbereiche, die vertrauliche Daten enthalten, mit Nullen und verhindert so, dass Daten nach der Verwendung im Speicher verbleiben.
  • „anti_timing_compare“ vergleicht zwei Bytesequenzen in konstanter Zeit und iteriert über alle Bytes, unabhängig davon, wo der erste Unterschied auftritt, und verhindert so Timing-Angriffe.

5. Webmodul

Das Web-Modul ist hinsichtlich der Angriffserkennung mit 30 Funktionen in Python und 35 in TypeScript das umfangreichste. Es deckt alle Web-Schwachstellenkategorien ab, die in den OWASP Top 10 und darüber hinaus aufgeführt sind.

5.1. Cross-Site-Scripting (XSS)

  • „detect_xss“ analysiert Eingaben für XSS-Muster, einschließlich: „