Vaillant VR 900: Linux, GPL, ssh-Zugang?

Begonnen von ChriChri, 18 September 2016, 13:59:57

Vorheriges Thema - Nächstes Thema

Standarduser

Danke für deine Antwort. Im Prinzip hast du genau meinen Eindruck bestätigt, den ich aus diesem und aus Threads in anderen Foren gewonnen habe. Ich wollte mich nur vergewissern, dass es nicht zwischenzeitlich neue Erkenntnisse gibt, die an mir vorbei gegangen sind.

Interesse an diesem Teil hätte ich im Prinzip schon, aber das, was es mir wert wäre, hältst du sicher für unverschämt. Insofern mach ich dir lieber kein Angebot ;)

KluthR

Zwar schon etwas älter, aber:

Ich habe die VR900 auch etwas untersucht. Mittlerweile scheint Vaillant den mqws (also den Websocket) abgeschaltet zu haben. Es gibt weder DNS Anfragen noch Traffic dorthin (obwohl ich vor nem halen Jahr dasselbe gesehen habe).

Also macht die VR900 nur noch: NTP, MQ(TT), Update. NTP bietet mir kein "Angriffsziel", MQTT ist TLS1.2 verschlüsselt sowie mit User/Pass gesichert - bleibt update..

Davon gibt es update-o-lb.dia.vaillant-group.com und update-i-lb.dia.vaillant-group.com. Zweiteres wird abgefragt, wenn im 1. Versuch keine MQTT Verbindung hergestellt werden konnte.

Komischerweise fragt die VR900 update-o nie ab, kein Traffic dorthin. Ich vermute, das geschieht nur in bestimmten Abständen - oder auf Wunsch via MQTT Nachricht hin. Jedenfalls hab ich mal geschaut was auf dem Server läuft...

https war zwar offen, kam aber - leider - keine Seite. Da läuft nicht mal ei Webserver. Interessant. Telnet brachte mich auch nicht weiter. Dafür aber nmap. Vaillant betreibt dort ein RSYNCD-Server - über stunnel. Wusste gar nicht, dass es sowas gibt - kurz belesen - und das ftpsync-Paket installiert. Dort gibts für rsync ein Modul, welches derweil ein stunnel client startet.

Auf dem Server dort sind RSYNCD-Module konfiguriert:

rootfs_cdialog
rootfs_cdialog_write
ODX
ODX_write
OTX
OTX_write
PduApi_cdialog
PduApi_cdialog_write
rootfs_cdialog_stage
rootfs_cdialog_stage_write
ODX_stage
ODX_stage_write
OTX_stage
OTX_stage_write
PduApi_cdialog_stage
PduApi_cdialog_stage_write
rootfs_cdialog2_wand
rootfs_cdialog2_wand_write
rootfs_cdialog2_stage
rootfs_cdialog2_stage_write
rootfs_cdialog2_live
rootfs_cdialog2_live_write
rootfs_hem20_stage
rootfs_hem20_stage_write
rootfs_hem20_live
rootfs_hem20_live_write
rootfs_hem20_devel
rootfs_hem20_devel_write
rootfs_swaggerpi_devel
rootfs_swaggerpi_devel_write
rootfs_vr9xx_migr_devel
rootfs_vr9xx_migr_devel_write
rootfs_vr9xx_migr_stage
rootfs_vr9xx_migr_stage_write
rootfs_vr9xx_migr_live
rootfs_vr9xx_migr_live_write


Sieht interessant aus - leider ist hier auch schon Schluss: Jedes Modul fragt ein Passwort ab. Hab diverses probiert, komme nicht weiter.

Da die VR900 für MQTT das SSL-Zert verifiziert (und damit mitm unmöglich macht) denke ich mal, dass der stunnel client dasselbe macht - wissen tu ichs aber nicht, könnte sein, dass der schlampiger konfiguriert ist..?

Zur Info.. :)

KluthR

#17
Dank @kodidu habe ich doch Zugang zum System erhalten. Wie ich anfangs vermutete, besitzen die Geräte UART. Ich wusste nur nie wo. Mit einem JTAGulator kann man das auch rausfinden (habe ich mittlerweile.)

Die VR900 und VR920 besitzen beide eine UART-Schnittstelle. Auf der VR900 als X10 gekennzeichneter Port. Die Pads sind auf beiden Seiten miteinander verbunden, also benötigt man nur eine Seite.
Pinout anbei.

Die VR920 hat zwar auch UART, man kommt aber nicht in U-Boot, da das Timeout 0 ist. Bei der VR900 ist der Timeout 1, sodass man noch eine Taste drücken kann. Einmal im U-Boot kann man sich das ganze Boot-Environment ansehen und auch so manipulieren, dass man eine System-Shell beim Booten statt Login sieht. Allerdings ist diese nicht von Dauer, da der Watchdog (nehm ich mal an) das System ziemluch bald (1 Minute?)

Werkeln tut dort hauptsächlich eine Vaillant Java-Anwendung.


Meine Nuegier ist hiermit eigentlich zuende. Mich hätte noch MQTT interessiert aber dazu die Java-Anwendung auf den Kopf stellen: Nö. Ich werde mir mit einem eBUS-Adapter nochmal irgendwann direkt Zugang zum ebus verschaffen.

EDIT: Achso, Ja - JTAG kann das Teil auch, sind aber nicht die PINS über X10 (also X90) sondern die kleinen 2x5 Test-Pads, links neben dem Punkt vom iMX.6 auf dem Bild.

Dirk070

#18
Der Thread ist ja schon etwas älter - meine Bestrebungen die Vaillant WP in FHEM zu bekommen aber auch  ;)
Ich warte leider noch auf einen EBUS-Adapter 3, das wäre ja der aktuelle Weg.

Für ioBroker gibt es eine Lösung mit dem VR900.
https://github.com/TA2k/ioBroker.vaillant

Ergänzung: es gibt auch eine python3 Lösung (pymultiMATIC)
https://github.com/thomasgermain/pymultiMATIC

Kennt sich hier jemand aus und kann sagen, ob es die Möglichkeit gibt, den Quellcode für FHEM zu nutzen?
...oder das Python3 in Fhem zu nutzen?

Danke vorab und schöne Grüße
Dirk