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
CVE-2026-35196 — Second CVE still Remote Code Execution | Kitploit
Tools/GitHubGitHub/kx00007/cve-2026-35196
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubkx00007/cve-2026-35196

CVE-2026-35196

Second CVE still Remote Code Execution

Repository anzeigen
vor 2 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

CVE-2026-35196 · Chamilo LMS · OS-Befehlseinschleusung → RCE


CVE CVSS CWE Auth Type Shell



Forscher: K
Offenlegungsart: Verantwortungsvolle Offenlegung
Status: Gepatched Betroffenes Produkt: Chamilo LMS < 2.0 (Bestätigt auf v1.11.32)


📋 Zusammenfassung der Schwachstelle


🔍 Beschreibung

Eine kritische Schwachstelle der OS-Befehlseinschleusung existiert in der Aktion export_all_certificates der Datei main/inc/ajax/gradebook.ajax.php in Chamilo LMS v1.11.32.

Die Anwendung ruft einen Kurscode über api_get_course_id() ab, der direkt aus $_SESSION['_cid'] gelesen wird. Dieser aus der Sitzung stammende Wert wird unbereinigt in einen shell_exec()-Aufruf konkateniert – kein escapeshellarg(), keine Whitelist-Validierung, keine Typüberprüfung.

Ein Angreifer, der die _cid-Variable seiner Sitzung manipulieren oder vergiften kann (durch Sitzungsvergiftung, IDOR-Verkettung oder andere Sitzungsmanipulationsprimitive), kann beliebige Shell-Metazeichen injizieren und eine vollständige Remote-Codeausführung als Webserver-Benutzer (www-data) erreichen.


🧩 Ursachenanalyse

Anfällige Datei: main/inc/ajax/gradebook.ajax.php
Anfällige Funktion: export_all_certificates

Wenn ein Benutzer die Aktion export_all_certificates auslöst, versucht das Skript, einen Hintergrundprozess zur Verarbeitung von Zertifikaten auszuführen:

root@kitploit:~
$courseCode = api_get_course_id(); // Ruft den Wert aus $_SESSION['_cid'] ab
$sessionId = api_get_session_id();
// ...
$commandScript = api_get_path(SYS_CODE_PATH).'gradebook/cli/export_all_certificates.php';
$userList = implode(',', $userList);

// Fehler: Variablen wie $courseCode werden ohne escapeshellarg() direkt an die Shell übergeben
shell_exec("php $commandScript $courseCode $sessionId $categoryId $userList > /dev/null &");

Da die Anwendung implizit den Inhalten der Sitzungsvariablen vertraut und es versäumt, diese ordnungsgemäß zu escapen, bevor sie an die System-Shell gesendet werden, kann ein Angreifer mit einer manipulierten Sitzung bösartige Befehle anhängen und ausführen. Wenn _cid beispielsweise "; touch /tmp/remote_code_by_k; #" enthält, wird der von der bash/sh-Shell interpretierte Befehl zu:

root@kitploit:~
php /var/www/chamilo/main/gradebook/cli/export_all_certificates.php ; touch /tmp/remote_code_by_k; # ... > /dev/null &

Die Shell führt das CLI-Skript aus, gefolgt von der injizierten Nutzlast, und ignoriert den Rest der beabsichtigten Befehlszeichenfolge.

💣 Beweis des Konzepts

  1. Sitzungsvergiftung: Der Angreifer muss zuerst die $_SESSION['_cid']-Variable beeinflussen. Dies kann erreicht werden, indem diese Schwachstelle mit einer Sitzungsvergiftungsschwachstelle verkettet wird oder indem der Kurscode-Wert durch eine IDOR oder unsichere Parameterbehandlung an anderer Stelle in der Anwendung manipuliert wird, um den Sitzungskontext zu aktualisieren.
  2. Nutzlast-Injektion: Setzen Sie die _cid-Sitzungsvariable auf: "; [BÖSARTIGER_BEFEHL]; #"
  3. Ausführung: Senden Sie eine GET-Anfrage an: /main/inc/ajax/gradebook.ajax.php?a=export_all_certificates&cat_id=1 mit dem vergifteten Sitzungscookie.
  4. Ergebnis: Der Server führt blind den injizierten Befehl mit den Privilegien des Webanwendungsbenutzers (www-data) aus.

📊 Auswirkungsanalyse


🛡️ Empfehlungen

  • escapeshellarg() anwenden: Umhüllen Sie alle benutzerabgeleiteten Variablen (wie $courseCode, $sessionId und $userList) mit PHP's escapeshellarg(), bevor Sie sie an shell_exec() übergeben, um beliebige OS-Metazeichen zu neutralisieren.
  • Strenge Sitzungsvalidierung: Stellen Sie sicher, dass im Sitzungszustand gespeicherte Variablen (z.B. $_SESSION['_cid']) streng typisiert und bereinigt sind, sodass potenzielle "Sitzungsvergiftungs"- oder IDOR-Verkettungsangriffe am Eintrittspunkt blockiert werden.
  • Prinzip der geringsten Privilegien durchsetzen: Konfigurieren Sie den Webserver-Dienst (www-data) mit restriktiven Dateisystem-Schreibberechtigungen und beschränken Sie den Zugriff der Anwendung auf wesentliche Linux-Shell-Binärdateien, um Post-Exploitation-Fähigkeiten zu mildern.

🧪 Umgebung

📎 Referenzen

  • Chamilo LMS Offizielles Repository
  • CWE-78: OS Command Injection
  • OWASP: Command Injection
  • CVE-2026-29041 — Frühere Chamilo RCE (CWE-434, CVSS 8.8) vom selben Forscher

👤 Forscher

root@kitploit:~
Handle  : K
GitHub  : https://github.com/kx00007
Focus   : Serverseitige Schwachstelle RCE, CVE-Jagd, Sicherheitsforschung, Exploit-Entwicklung
Prior   : CVE-2026-29041 (Chamilo LMS — Authentifizierte RCE über Dateiupload)

⚡Versuche es härter.

Tool herunterladen
FeldDetails
ProduktChamilo LMS
Betroffene Version< 2.0 (Bestätigt auf v1.11.32)
SchwachstelleOS-Befehlseinschleusung
CWECWE-78 — Unzureichende Neutralisierung spezieller Elemente in einem OS-Befehl
CVSSv3.1-Punktzahl8.8 (HOCH)
VektorCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Authentifizierung erforderlichJa (jeder authentifizierte Benutzer mit einer vergifteten Sitzung)
Exploit-TypAuthentifizierte Remote-Codeausführung
Anfällige Dateimain/inc/ajax/gradebook.ajax.php
DimensionAuswirkung
VertraulichkeitVollständiger Lesezugriff – Quellcode, Konfigurationen, DB-Anmeldedaten, /etc/passwd
IntegritätBeliebige Dateischreibvorgänge, Webshell-Bereitstellung, Datenbankmanipulation
VerfügbarkeitDienstunterbrechung, Dateisystemzerstörung, Ransomware-Bereitstellung
UmfangWebserver-Prozess (www-data); laterale Bewegungspotenziale durch Offenlegung von Anmeldedaten
KomponenteDetails
BetriebssystemUbuntu Server (Docker)
WebserverApache / Nginx
PHP7.x / 8.x
AppChamilo LMS v1.11.32-v2.0
Shell/bin/sh → bash