
# CVE-2026-26030 개념 증명 익스플로잇 Microsoft Semantic Kernel의 InMemoryVectorStore에서 안전하지 않은 필터 표현식을 통한 원격 코드 실행을 시연하는 개념 증명 익스플로잇입니다.
CVE-2026-26030
InMemoryVectorStore의 신뢰할 수 없는 필터 표현식은 안전하지 않은 속성 해석을 허용하여 __builtins__ / globals 탐색을 통한 임의 Python 코드 실행으로 이어집니다.
Mohammed Idrees Banyamer
보안 연구원
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
설명
InMemoryVectorStore에 전달되는 신뢰할 수 없는 / 사용자 제어 필터 표현식이 안전하지 않게 평가되어 __builtins__, globals, 그리고 궁극적으로 os 모듈에 도달하는 속성 탐색을 허용하며, 이로 인해 임의 Python 코드 실행이 발생합니다.
중요 참고 사항
익스플로잇 데모는 별도 파일로 제공됩니다:
exploit.py
# 1. 취약한 버전 설치 (테스트 / 연구 목적으로만 사용하세요!)
pip install semantic-kernel==1.39.0
# 2. PoC 실행
python3 exploit.py
즉시 semantic-kernel >= 1.39.4로 업그레이드하세요
InMemoryVectorStore를 사용하는 애플리케이션은 다음을 준수해야 합니다:
MIT 라이선스
Copyright © 2026 Mohammed Idrees Banyamer