
Proof-of-Concept-Exploit für CVE-2026-26030, der Remote-Codeausführung über unsichere Filterausdrücke im InMemoryVectorStore von Microsoft Semantic Kernel demonstriert.
CVE-2026-26030
Nicht vertrauenswürdige Filterausdrücke in InMemoryVectorStore ermöglichen eine unsichere Attributauflösung, die zur Ausführung beliebigen Python-Codes über __builtins__ / globals-Traversierung führt.
Mohammed Idrees Banyamer
Sicherheitsforscher
flowchart TD
A[User-controlled filter string] --> B[Passed to VectorStore query/filter]
B --> C[InMemoryVectorStore evaluates filter expression unsafely]
C --> D[Unsafe attribute resolution via __class__ / __base__ / __subclasses__]
D --> E[Access to __init__.__globals__ containing os and __builtins__]
E --> F[Arbitrary code execution e.g. os.system]
F --> G[Remote Code Execution in application context]
style G fill:#ff6666,stroke:#333,stroke-width:2px
Beschreibung
Nicht vertrauenswürdige / benutzergesteuerte Filterausdrücke, die an InMemoryVectorStore übergeben werden, werden unsicher ausgewertet und ermöglichen eine Attribut-Traversierung, die __builtins__, globals und schließlich das os-Modul erreicht – was zur Ausführung beliebigen Python-Codes führt.
Wichtige Hinweise
Die Exploit-Demonstration wird in einer separaten Datei bereitgestellt:
exploit.py
# 1. Install vulnerable version (for testing / research purposes only!)
pip install semantic-kernel==1.39.0
# 2. Run the PoC
python3 exploit.py
Sofort aktualisieren auf semantic-kernel >= 1.39.4
Anwendungen, die InMemoryVectorStore verwenden, sollten:
MIT-Lizenz
Copyright © 2026 Mohammed Idrees Banyamer