Schwachstellen in Bosch-BCC100-Thermostaten

Die Bitdefender Labs haben Schwachstellen im weit verbreiteten Bosch-BCC100-Thermostat entdeckt. Hacker können über den WiFi-Microcontroller, der als Netzwerk für den logischen Mikcrocontroller agiert, Befehle an das Thermostat schicken und auch bösartige Firmware-Updates installieren, Zudem sind sie in der Lage, den Datenverkehr abzufangen, auf andere Geräte überzuspringen oder andere Aktionen durchzuführen. Die Analyse der Sicherheitslücke CVE-2023-49722 fand im Rahmen eines neuen kontinuierlichen Programms von Bitdefender zur Schwachstellenanalyse bei IoT-Hardware statt. Bosch hat im November 2023 die Lücke geschlossen. Nutzer sollten dringend überprüfen, ob auf ihren Thermostaten die aktualisierte Firmware installiert ist.

Smarte Thermostate spielen eine wichtige Rolle, um Energieeffizienz und Nachhaltigkeit zu verwirklichen, Stromkosten zu sparen und den Wohnkomfort im Smart-Home zu erhöhen. Die Nachfrage nach Internet-of-Things-Lösungen hat deshalb einen breiten Markt mit verschiedenen Herstellern und ein großes Ökosystem an Hardware und Technologien entstehen lassen. Daraus ergeben sich auch neue Sicherheitslücken. Im Rahmen eines fortlaufenden Programms überprüft Bitdefender weit verbreitete IoT-Hardware auf Schwachstellen und Sicherheitsrisiken, so jetzt das Bosch-BCC 100-Thermostat. Die festgestellten Angriffsmöglichkeiten betreffen die SW Version 1.7.0 – HD Version 4.13.22. Bitdefender hat Bosch am 29. August 2023 über den Sachverhalt informiert. Der Hersteller hat die Schwachstelle in der Produktion am 11. November 2023 geschlossen.

Schwachstellen im Thermostat-Netzwerk

Innenansicht des Bosch BCC 100 Thermostats

Das Thermostat verfügt über zwei Microcontroller, die zusammenarbeiten. Beim gelb umrandeten Controller handelt es sich um einen Hi-Flying-Chip HF-LPT230-Microcontroller mit implementierter WiFi-Funktionalität. Dieser Chip agiert als Network Gateway und Proxy für den logischen Microcontroller, den in der Abbildung rot markierten STMicroelectronics Chip STM32F103.

Mit dem UART-Protocol überträgt der STM-Chip Daten an den WiFi-Chip, der die tatsächliche Verbindung zu den Servern aufbaut. Der STM-Chip selbst kann nicht mit dem Netzwerk kommunizieren und überlässt die Kommunikation mit dem Internet dem Hi-Flying WiFi-Chip.

Der WiFi-Chip kommuniziert auch über dem TCP-Port 8899 im Local-Area-Network (LAN) und spiegelt jede Nachricht über diesen Port direkt an den logischen STM-Microcontroller via UART-Data-Bus. Bei korrektem Format der Nachrichten kann der WiFi-Microcontroller bösartige Nachrichten nicht von den legitimen Datenpaketen des Cloud-Servers unterscheiden. Dadurch können auch Angreifer Befehle an das Thermostat senden – bis hin zum Malware-infizierten Update des Gerätes.

Updating mit fremder Firmware

Das Thermostat kommuniziert mit dem connect.boschconnectedcontrol.com-Server mit JSON-encodierten Payloads über ein Websocket. Der Server versendet die Pakete unmaskiert, so dass Hacker sie leicht nachahmen können. Über den Befehl „device/update” an den Port 8999 erfährt das Gerät über ein neues Update und initiiert die vermeintlich legitime Firmwareaktualisierung. Das Thermostat fragt den Cloud-Server nach dem Update. Trotz einer Error-Code-Antwort des Servers, wenn kein legitimes Update vorliegt, akzeptieren Geräte mit nicht geschlossener Sicherheitslücke eine gefälschte Antwort mit den Details zur bösartigen neuen Firmware:

\x81\x7e\x01\x33{„error_code“:“0″,“cmd“:“server/fireware“,“device_id“:“<device mac>“,“timestamp“:“<unix timestamp>“,“model“:“BCC101″,“version“:“<fw version>“,“url“:“<firmware URL>“,“size“:“<firmware size>“,“isize“:“0″,“pic_pos“:“2930″,“md5″:“<firmware md5>“,“type“:0,“release_date“:“1111-11-11″}

Das übertragene Packet liefert die Quelle für den Download der Firmware, dessen Größe und eine MD5-Checksumme der Firmware-Datei sowie die neue Version. Die Authentizität eines Firmware Updates wird nicht validiert. Sind alle Bedingungen erfüllt, fordert das Thermostat den Cloud-Server auf, die Firmware herunterzuladen und über ein Websocket zu versenden:

{„cmd“:“server/deviceUpdate“,“device_id“:“<device mac>“,“timestamp“:“<unix timestamp>“,“url“:“<firmware URL>“,“pindex“:“0″}

Die URL muss über das Internet erreichbar sein, denn der Cloud-Sever führt den Download durch. Nach Empfang der Datei durch die Hardware aktualisiert sich das Thermostat. Bei einem bösartigen Angriff wäre das Gerät nun vollständig kompromittiert.

Schutz von IoT-Hardware

IoT im Smart-Home-Netz vergrößert die Angriffsfläche für Hacker und  daher genauso ein IT-Sicherheitsrisiko wie PC-Systeme, Smartphones, Router oder Smart-TVs. Anwender sollten daher ihre IoT-Hardware gewissenhaft überwachen und sie so umfassend wie möglich vom lokalen Netzwerk isolieren. Dies ermöglicht ein dezidiertes Netzwerk allein für IoT-Geräte.

Smart-Home-Scanner können Hardware mit Konnektivität scannen, identifizieren und Geräte mit Schwachstellen melden. Nutzer von IoT-Hardware sollten immer nach der aktuellen Firmware suchen und vom Hersteller gelieferte Upgrade-Versionen gleich nach Veröffentlichung des Herstellers veröffentlichen.

Eine gute Option für Smart-Home-Sicherheit ist auch eine Netzwerk-Lösung für Cybersicherheit, die in Router integriert ist.

Der vollständige Report steht unter https://www.bitdefender.com/blog/labs/vulnerabilities-identified-in-bosch-bcc100-thermostat/ zum Download zur Verfügung.

#Bitdefender